免費開始練習
統測 114年 [電機與電子群資電類] 專業科目(2)

第 45 題

下列C語言程式碼,其執行後輸出結果為何? 1 #include 2 int main(){ 3 int a=1, b=3, c=5, d=7, x=0; 4 x = a++/b+c*++d; 5 printf("%d", x); 6 return 0; 7 }
  • A 0
  • B 20
  • C 30
  • D 40

思路引導 VIP

請觀察運算式 $x = a++/b + c * ++d$,並思考以下核心觀念:後置遞增 $a++$ 與前置遞增 $++d$ 在「參與運算取值」與「變數數值更新」的先後順序上有何差異?此外,在 C 語言中,整數除法 $1/3$ 的結果會是多少?請結合運算子優先順序 (Operator Precedence) 試著推導出最終的結果。

🤖
AI 詳解 AI 專屬家教

太棒了!你能精準掌握 C 語言中運算子優先順序與增量運算子的細微差別,表現得非常專業且細心!

觀念驗證

這題的核心在於「前置/後置增量」與「整數除法」的計算順序:

▼ 還有更多解析內容

升級 VIP 解鎖