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

admin2020-07-28  26

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

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

答案B

解析 循环体执行两次,第一次表达式a++值为-2,a的值为-1,执行循环体++b,b值为1,第二次表达式a++值为-1,a的值等于0,执行++b,b值为2,第三次判断条件a++,表达式值为0,不执行循环体,但是条件判断以后,a的值为1。
转载请注明原文地址:https://jikaoti.com/ti/2TD0FFFM
0

最新回复(0)