2 4是对的,最后NUM的值是4,但是在两次循环里都会执行printf语句,也就是两次输出,第一次num=0<=2,执行自增num=1,,到printf语句里再次自增,++num,使num先变成2再输出,所以先输出了一个2,再次回到循环里num=2仍满足循环体条件,继续做循环,输出4,然后判断不满足条件,跳出循环,所以一共有两次输出2和4,最后的结果num=4
好吧,我错了,刚没看清while循环体是一步,但是既然你讲答案是那样的那么应该就是印刷错误或者你打错了,如果你没打错,也没印错,那就是答案错了
运行结果是对的
答案是是2 4,这是因为程序第4行和第5行在一个括号里
main()
{int num=0;
while(num<=2)
{num++;
printf("%3d",++num);}
}这样的话,运行结果就是2和4
不加括号的话,程序运行到第4行就会跳到循环那继续运行直到条件不符合跳出循环,加了括号的话是运行到第5行才跳转,所以结果会不同
应该是4,相信电脑,如果你打的代码没错,电脑结果是不会骗你的。
你少加了个{}
int main()
{int num=0;
while(num<=2)
{num++;
printf("%3d",++num);}
}