C 語言中的 Continue 說明:初学者的友好指南

你好,未來的程序员們!今天,我們將深入探討 C 語言中最有用的控制流程語句之一:continue 語句。如果你是新手,別擔心;我們會從基礎開始,逐步深入。在本教程結束時,你將能夠像專家一樣使用 continue 語句!

C - Continue Statement

C 語言中的 Continue 語句是什麼?

想像一下你在一個自助餐队列中,挑選你喜歡的美食。突然,你看到了一個你不太喜歡的菜。你會怎麼做?你會跳過它,繼續下一個,對吧?在編程中,continue 語句做的就是這樣的事情!

Continue 語句讓我們能夠跳過當前循環迭代的剩餘部分,並跳轉到下一個迭代。就像說,“不,我不對這個感興趣。我們繼續下一個吧!”

為什麼使用 Continue?

  1. 它幫我們避免不必要的代碼執行。
  2. 它使我們的循環更有效率。
  3. 它可以簡化複雜的條件邏輯。

現在,讓我們看看我們如何實際編寫這個神奇的語句!

Continue 語句語法

Continue 語句的語法簡單之至:

continue;

就這樣!一個單詞,後面跟一個分號。但不要讓它的簡潔欺騙你——當正確使用時,這個小語句可以非常強大。

Continue 語句流程圖

為了更好地理解 continue 語句是如何工作的,讓我們用流程圖來視覺化它:

┌─────────────┐
│ 循環開始   │
└──────┬──────┘
│
┌──────▼──────┐
│ 條件檢查   │
└──────┬──────┘
│
┌──────▼──────┐
│ 遇到 Continue │
└──────┬──────┘
│
│    ┌─────────────────┐
└────► 跳過當前迭代    │
│ 的剩餘部分        │
└─────────┬───────┘
│
┌─────────▼───────┐
│ 下一個迭代     │
└─────────────────┘

正如你所看到的,當遇到 continue 語句時,它會立即跳轉到下一個迭代,跳過當前迭代中的任何後續代碼。

在嵌套循環中使用 Continue 語句

現在,讓我們來討論一些更先進的內容:在嵌套循環中使用 continue。別擔心,這其實並不那麼可怕!

當你在嵌套循環中使用 continue 時,它只會影響包含 continue 語句的最內層循環。就像在遊樂園中每個單獨的遊樂設備上都有個“跳過”按鈕,而不是跳過整個遊樂園!

讓我們看一個例子:

#include <stdio.h>

int main() {
int i, j;

for (i = 1; i <= 3; i++) {
printf("外層循環迭代 %d:\n", i);

for (j = 1; j <= 5; j++) {
if (j == 3) {
continue;
}
printf("  內層循環: %d\n", j);
}
}

return 0;
}

在這個例子中,continue 語句在內層循環中。當 j 等於 3 時,它會跳過打印,但完全不影響外層循環。

輸出:

外層循環迭代 1:
內層循環: 1
內層循環: 2
內層循環: 4
內層循環: 5
外層循環迭代 2:
內層循環: 1
內層循環: 2
內層循環: 4
內層循環: 5
外層循環迭代 3:
內層循環: 1
內層循環: 2
內層循環: 4
內層循環: 5

看到內層循環輸出中缺少數字 3 項目了嗎?那就是我們的 continue 語句在起作用!

Continue 語句示例

現在,讓我們看一些更多的例子,以加強我們對 continue 語句的理解。

示例 1:跳過偶數

#include <stdio.h>

int main() {
int i;

for (i = 1; i <= 10; i++) {
if (i % 2 == 0) {
continue;
}
printf("%d ", i);
}

return 0;
}

輸出:

1 3 5 7 9

在這個例子中,我們使用 continue 語句來跳過偶數。當 i 能夠被 2 整除時(即當它是偶數時),continue 語句會使循環跳到下一個迭代,而不打印數字。

示例 2:跳過用戶輸入的負數

#include <stdio.h>

int main() {
int num, sum = 0;

printf("輸入數字(輸入 0 結束):\n");

while (1) {
scanf("%d", &num);

if (num == 0) {
break;
}

if (num < 0) {
printf("不允許負數。再試一次。\n");
continue;
}

sum += num;
}

printf("正數之和: %d\n", sum);

return 0;
}

在這個例子中,我們使用 continue 語句來跳過用戶輸入的負數。如果用戶輸入一個負數,我們打印一條消息,並使用 continue 跳過將該數字添加到總和中。

示例 3:處理數組中的特定項目

#include <stdio.h>

int main() {
int numbers[] = {1, -2, 3, -4, 5, -6, 7, -8, 9, -10};
int i, positiveSum = 0;

for (i = 0; i < 10; i++) {
if (numbers[i] < 0) {
continue;
}
positiveSum += numbers[i];
}

printf("正數之和: %d\n", positiveSum);

return 0;
}

輸出:

正數之和: 25

在最後這個例子中,我們使用 continue 語句來跳過數組中的負數,並只對正數求和。

結論

好了,各位!我們已經一起進行了 C 語言中 continue 語句的旅程。從理解它是什麼以及它是如何工作的,到看到它在嵌套循環和實際示例中的應用,你現在已經準備好像專家一樣使用 continue 語句了!

記住,編程就是關於練習。所以不要害怕在你的代碼中嘗試這些概念。嘗試將 continue 與不同類型的循環結合使用,或者用它來解決你自己的問題。

快樂編程,願 continue 總是與你同在!?

方法 描述
continue; 跳過當前迭代的剩餘部分,並移動到循環的下一個迭代

Credits: Image by storyset