C语言菜鸟问题(14)

来源:百度知道 编辑:UC知道 时间:2024/06/19 22:11:54
以下程序输出的结果是()
#include<stido.h>
main()
{
int x=3;
do
{
printf("%d\n",x-=2);
}
while(!(--x));
}
问此程序输出的结果 希望大哥们帮小弟讲解一下
可以讲讲吗 我要的不是答案。。。

x-=2即x=x-2=1,输出1
while(!(--x));--x,x自减为0,那么!0也就是非0为真,程序继续执行,再有x-=2输出-2;此时再有!(-2)为假,循环终止!!
所以输出为1和-2

输出1和-2