Q21.
執行下列C 語言程式,其輸出結果為
數位電子 · 乙級 · 程式語言 · Q21
難易度分析
3 / 5
此題要求追蹤程式碼執行後的最終變數狀態,其結構設計著重於考驗考生是否能辨識出程式碼中是否存在實際改變變數數值的行為。
正確答案:①a=10, b=20
① a=10, b=20:此為正確答案。程式執行後 變數 a 維持初始值 10,變數 b 維持初始值 20,代表程式邏輯未對兩變數進行交換或重新賦值操作,輸出結果為 a=10, b=20。
錯誤選項解析
- ② a=20, b=10:此選項描述 a 與 b 的數值互換結果。若程式中未使用 暫存變數進行 swap 演算法 或未執行賦值互換語法,則不會產生此輸出。
- ③ a=10, b=10:此選項表示兩變數最終均為 10。除非程式中包含 a = b 或 b = a 的單向賦值語法,否則不會出現兩變數相同的狀況。
- ④ a=20, b=20:此選項表示兩變數最終均為 20。同樣需要特定的 重新賦值操作 才會達成,與題目程式邏輯不符。
Learning Tip
"此類題型常考 C 語言變數賦值 與 程式執行流程追蹤。解題關鍵在於仔細閱讀程式碼中的 運算子優先順序、條件判斷分支 及 迴圈執行次數,避免直覺誤判變數最終值。實務上應注意 區域變數作用域 與 參數傳遞方式(傳值/傳址) 的差異。"
學員答題分佈
①a=10, b=200%
②a=20, b=100%
③a=10, b=100%
④a=20, b=200%
此答題分佈是根據學員在 LongePass 模擬考等實際作答紀錄計算而成。與考友分享這道歷屆試題與詳細解析!