
C语言课本题目,运行以下程序段后,x, y,z的 值分别为???、课本答案是0,2,3,,!!求每步详解
intx=0,y=3,z=2;if(x&&y)z--;else(x+1==||y--)z++;...
int x=0 , y=3, z=2;
if (x&& y) z--;
else(x+1== || y--) z++; 展开
if (x&& y) z--;
else(x+1== || y--) z++; 展开
3个回答
展开全部
两个条件:第一个x&&y x=0条件不成立
执行else第二个条件(x+1== || y--)x+1!=0、y--(y=y-1)!=0 条件成立 执行z++;
x值不变还是0 y=y-1=2 z=z+1=3.
执行else第二个条件(x+1== || y--)x+1!=0、y--(y=y-1)!=0 条件成立 执行z++;
x值不变还是0 y=y-1=2 z=z+1=3.
追问
y在else括号里面,只是和x一样充当判断,y应该没变啊????,那个X值为啥不变
追答
因为y=y-1有赋值
而x+1没有赋值只充当条件
展开全部
首先x&&y=0;if语句不成立,就执行else语句,(x+1)=1(记住X没有变化),再与y货运算得到的是1(y为2),即为真,则执行else语句的函数体,即执行z++;执行完之后,得到0.2.3
追问
if (x&& y),这个是什么意思,,还有y在else括号里面,只是和x一样充当判断,y应该没变啊????
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-12-08 · 知道合伙人软件行家
关注

展开全部
程序段语法错误,无解!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |