急~~ 求教C++中自增(后缀)问题!

发布时间:2024-05-14 02:15 发布:上海旅游网

问题描述:

先看下面两个程序:
(1) //1~100求和
##include<iostream.h>
main()
{
int i=0;
int sum=0;
while(i++<100)
sum=sum+i;
cout<<"sum is:"<<sum<<endl;
}

(2)显示1~9这9个数字:
#include<iostream.h>
main()
{
for(int i=1;i<=9;i++)
cout<<i;
}
**课本上说后缀是先引用后自增.
在(1)中,当i=99(引用)时,i变为100(自增)加到sum(我的理解);
在(2)中,当i=9(引用)时,9<=9成立,则循环体被执行(此时i自增至10 ?),那岂不是连10也显示了?而用C++执行时只显示到9.
请各位懂C++的指点下迷津,我的理解错哪里?

问题解答:

(1) 你的理解是正确的

(2) 此处的for循环在语法上相当于是:
int i=1;
while(i<=9)
{
cout<<i;
i++;
}
因此,当i=9时,执行了cout<<i之后,i值增一变为10,再回到while(i<=9)进行判断,但是i<=9已经不再成立,所以不再继续执行循环体。

上面写得很好了

thank you ,,i also know about the question!!!

热点新闻