課程
/后端開發
/C
/C語言入門
a應該是一個定值,那輸出的結果應該是101,101,99,99,101,100,為什么例題的結果是100,102,101,101,101,100
2015-11-28
源自:C語言入門 3-3
正在回答
請看這里我的回答?http://www.xianlaiwan.cn/qadetail/83948
dw1958 提問者
我表達有錯誤,不應該是a變為了多少多少,a一直是一個定值100。應該說自家自減之后結果分別變為了100,101,102,101,101,100。結合我上面說的,希望可以看懂,哈哈。
onemoo
a++ 是執行完printf 再執行自加,所以第一個a++ printf為100;第一步執行完了之后a自加,變成了101;
++a是a自加之后printf,所以101自加1之后a=102輸出;
同理,--a是printf之前a自減,所以a=102-1=101,然后printf a;
a--是在輸出后自減1,所以此a還是為101 輸出;
a--輸出后a變為100,再執行a+1,此時a=101;
最后輸出a為100。
舉報
C語言入門視頻教程,帶你進入編程世界的必修課-C語言
4 回答有點不理解
5 回答有點不理解
3 回答有點不理解
4 回答有點小問題不是很理解
5 回答我有點不理解了
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2015-11-28
請看這里我的回答?http://www.xianlaiwan.cn/qadetail/83948
2015-11-28
我表達有錯誤,不應該是a變為了多少多少,a一直是一個定值100。應該說自家自減之后結果分別變為了100,101,102,101,101,100。結合我上面說的,希望可以看懂,哈哈。
2015-11-28
a++ 是執行完printf 再執行自加,所以第一個a++ printf為100;第一步執行完了之后a自加,變成了101;
++a是a自加之后printf,所以101自加1之后a=102輸出;
同理,--a是printf之前a自減,所以a=102-1=101,然后printf a;
a--是在輸出后自減1,所以此a還是為101 輸出;
a--輸出后a變為100,再執行a+1,此時a=101;
最后輸出a為100。