Q16.
下列C/C++程式片段,其x 之輸出結果何者正確?
資訊相關職類共用工作項目 · Q16
難易度分析
3 / 5
本題結構依賴單一程式語法規則進行條件分支推演,測驗範圍聚焦於基礎流程判斷與數值歸屬辨識。選項設計採用位置常數混淆策略,需具備明確的運算順序概念方能排除干擾,屬標準基礎觀念應用題型。
正確答案:③4
③ 4:輸出為 4 是正確的。條件 `(5 <= 3 && 'A' < 'F')` 中,`5 <= 3` 為假(false),邏輯 AND 運算結果為假,因此三元運算子回傳假值分支的 4,賦值給變數 x。
錯誤選項解析
- ① 2:輸出為 2 是錯誤的。此程式使用三元運算子(條件運算子 `? :`),條件判斷結果不會導出 2。
- ② 3:輸出為 3 是錯誤的。3 是三元運算子的「真值分支」,但條件 `(5 <= 3 && 'A' < 'F')` 中 `5 <= 3` 為假,邏輯 AND (`&&`) 運算採用短路求值,整體條件為假,不會執行真值分支。
- ④ 5:輸出為 5 是錯誤的。程式中數字 5 僅用於條件比較 `5 <= 3`,並非三元運算子的任何分支回傳值。
Learning Tip
"此題核心考點為 三元運算子 `? :` 與 邏輯 AND (`&&`) 短路求值。常見陷阱是忽略 `&&` 運算中只要第一個運算元為假,整體即為假,不會繼續評估第二個運算元。需熟記:條件為真回傳 `?` 後之值,條件為假回傳 `:` 後之值。"
學員答題分佈
①20%
②30%
③40%
④50%
此答題分佈是根據學員在 LongePass 模擬考等實際作答紀錄計算而成。與考友分享這道歷屆試題與詳細解析!