问题 单项选择题

执行下列程序段后,变量a,b,c的值分别是( )。
int x=5,y=4;
int a,b,c;
a=(--x==y++)x:++y;
b=++x;
c=y;

A) a=5, b=5, c=5


B) a=4, b=5, c=5
C) a=5, b=6, c=5


D) a=1, b=5, c=6

答案

参考答案:B

解析: 本题考查自加(++),自减(--)运算符的使用。“++i,--i”,在使用i之前,先使i的值加1或者减1,再使用此时的表达式的值参与运算:“i++,i--”,先使用此时的i的值参与运算,在使用i之后,再使i的值加1或者减1。
对于第1个表达式--x=4,y++=4.两者相等,--x==y++为真,所以a=x=4,执行完此语句后y的值是5。
第2个表达式b=++x,x的值先加1,然后赋给b,即b=x+1=5;第一个表达式c=y=5。

单项选择题 A1型题
单项选择题 A1型题