1樓:daisy妮
(4)對於a/=a+a,化解:a=a/(a+a) 得a=0 因為a是int型,所以要對a=12/24取整;
(5)a%=(n%=2),化解: 首先a=a%(n%=2) 然後a=a%(n=n%2) 得a=0 因為n=5 n=5%2=1 a=12%1=0 12可以對1整除所以取余為0;
(6)a+=a-=a*=a 化解:首先a=a+(a-=a*=a) 然後a=a+(a=a-(a*=a))
繼續 a=a+(a=a-(a=a*a)) 計算得a=0 原因是:a=a*a=144 這時把144賦值給a了,a=a-(a=a*a)這一步裡,a=144-144=0,把0賦值給a,a=a+(a=a-(a=a*a))=0+0=0.
這幾個題要注意一下括號的優先順序,還有主要是表示式的化解問題,有什麼不懂的再問我吧。。
2樓:匿名使用者
4:a=a/(a+a)=0
5:a=a%(n=n%2)
n%2=1
a%1=0
所以答案0
6:從左往右運算 a+=a a=24
a-=a a=0
a*=a a=0
3樓:
4, a=a/(a+a) a=24/24 a = 05,a=a%(5%2) a = 1%1 a=06, a=a+(a-a*a) a=0 + (12*12 - 12*12) a= 0
從後往前看,乙個=號就變一次a的值
C語言中關於左移運算問題,c語言中關於左移運算子的問題
a沒有變啊,b a 3的意思是把a左移後的結果賦值給b 就像 b a 3 b的值是a 3但是a本身沒有加3的!a 3 不會改變 a 的值。c中只有 運算子會改變變數的值,其他不會 之類不算 左移運算子不是 運算子,本身是不會改變的呀。c語言中關於左移 運算子的問題 原因 第乙個k 1只是表示k左移一...
c語言移位運算
右移對符號位的處理和左移不同,對於有符號整數來說,比如int型別,右移會保持符號位不變,例如 10100110 5 假設字長為8位 則得到的是 11111101。總之,在c中,左移是邏輯 算術左移 兩者完全相同 右移是算術右移,會保持符號位不變.實際應用中可以根據情況用左 右移做快速的乘 除運算,這...
在c語言中移位運算子,C語言中移位運算
沒有你想要的運算子,可以用下面的方法實現 到底是 1000 還是 100 可以用 位數算出來5696 1000 696 696 100 96 a 1 a左移1位等效於a a 2a 2 a左移2位等效於a a 2的2次方 4 a 3 a左移1位等效於a a 2的3次方 8 計算機內程式設計只識別1和0...