4.5 break 與 continue
有時候你想在迴圈中途強制停止、或跳過當前一次的剩餘步驟。break 和 continue 就是做這個的。
break:立即跳出迴圈
- 執行到
break時,迴圈立刻結束 - 只離開「最近的一層」迴圈
continue:跳過當前一次的剩餘步驟
- 執行到
continue時,立即跳到迴圈的下一次 - 條件檢查和更新運算式還是會執行
¶範例程式碼
範例 1:用 break 提前結束迴圈
#include<iostream>
using namespace std;
int main() {
// 印出 1 到 10,但遇到 5 就停止
int i = 1;
while (true) { // 無窮迴圈
if (i > 5) {
break; // 當 i > 5 時強制停止
}
cout << i << "\n";
i += 1;
}
return 0;
}
執行結果:
1
2
3
4
5
範例 2:用 continue 跳過偶數
#include<iostream>
using namespace std;
int main() {
// 印出 1 到 10 的所有奇數
for (int i = 1; i <= 10; i++) {
if (i % 2 == 0) {
continue; // 偶數時跳到下一次迴圈
}
cout << i << "\n"; // 只有奇數會執行到這裡
}
return 0;
}
執行結果:
1
3
5
7
9
動手試試看:寫一個程式,讀入一些數字,當遇到 0 就停止,然後輸出讀入的所有非零數字的和。