課程
/后端開發
/C
/C語言入門
sum=sum+i;
i++;和
i++;
sum=sum+i;
運行結果為什么不一樣
2016-09-08
源自:C語言入門 4-6
正在回答
第一個先計算sum+i的值然后賦值給sum,之后i的值自動增1,所以第一次循環之后sum=0+1,sm=1,然后i的值增1變為2執行第二次循環,sm=1+2,sm=3,這樣依次類推下去執行循環,這樣就可以實現1到100之內所有整數相加運算,而第二種情況,是先給i的值自增1之后,執行下邊的運算,由于i的初始值為1,自增1之后就變為了2,然后執行下邊的sum=0+2,sum=2,然后第二次循環i的值自增為3,依次類推,無法實現1到100之內所有的整數相加運算,因為缺了1,所以運算結果是錯誤的,這是邏輯錯誤,如果幫到樓主的話請采納,謝謝?。?/p>
慕粉3922146 提問者
imooc_粉絲 回復 慕粉3922146 提問者
第一個是sum先加i,i再自增1;第二個是i先自增1,sum再加上自增后的i,所以第一個sum值要比第二個大1
慕粉4061758
舉報
C語言入門視頻教程,帶你進入編程世界的必修課-C語言
1 回答請大神幫忙解答下
3 回答哪位大神幫我解答
3 回答求大神幫幫忙解答一下
1 回答請各位大神幫幫解答一下
1 回答求大神幫忙解答!
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-09-09
第一個先計算sum+i的值然后賦值給sum,之后i的值自動增1,所以第一次循環之后sum=0+1,sm=1,然后i的值增1變為2執行第二次循環,sm=1+2,sm=3,這樣依次類推下去執行循環,這樣就可以實現1到100之內所有整數相加運算,而第二種情況,是先給i的值自增1之后,執行下邊的運算,由于i的初始值為1,自增1之后就變為了2,然后執行下邊的sum=0+2,sum=2,然后第二次循環i的值自增為3,依次類推,無法實現1到100之內所有的整數相加運算,因為缺了1,所以運算結果是錯誤的,這是邏輯錯誤,如果幫到樓主的話請采納,謝謝?。?/p>
2016-09-08
第一個是sum先加i,i再自增1;第二個是i先自增1,sum再加上自增后的i,所以第一個sum值要比第二個大1