2.在大多數程式語言中,while 迴圈會「至少執行一次」迴圈 內的程式區塊。
(A)O
(B)X

答案:登入後查看
統計: A(8), B(9), C(0), D(0), E(0) #3678218

詳解 (共 1 筆)

#7210635

【解題思路】

這題在考你能不能分辨:

while 迴圈 vs do-while 迴圈

核心觀念:

while 迴圈

→ 先判斷條件,再決定要不要進入區塊
條件若一開始為 false,會「一次也不執行」

do-while 迴圈

→ 先執行,再判斷
至少會執行一次

題目說:

while 迴圈至少會執行一次

這句話完全錯誤。

【逐一破題】

(A) O
→ 表示 while 至少跑一次 → 錯

(B) X
→ 正確!
while 在第一次條件不成立時,整個區塊一次都不會進入。

【延伸知識】

以 Python、C、Java 為例:

ㅤㅤ
x = 5 while x > 10: print("Hi")

x > 10 在第一次就為 False
→ 輸出完全不會發生

但 do-while(例如 C、Java):

ㅤㅤ
do { print("Hi"); } while (x > 10);

→ 會至少印一次「Hi」

【記憶技巧】

一句話:

while:先判斷 → 不一定跑
do-while:先跑 → 一定跑

更短:

while 不保證,do-while 保證一次。

【常見錯誤】

  1. 把 while 誤以為跟 do-while 一樣

  2. 忽略「第一次就跳出」的可能

  3. Python 沒有 do-while → 更容易搞錯 while 的特性

【三大迴圈比較總表】

迴圈種類 是否先判斷? 是否保證至少執行一次? 適用場合 範例語法(概念)
for 先設定 → 再判斷 不一定 數量明確時(重複 N 次) for(i=0; i<10; i++)
while 先判斷 不保證一次 不知道要跑幾次,但有條件 while(condition)
do-while 先執行,再判斷 一定至少一次 至少要做一次的動作 do { } while(condition);

【三大迴圈最重要的「一句話記憶」】

for:跑幾次我知道
while:跑幾次我不知道
do-while:至少跑一次我知道

【深入解釋三者差異】

【1. for 迴圈】

用途:
當你「已知」迴圈要重複執行的次數,例如 10 次、100 次。

結構(概念):

ㅤㅤ
for(起始; 判斷; 更新){ 程式碼 }

例:

ㅤㅤ
for i from 1 to 5: print(i)

→ 會印出 1,2,3,4,5

【2. while 迴圈】

用途:
當你「不知道」要跑幾次,只知道「某條件成立就要繼續」。

關鍵:
第一次判斷就可能跳出 → 0 次執行

例:

ㅤㅤ
while x > 0: x -= 1

若 x 一開始是 0 → 迴圈直接不跑。

【3. do-while 迴圈】

用途:
至少執行一次的情境,例如:

  • 要先輸入一次資料再判斷是否結束

  • 要先顯示選單一次再選擇是否離開

結構:

ㅤㅤ
do { 程式碼 } while(條件);

特色:

至少執行一次,不論條件一開始是否為真。

【最常考的差異(考題重點)】

  1. while 不一定跑一次 → 題目常陷阱

  2. do-while 是唯一「至少執行一次」的迴圈

  3. for 用來取代 while,語意上更清楚

  4. Python 沒有 do-while → 但考試會考概念

  5. 迴圈控制

    • break → 跳出迴圈

    • continue → 跳過當次迴圈

【常見錯誤】

  1. 把 while 誤當 do-while

  2. 以為 for 迴圈一定要跑完 → 可以 break

  3. 把判斷式放錯位置 → while 在前,do-while 在後

  4. 以為 for 無法改用 while(其實可以互換)

【最終衝刺版口訣】

for 次數明確
while 不一定跑
do-while 至少跑一次

ㅤㅤ
0
0