原住民族考試四等考試-電子工程類科計算機概要106 年第 22 題單選題
下列何者不是使用程序(procedure)的優勢?
A將功能模組化
B抽離複雜運算中的部分運算,以利於理解程式
C減少程式中重複出現的程式碼片段
D加快程式執行速度正確答案
D正確答案
程序的優勢在於模組化、可讀性、重用性,但呼叫程序反而會因堆疊操作略增執行負擔,不會加快速度。
為什麼答案是 D
錯誤!程序呼叫需進行參數傳遞、堆疊存取、跳轉返回等動作,反而會產生額外開銷,執行速度通常略降而非加快。
載入中…
完整詳解
Pro · 無限重點 程序的優勢在於模組化、可讀性、重用性,但呼叫程序反而會因堆疊操作略增執行負擔,不會加快速度。
看到「加快執行速度」就警覺!程序是為了「人看得懂」不是為了「電腦跑得快」。
逐選項分析
A✕
將功能切割成獨立程序是模組化設計的核心優勢,方便維護與分工,是程序的主要好處之一。
B✕
把複雜運算抽成小程序,能降低主程式複雜度,提高可讀性與除錯效率,確為程序優勢。
C✕
重複程式碼抽成程序後只需呼叫,符合 DRY 原則(Don't Repeat Yourself),減少維護成本。
D✓ 正確
錯誤!程序呼叫需進行參數傳遞、堆疊存取、跳轉返回等動作,反而會產生額外開銷,執行速度通常略降而非加快。
程序(Procedure)的優缺點
| 面向 | 優點 | 缺點 | 備註 |
|---|
| 結構 | 模組化、易分工 | 需妥善設計介面 | 優勢 |
| 可讀性 | 主程式簡潔易懂 | 需追蹤呼叫流程 | 優勢 |
| 維護性 | 修改集中、重用性高 | - | 優勢 |
| 執行效能 | - | 呼叫有堆疊開銷 | 非優勢 |
考生易誤以為「程式設計越好 = 執行越快」。其實程序化設計是為了『人類可維護性』,不是為了『機器執行效率』。實際上因額外的呼叫成本,程序反而讓執行稍微變慢,編譯器優化(如 inline)才會抵銷此開銷。