执行下列程序段后,变量a,b,c的值分别是多少?

执行下列程序段后,变量a,b,c的值分别是多少?

题目
执行下列程序段后,变量a,b,c的值分别是多少?
int x=10,y=9,a,b,c;
a=(--x==y++)?--x:++y;b=x++;c=y;
A.a=9,b=9,c=9 B.a=8,b=8,c=10 C.a=9,b=10,c=9 D.a=1,b=11,c=10
书上的答案是选B的 可我理解不了
答案
这段程序先判断--x等不等于y++,--x先自减再比较所以是9,y++先比较再自加所以此时也是9,所以这个三目运算符( :)问号前面的判别式为真,所以执行冒号前面的表达式,变量x再次自减,此时x为8,之后先后执行b=x++;c=y;两条语句,注意此时y的值为10,不难发现答案为B
举一反三
我想写一篇关于奥巴马的演讲的文章,写哪一篇好呢?为什么好
奥巴马演讲不用看稿子.为什么中国领导演讲要看?
想找英语初三上学期的首字母填空练习……
英语翻译
1,人们染上烟瘾,最终因吸烟使自己丧命.
最新试题
热门考点

超级试练试题库

© 2017-2019 超级试练试题库,All Rights Reserved.