c语言的这个编程题目怎么做呀 求详细解答

执行以下程序段后、变量a,b,c的值分别是( )。
int x=6,y=5;
int a,b,c;
a=(--x==y++)?--x:++y;
b=x++;
c=y;
A、
a=4,b=5,c=7
B、
a=4,b=4,c=6
C、
a=5,b=6,c=5
D、
a=7,b=6,c=7
正确答案: B

判断--x==y++时,取x=5和y=5相比,然后y变成6,比较的结果为真,于是执行--x,x先变成4,赋值给a
所以a的值是4,
然后b=x++,b的值是4,然后x变成5
最后c=y; c的值变为6
所以是选择答案B
温馨提示:答案为网友推荐,仅供参考
相似回答