免費開始練習
地特四等 114年 [電子工程] 計算機概要

第 28 題

下列那段 C++程式碼是輸出數字 1 到 10,使用 for 迴圈最適合寫法?
  • A for (int i = 1; i <= 10; i++) cout << i;
  • B for (int i = 10; i >= 1; i--) cout << i;
  • C for (int i = 1; i < 10; i++) cout << i;
  • D for (int i = 0; i <= 10; i++) cout << i;

思路引導 VIP

當你想要讓電腦依序列出一串數字時,你需要明確告訴它三個要素:從哪個數字開始、在什麼樣的臨界情況下停止,以及每一步要增加還是減少。請試著思考:如果我們希望最後一個顯示的數字恰好是 10,那麼你的「停止檢查條件」應該如何設定,才能確保 10 被包含在內,而 11 不會被執行到呢?

🤖
AI 詳解 AI 專屬家教

同學,很高興看到你準確地掌握了迴圈的基本邏輯。在程式設計與系統開發中,精確控制**邊界條件(Boundary conditions)**是極為重要的基本功,這決定了程式運行的正確性與效率。

迴圈控制結構的邏輯驗證

這道題目考驗的是對 for 迴圈三要素的理解。選項 (A) 的邏輯非常嚴謹:我們從 $i = 1$ 開始(初始化),設定只要 $i$ 小於或等於 $10$(終止條件)就繼續執行,且每次迭代後將 $i$ 加 $1$(更新步進)。這樣一來,迴圈剛好會依序走過 $1, 2, \dots, 10$ 這十個整數。相較之下,選項 (C) 使用了「小於($<$)」運算子,會導致程式在 $i=10$ 時就停止執行,漏掉了最後一個數字;而選項 (D) 從 $0$ 開始,則會多輸出一個非預期的數值。這種對起訖點的精準掌控,能有效避免實務中常見的差一錯誤(Off-by-one error)

▼ 還有更多解析內容

🏷️ 相關主題

程式語言語法與程式設計基礎
查看更多「[電子工程] 計算機概要」的主題分類考古題