有以下程序 main(){int a=-2,b=0; while(a++&&++b); printf("%d,%d\n",a,b);} 程序运行后输出结果是

admin2019-08-10  19

问题 有以下程序
main(){int a=-2,b=0;
while(a++&&++b);
printf("%d,%d\n",a,b);}
程序运行后输出结果是

选项 A、0,3
B、1,2
C、1,3
D、0,2

答案B

解析 循环体为空,共执行2次。第一次变量a初值为-2,b初值为o,表达式a++&&++b值为1,同时a的值为-1,b的值为1。第二次循环条件判断以后,a的值为0,b的值2,执行循环体空,第三次判断条件表达式值为0,不执行循环体,而a的值为1,但是表达式a++的值为0,因此不计算表达式++b的值,b的值仍为2。
转载请注明原文地址:https://kaotiyun.com/show/zvRp777K
0

最新回复(0)