int x=3,y=2; 则表达式(y++==--x)?y++:x++的值为多少

是2还是3啊怎么算的贵求答案... 是2还是3啊 怎么算的 贵求答案 展开
 我来答
makwy
2013-01-02 · 超过35用户采纳过TA的回答
知道答主
回答量:149
采纳率:0%
帮助的人:95.7万
展开全部
这个表达式会先执行y++==--x,y++==--x的结果为true,执行结束后 y==3 x==2;
接着执行y++, 执行结果y==4;
所以这个表达式的值为3。
再说一下y++==--x:
++(或者--)运算写在变量左边和写在变量右边的值是不一样的,写在左边代表想运算再取值,写在右边表示先取值再运算;
所以 y++表达式的先取值,取值为2,再运算此时y的值变成了3;
--x表达式先运算,x的值变为2,再取值,取值为2
2 == 2 所以表达式y++==--x的结果为true

这个答案是正确的
a逻辑运算符b ? c:d
是个三元运算 这个表达式的意思是 ?前面的 表达式判断真假 ?后的表达式以:间隔 表示取值
当?前面的表达式为真,去冒号前c表达式的值 假就取d表达式的值

所以 应该是取y++表达式的值
?前的表达式运算完后 y=3,x=2;
所以 这个表达式取的结果是 3 然后 最终y变量的值是 4 X 变量的值是3
牙刷的悲伤
2013-01-02 · TA获得超过1467个赞
知道小有建树答主
回答量:341
采纳率:0%
帮助的人:392万
展开全部
y++=--x这一句,y是先使用后自增,x是先自减在使用,所以2==2为真,此时,y=3,x=2;
所以表达式的值应该输出y++;还是先使用,后自增,所以输出的结果是3;
最终y的值是4,x是2
希望可以帮助你,谢谢采纳。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
chun280444332
2013-01-02 · TA获得超过123个赞
知道答主
回答量:257
采纳率:0%
帮助的人:114万
展开全部
应该是3吧,但是这样的程序是不应该写的哦,有歧义哦,再说也看不懂,还是写简单点好
(y++==--x)?y++:x++
解如下
y++ y==2 --x x=2 y==x
y=3
y++
y=4
所以Y=4,X=2
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
士琼华6N
2013-01-02 · 超过13用户采纳过TA的回答
知道答主
回答量:80
采纳率:100%
帮助的人:29.9万
展开全部
3,y++实现运算为2,--x为先自减结果为2,则2=2正确选y++,前面y++已参加运算变成了3,所以答案应该是3
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
老师小乔
2013-01-02 · TA获得超过3680个赞
知道大有可为答主
回答量:1985
采纳率:66%
帮助的人:685万
展开全部
答案是3.解答如下:
x=3,y=2;
y++式子的值取2,因为y++先取值用而后值再加1,之后y的值为3;
--x 先减一再取值用,此时--x式子的值为2;
所以y++==--x为真,整个选择表达式的值为y++,先取值3,所以整个选择表达式的值为3,而后y再加一。此时y的值为4,因为y++先取y的值再加一。最后的一个x++没有执行,所以x的值还是2.
欢迎批评指正。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式