while到底循环了多少次

int main()
{
	int n = 10;
	while (n--)
	{
		
	}
    printf("%d",n);
	return 0;
}

我们只看段代码

我的问题是,while()中的n最后会是多少

while到底循环了多少次_第1张图片

 我们知道while一定会完成n次循环,但是我们要注意的是这里是n--

n--的值为n

--n的值为n-1

也就是说前置加加是先加加在赋值

后置加加,先赋值再加加

n++,++n情况相同

我们继续看这里的while(n--)

第一次判断的时候值为n,但是n此时变为了n-1

第二次判断的时候值为n-1,但是n此时变为了n-2

第三次判断的时候值为n-2,但是n此时变为了n-3

。。。

第九次判断的时候值为n-8,但是n此时变为了n-7

第十次判断的时候值为n-9,但是n此时变为了n-10(此时我们能看见n-9并不是0,还需要一次)

第十一次判断的时候值为n-10,但是n此时变为了n-11(此时我们能看见n-10就是0,跳出)

你可能感兴趣的:(c++,数据结构,c语言)