# 跳躍陳述式(Jump Statements) 在C++中,跳躍陳述式(Jump Statements)允許程序控制流從一個點跳轉到另一個點,這些陳述式包括 `break`、`continue` 和 `return`。它們在不同的上下文中用於控制程式的執行流程。 :::danger ### 警告 跳躍陳述式當中還有一個 `goto` 用法,不過因為比較難用,所以在本篇文章中不列入討論。 ::: ### 零、方塊 - 方塊位置:條件與迴圈 - 方塊圖片 : > #### break >  > #### continue >  > #### return >  ### 一、`break` 的定義及用法 `break` 用於立即終止當前的迴圈或 `switch` 語句,並跳出該結構的執行。 #### 用法範例: 1. **在 `for` 迴圈中使用 `break`**: ```cpp #include <iostream> using namespace std; int main() { for (int i = 0; i < 10; i++) { if (i == 5) { break; // 當 i 等於 5 時,終止迴圈 } cout << "當前值: " << i << endl; } cout << "迴圈已終止。" << endl; return 0; } ``` 2. **在 `while` 迴圈中使用 `break`**: ```cpp #include <iostream> using namespace std; int main() { int i = 0; while (true) { // 無限迴圈 if (i >= 5) { break; // 當 i 大於等於 5 時,終止迴圈 } cout << "計數: " << i << endl; i++; } cout << "迴圈已終止。" << endl; return 0; } ``` 3. **在 `switch` 語句中使用 `break`**: ```cpp #include <iostream> using namespace std; int main() { int num = 2; switch (num) { case 1: cout << "數字是 1" << endl; break; // 結束 switch case 2: cout << "數字是 2" << endl; break; // 結束 switch default: cout << "數字不在 1 和 2 之間" << endl; break; // 結束 switch } return 0; } ``` ### 二、`continue` 的定義及用法 `continue` 用於終止當前的迴圈迭代,跳過剩下的代碼,並直接進入下一次迴圈的條件檢查。 #### 用法範例: 1. **在 `for` 迴圈中使用 `continue`**: ```cpp #include <iostream> using namespace std; int main() { for (int i = 0; i < 10; i++) { if (i % 2 == 0) { continue; // 當 i 為偶數時,跳過後面的代碼,進入下一次迴圈 } cout << "當前奇數值: " << i << endl; } return 0; } ``` 2. **在 `while` 迴圈中使用 `continue`**: ```cpp #include <iostream> using namespace std; int main() { int i = 0; while (i < 10) { i++; if (i % 2 == 0) { continue; // 當 i 為偶數時,跳過後面的代碼,進入下一次迴圈 } cout << "當前奇數值: " << i << endl; } return 0; } ``` ### 三、`return` 的定義及用法 `return` 用於結束函數的執行,並返回一個值(如果函數返回類型不是 `void`),同時控制流回到函數的調用者。 #### 用法範例: 1. **在函數中使用 `return`**: ```cpp #include <iostream> using namespace std; // 計算平方的函數 int square(int num) { return num * num; // 返回 num 的平方 } int main() { int number = 5; cout << "數字 " << number << " 的平方是 " << square(number) << endl; // 呼叫 square 函數 return 0; } ``` 2. **使用 `return` 結束 `main` 函數**: ```cpp #include <iostream> using namespace std; int main() { cout << "Hello, World!" << endl; return 0; // 結束 main 函數並返回 0 } ``` 3. **在條件中使用 `return`**: ```cpp #include <iostream> using namespace std; // 檢查數字是否為正數的函數 bool isPositive(int num) { if (num > 0) { return true; // 如果是正數,返回 true } return false; // 否則返回 false } int main() { int number = -3; if (isPositive(number)) { cout << "數字是正數。" << endl; } else { cout << "數字不是正數。" << endl; } return 0; } ``` ### 四、總結 - **`break`**:用於立即終止當前的迴圈或 `switch` 語句,並跳出該結構的執行。 - **`continue`**:用於終止當前的迴圈迭代,跳過剩下的代碼,並直接進入下一次迴圈的條件檢查。 - **`return`**:用於結束函數的執行,並返回一個值(如果需要),同時控制流回到函數的調用者。 ### 五、進一步的學習 在學習跳躍陳述式的基礎上,可以探索以下主題: - 在嵌套的迴圈中如何使用 `break` 和 `continue` 來控制外層和內層迴圈的執行。 - 在不同上下文中使用 `return`,例如回傳指標或結構體。 - 使用 `break` 和 `continue` 進行高效的錯誤處理和狀態檢查。 **By Ericbob**
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.