問題詳情

1.下列 C/C++程式片段執行後,z 的值為何?


(A) 25
(B)27
(C) 29
(D) 31

參考答案

答案:C
難度:計算中-1
書單:沒有書單,新增

用户評論

【用戶】蔡明勳

【年級】高二上

【評論內容】先說 ( i <<= 1 ) 為 ( i = i << 1 )的簡寫, i 向左算術位移1位元然後int 為4個位元組 = 32bits再來i = ( 00000000 00000000 00000000 01100100 )2要讓while不成立就要讓 i = 0 (false) 所以第三個bit 要向左位移 (33 - 3) = 30 次但是一開始的while判斷就已經執行一次位移所以再 -1最終++z 只執行29次附圖參考 :