為什么這樣的結果是10100
#include <stdio.h>
int main()
{
??? int i,sum=0;
??? i=1;
??? while(?? i<=100? )? //循環條件應該是什么呢?
??? {
??????? sum=sum+i;
???????? sum=sum+i++;???????? //這里是不是應該改變循環變量的值
??? }
??? printf("100以內所有整數之和為:%d\n", sum);
??? return 0;
}
#include <stdio.h>
int main()
{
??? int i,sum=0;
??? i=1;
??? while(?? i<=100? )? //循環條件應該是什么呢?
??? {
??????? sum=sum+i;
???????? sum=sum+i++;???????? //這里是不是應該改變循環變量的值
??? }
??? printf("100以內所有整數之和為:%d\n", sum);
??? return 0;
}
2019-08-14
舉報
2019-08-19
按照運算順序,sum先加了i,然后遇到++符號,再自增了一次。所以最后結果是(sum+i)++,也就是5050+5050
2019-08-14
需要將sum=sum+i刪掉,或者將下一句sum=sum+i++改為i++