民國108年 第3梯次 數位電子甲級 學科

第79題

C 語言程式中,in t a=5,b =6,num=0;下列敘述何者正確?

題目

C 語言程式中,in t a=5,b =6,num=0;下列敘述何者正確?

  1. (1) 執行num=(a++)+(b ++)後,num=11 、 a=6、b=7
  2. (2) 執行a* =b ++後,a=30、b=7
  3. (3) 執行a/=b--後,a=1、b =5
  4. (4) 執行a+=a+(b++)後,a=17、b =7

官方答案

(1) 執行num=(a++)+(b ++)後,num=11 、 a=6、b=7、(2) 執行a* =b ++後,a=30、b=7

解析

初值a=5,b=6。1:num=(a++)+(b++),後置遞增先取原值5、6相加得num=11,運算後a=6、b=7,正確。2:a*=b++即a=a*b++,b++取6後b=7,a=5*6=30,正確。3:a/=b--,b--取6後b=5,整數除法a=5/6=0(非1),錯誤。4:a+=a+(b++),b++取6後b=7,a=5+(5+6)=16(非17),錯誤。

AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。

官方資料