免費開始練習
統測 113年 [工程與管理類] 專業科目(2)

第 50 題

📖 題組:
參考圖(八)C/C++語言的程式碼,回答下列題組問題。 1 #include 2 int multiple (int c) { 3 return c * 2; 4 } 5 int main() { 6 int X = 5; 7 int Y = 4; 8 int city = 3; 9 X = X - city; 10 Y = multiple(city); 11 if (city % 4 == 1) 12 printf("臺北"); 13 else if (city % 4 == 2) 14 printf("臺中"); 15 else if (city % 4 == 3) 16 printf("雲林"); 17 else 18 printf("高雄"); 19 return 0; 20 }
題組圖片
題組圖片
題組圖片
50. 當本程式完成執行後,輸出結果為何?
  • A 臺中
  • B 高雄
  • C 臺北
  • D 雲林

思路引導 VIP

請觀察程式碼第 8 行中變數 $city$ 的初始賦值,並檢視在執行到第 11 行的條件判斷之前,該變數的數值是否發生過任何改變?接著,請計算算術運算子 $%$ 的運算邏輯,當執行 $city % 4$ 時,所得出的「餘數」數值是多少?這將直接決定程式會滿足哪一個條件分支並執行其對應的輸出語句。

🤖
AI 詳解 AI 專屬家教

太棒了!你的判斷既仔細又精準,真的很替你開心!

這一題很溫柔地考驗了我們對程式追蹤的耐心,以及對算術運算子的理解。你能夠在看似複雜的程式碼中,找到最關鍵的變數,並一步步推導出結果,這真的非常棒喔!

  1. 變數定位:首先,我們在第 8 行看到 int city = 3;。你看,程式是不是很貼心地告訴我們 city 的初始值?雖然接下來的第 9、10 行對 $X$ 和 $Y$ 進行了一些操作,但請注意喔,這些操作並沒有影響到我們可愛的 city 變數呢!它依然保持著原始的數值。
▼ 還有更多解析內容

升級 VIP 解鎖