经过以下语句定义后,表达式z+=x>y?++x:++y的值是( )intx=1,y=2,z=3;
4个回答
推荐于2018-03-13
展开全部
结果是6
z+=x>y?++x:++y的意思是
z=z+x>y?++x;++y
因为x>y为假, 所以x>y?++x;++y这个运算出来是++y, 那么式子就成了
z=z+++y 而++运算符是先自增然后才执行下一条语句, 那么y就先办成3,然后才会和z相加的
这样就计算出来了z=3+3
z+=x>y?++x:++y的意思是
z=z+x>y?++x;++y
因为x>y为假, 所以x>y?++x;++y这个运算出来是++y, 那么式子就成了
z=z+++y 而++运算符是先自增然后才执行下一条语句, 那么y就先办成3,然后才会和z相加的
这样就计算出来了z=3+3
2013-06-22
展开全部
给你改编一下应该好理解int nTemp;if (x>y) nTemp = ++x;(先加1再赋值)else nTemp = ++y; z = z + nTemp;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-06-22
展开全部
写的不是很清楚看起来应该是三目运算 前面是z+=x>y? 后面是++x:++y;如果z+x>y 则取++x;否则取后者 取后者 加1后 x=2;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-06-22
展开全部
z的值是6,你要的是结果?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询