第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

a=3;a++=3;a=4.根據(jù)答案解析的運算順序,本式重新運算加減時,a(4)+b%a(1)-b/a(1)+a*b(12)-a++(3)=13.

a=3;a++=3;a=4.根據(jù)答案解析的運算順序,本式重新運算加減時,a(4)+b%a(1)-b/a(1)+a*b(12)-a++(3)=13.

正在回答

2 回答

題目是:int a = 3; b = 4;計算a+b%a-b/a+a*b-a++該算式的運算結(jié)果以及運算后a的值.

我看了下你的想法,發(fā)現(xiàn)你在第一處a這里的想法是有問題的.其實你的想法也不算錯,在這里應(yīng)該算是C語言未定義的行為,在windows的VC編譯器和Linux的GCC編譯器對自增/減在同一個表達(dá)式中的處理方式不太一樣,你的想法與VC編譯器的處理方式差不多,然而本道題的答案傾向于GCC的處理方式.其實這里不用糾結(jié).這里我給出我的理解:按照運算符的優(yōu)先級可以將a+b%a-b/a+a*b-a++等價地改寫為3+1-1+12-3.為什么第一處a會是3而不是4呢,因為四則運算的結(jié)合性是從左往右,即先計算a,再計算a++.所以最后計算的結(jié)果是12.由于a++改變了a的值,所以a為4.但在之前的a還是初始值.不懂的可以追問我.

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

qq_飛行模式_0

a++不是等于4嗎?為什么減去的是3,而不是4?還有b%a是怎樣計算得到1的?
2015-07-14 回復(fù) 有任何疑惑可以回復(fù)我~
#2

273310244 回復(fù) qq_飛行模式_0

b%a 是4/3余出來的1.
2015-07-14 回復(fù) 有任何疑惑可以回復(fù)我~
#3

不要為你的無知找借口 回復(fù) qq_飛行模式_0

a++之后a的值確實是4,因為a原本是3嘛,但是在c語言中表達(dá)式也是有值得啊,懂不,表達(dá)式也是有值得,這個概念必須清楚才行,++a表達(dá)式的值是4,a++表示式的值卻是3.要整體看才行。
2015-07-16 回復(fù) 有任何疑惑可以回復(fù)我~
#4

道凡生 提問者

非常感謝!
2015-07-29 回復(fù) 有任何疑惑可以回復(fù)我~
查看1條回復(fù)

沒有高手能回答嗎?

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消

a=3;a++=3;a=4.根據(jù)答案解析的運算順序,本式重新運算加減時,a(4)+b%a(1)-b/a(1)+a*b(12)-a++(3)=13.

我要回答 關(guān)注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號