農會 資訊管理類程式設計108 年第 35 題單選題
根據下列的Python 語言程式碼,輸出結果為何?
a=3
while (a<=5):
a+=1
print(a)
D正確答案
本題測驗 while 迴圈的邊界條件判斷,注意 a<=5 會包含 5,最終 a 會加到 6 才停止並印出。
為什麼答案是 D
正確解答。a=5 時仍滿足 <=5,執行 a+=1 後 a 變為 6 才跳出。
考點:初始值考點:迴圈次數考點:邊界條件考點:迴圈終止
載入中…
完整詳解
Pro · 無限重點 本題測驗 while 迴圈的邊界條件判斷,注意 a<=5 會包含 5,最終 a 會加到 6 才停止並印出。
追蹤變數變化:a=3→4→5→6,當 a=6 時不滿足 <=5 條件,跳出迴圈並印出 6。
逐選項分析
A初始值✕
此為變數 a 的初始值,若完全沒有進入迴圈才會印出 3。
B迴圈次數✕
此為第一次迴圈執行後的結果,若條件為 a<4 才會印出 4。
C邊界條件✕ 陷阱
邊界值陷阱!若條件是 a<5 或忘記最後一次 a+=1 才會錯選此項。
D迴圈終止✓ 正確
正確解答。a=5 時仍滿足 <=5,執行 a+=1 後 a 變為 6 才跳出。
While 迴圈變數追蹤表
| 迴圈次數 | 判斷條件 (a<=5) | 執行動作 (a+=1) | 執行後 a 的值 |
|---|
| 初始 | - | - | 3 |
| 第 1 次 | 3 <= 5 (True) | a = 3 + 1 | 4 |
| 第 2 次 | 4 <= 5 (True) | a = 4 + 1 | 5 |
| 第 3 次 | 5 <= 5 (True) | a = 5 + 1 | 6 |
| 第 4 次 | 6 <= 5 (False) | 跳出迴圈 | 6 (印出) |
考生常將 <= (小於等於) 誤看作 < (小於),導致在 a=5 時誤判條件不成立而提早跳出迴圈,進而錯選 (C)。務必確認邊界值是否包含!