练习4.4、4.5、4.6、4.7
4.4:在下面表達式中添加括號,說明其求值的過程及最終結果。編寫程序編譯該(不加括號的)表達式并輸出其結果驗證之前的推斷。
12 / 3 * 4 + 5 * 15 + 24 % 4 / 2
Ans:((12 / 3) * 4 )+ (5 * 15 )+ ( (24 % 4 )/ 2)。首先加法運算符的優先級低于乘法除法、取模運算符,所以優先計算(結合)乘除取模,又由于乘除取模之間的優先級相同,所以根據其結合律向左結合,從左往右依次進行計算,最后才是加法運算,也是根據左結合,得到的結果是12/3=4,再乘上4,然后5*15,得到75,再然后24%4=0,再除于2,得到0,最后由16+75+0=91,這就是最終結果。
4.5:寫出下列表達式的求值結果。
(a) -30 * 3 + 21 / 5 (b)-30 + 3 * 21 / 5
(c)30 / 3 * 21 % 5 ? (d)-30 / 3 * 21 % 4
Ans:a)-86 b)-18
? c)0 ? d)-2
4.6:寫出一條表達式用于確定一個整數是奇數還是偶數。
Ans:i % 2==0 //若為真,則為偶數,若為假,就為奇數。
4.7:溢出是何含義?寫出三條將導致溢出的表達式。
Ans:溢出是指根據計算機本身的特點,如果進行加法或者其他添加數值的操作,導致原有的計算機存儲的大小存不下這些數據,例如16位的計算機,最大只能存儲16位的數據,但是一些操作卻使其操作結果超過了這個16位的大小,這時候就會產生溢出。
int i=32767+1;
unsigned ui=65535+1;
int i=-10000*5;
以上的在16位的計算機會出現溢出。
?
轉載于:https://www.cnblogs.com/Dark-King/p/9437471.html
總結
以上是生活随笔為你收集整理的练习4.4、4.5、4.6、4.7的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 京东白条提前还款利息怎么算
- 下一篇: 在美妙的数学王国中畅游