在其他代碼相同的情況下,為何++i與i++結(jié)果相同?謝謝了
如題,兩段代碼運行結(jié)果相同
#include <stdio.h>
int main()
{
??? int i,sum=0;
??? i=1;
??? while(? i<=100? )? //循環(huán)條件應(yīng)該是什么呢?
??? {
??????? sum=sum+i;
??????? i++;???????? //這里是不是應(yīng)該改變循環(huán)變量的值
??? }
??? printf("100以內(nèi)所有整數(shù)之和為:%d\n", sum);
??? return 0;
}
#include <stdio.h>
int main()
{
????int i,sum=0;
????i=1;
????while( ?i<=100 ?) ?//循環(huán)條件應(yīng)該是什么呢?
????{
????????sum=sum+i;
?????????++i; ????????//這里是不是應(yīng)該改變循環(huán)變量的值
????}
????printf("100以內(nèi)所有整數(shù)之和為:%d\n", sum);
????return 0;
}
2017-08-01
I++和++i,如果在打印時就不同,如
?int x = 0;
? ? printf("x=%d\n",x++);
? ? printf("x=%d\n",++x);
第一個printf這里先打印則結(jié)果為0,后運算則i=1
第二個這里先運算則i=2,后打印則打印2,所以結(jié)果為
x=0
x=2;如果不是在打印環(huán)節(jié)這里出現(xiàn),那么,i++和++i一樣的