c语言,请求帮忙

来源:百度知道 编辑:UC知道 时间:2024/05/21 23:07:37
x=2;
do
{printf("*"); x--;
}while(!x==0);
结果是**
我想知道x--都是在什么时候执行的,谢谢!!
我想问的是 第一次x--,到下一句while(!x==0);判断x的时候,它已经变成1对吗?

第一次循环输出*
此时因为x值为1
再次循环输出*
此时x值为0
此时while(!x==0)为假 不再循环
因此结果输出**
x--是先参与其它运算再减1
而--x是先减1再参与其它运算
对啊
在表示它一行的语句完了后
X就已经自减成为1了
注意x--和--x的区别