写出下列程序的输出结果______。 main() { int n=0; while(n++<=1); printf("%d,",n); printf("%d",n++); }

admin2013-02-23  18

问题 写出下列程序的输出结果______。
main()
{    int n=0;
while(n++<=1);
printf("%d,",n);
printf("%d",n++);
}

选项 A、3,3

答案

解析  本题在while(n++<=1)语句后,直接加了分号,说明如果while()的条件为真时,该循环什么都不做;n++是先取n的当前值和1做比较,然后再将n加1。第一次循环,n=0时,循环条件n++=0<=1成立,执行循环,然后得到n=1。第二次循环,n=1时,循环条件n++=1<=1成立,执行循环,然后得到n=2。第三次循环,n=2时,循环条件n++=2<=1不成立,不执行循环,但在判断循环条件时仍将n加1,得到n=3。退出循环后执行printf语句,第二个printf语句输出n++,是先输出n的当前值3
转载请注明原文地址:https://kaotiyun.com/show/q2Jp777K
0

最新回复(0)