#include "stdio.h"
void main()
{
int a = -2, b = 0;
while(a++)
{
++b;
}
printf("%d,%d\n",a,b);
}
像这个该怎么运算,运算过程是什么,麻烦解释一下,谢谢了。
a=-2,b=0
while(-2)然后a才加一,a=-1
执行循环,b先加一,b=1
while(-1)然后a才加一,a=0
执行循环,b先加一,b=2
while(0)然后a才加一,a=1
不执行循环了,所以++b不执行,b=2
所以最终结果a=1,b=2
望采纳。。。。。。追问
while(-2)然后a才加一,a=-1
执行循环,b先加一,b=1
while(-1)然后a才加一,a=0
执行循环,b先加一,b=2
while(0)然后a才加一,a=1
不执行循环了,所以++b不执行,b=2
所以最终结果a=1,b=2
望采纳。。。。。。追问
a++在输出的时候也加一吗,a++不是先调用后自加吗,输出的时候为什么输出0
追答
温馨提示:答案为网友推荐,仅供参考
第1个回答 2018-11-08
你的a是负值,所以,由于是自加,因此,先用后加,输出的结果是,a加过1的值,而b的值未发生改变。