下面程序的输出是______。main(){int x=3 ,y=6,a=0;, while(x++!=(y=1)) { a+=1; if(y<x) break; } printf("x=%d, y=%d, a=%d\n,

admin2009-01-15  21

问题 下面程序的输出是______。main(){int x=3 ,y=6,a=0;,    while(x++!=(y=1))    { a+=1;      if(y<x) break;    }    printf("x=%d, y=%d, a=%d\n, x, y, a);}

选项 A、x=4,y=4,a=1
B、x=5,y=5,a=1
C、x=5,y=4,a=3
D、x=5,y=4,a=1

答案8

解析 注意的是x++中x值的引用时,这里应当是先引用,后自加,具体抽打过程如下:
第一次while循环:条件为真,执行a=a+1=1此时,x的值已为4,判断y<x不成立,继续执行循环;
第二次while循环:条件为假,此时x的值已为5,退出while循环,执行printf。
转载请注明原文地址:https://jikaoti.com/ti/dxK0FFFM
0

最新回复(0)