
- C程式設計教程
- C語言 - 首頁
- C語言基礎
- C語言 - 概述
- C語言 - 特性
- C語言 - 歷史
- C語言 - 環境搭建
- C語言 - 程式結構
- C語言 - Hello World
- C語言 - 編譯過程
- C語言 - 註釋
- C語言 - 詞法單元
- C語言 - 關鍵字
- C語言 - 識別符號
- C語言 - 使用者輸入
- C語言 - 基本語法
- C語言 - 資料型別
- C語言 - 變數
- C語言 - 整數提升
- C語言 - 型別轉換
- C語言 - 型別強制轉換
- C語言 - 布林值
- C語言中的常量和字面量
- C語言 - 常量
- C語言 - 字面量
- C語言 - 轉義序列
- C語言 - 格式說明符
- C語言中的運算子
- C語言 - 運算子
- C語言 - 算術運算子
- C語言 - 關係運算符
- C語言 - 邏輯運算子
- C語言 - 位運算子
- C語言 - 賦值運算子
- C語言 - 一元運算子
- C語言 - 自增和自減運算子
- C語言 - 三元運算子
- C語言 - sizeof運算子
- C語言 - 運算子優先順序
- C語言 - 其他運算子
- C語言中的決策語句
- C語言 - 決策語句
- C語言 - if語句
- C語言 - if...else語句
- C語言 - 巢狀if語句
- C語言 - switch語句
- C語言 - 巢狀switch語句
- C語言中的迴圈
- C語言 - 迴圈
- C語言 - while迴圈
- C語言 - for迴圈
- C語言 - do...while迴圈
- C語言 - 巢狀迴圈
- C語言 - 死迴圈
- C語言 - break語句
- C語言 - continue語句
- C語言 - goto語句
- C語言中的函式
- C語言 - 函式
- C語言 - 主函式
- C語言 - 按值呼叫函式
- C語言 - 按引用呼叫函式
- C語言 - 巢狀函式
- C語言 - 可變引數函式
- C語言 - 使用者自定義函式
- C語言 - 回撥函式
- C語言 - return語句
- C語言 - 遞迴
- C語言中的作用域規則
- C語言 - 作用域規則
- C語言 - 靜態變數
- C語言 - 全域性變數
- C語言中的陣列
- C語言 - 陣列
- C語言 - 陣列的特性
- C語言 - 多維陣列
- C語言 - 向函式傳遞陣列
- C語言 - 從函式返回陣列
- C語言 - 變長陣列
- C語言中的指標
- C語言 - 指標
- C語言 - 指標和陣列
- C語言 - 指標的應用
- C語言 - 指標運算
- C語言 - 指標陣列
- C語言 - 指向指標的指標
- C語言 - 向函式傳遞指標
- C語言 - 從函式返回指標
- C語言 - 函式指標
- C語言 - 指向陣列的指標
- C語言 - 指向結構體的指標
- C語言 - 指標鏈
- C語言 - 指標與陣列的區別
- C語言 - 字元指標和函式
- C語言 - 空指標
- C語言 - void指標
- C語言 - 懸空指標
- C語言 - 解引用指標
- C語言 - 近、遠和巨型指標
- C語言 - 指標陣列的初始化
- C語言 - 指標與多維陣列的區別
- C語言中的字串
- C語言 - 字串
- C語言 - 字串陣列
- C語言 - 特殊字元
- C語言中的結構體和聯合體
- C語言 - 結構體
- C語言 - 結構體和函式
- C語言 - 結構體陣列
- C語言 - 自引用結構體
- C語言 - 查詢表
- C語言 - 點 (.) 運算子
- C語言 - 列舉 (enum)
- C語言 - 結構體填充和壓縮
- C語言 - 巢狀結構體
- C語言 - 匿名結構體和聯合體
- C語言 - 聯合體
- C語言 - 位域
- C語言 - typedef
- C語言中的檔案處理
- C語言 - 輸入 & 輸出
- C語言 - 檔案I/O (檔案處理)
- C語言預處理器
- C語言 - 預處理器
- C語言 - 編譯指示
- C語言 - 預處理器運算子
- C語言 - 宏
- C語言 - 標頭檔案
- C語言中的記憶體管理
- C語言 - 記憶體管理
- C語言 - 記憶體地址
- C語言 - 儲存類
- 其他主題
- C語言 - 錯誤處理
- C語言 - 可變引數
- C語言 - 命令執行
- C語言 - 數學函式
- C語言 - static關鍵字
- C語言 - 隨機數生成
- C語言 - 命令列引數
- C程式設計資源
- C語言 - 問答
- C語言 - 快速指南
- C語言 - 速查表
- C語言 - 有用資源
- C語言 - 討論
C語言中的continue語句
C語言中continue語句的行為與break語句正好相反。它不會強制終止迴圈,而是強制執行迴圈的下一輪迭代,跳過當前迭代中剩餘的語句。
什麼是C語言中的continue語句?
continue語句用於跳過當前迭代中迴圈內剩餘語句的執行,並轉移到下一輪迴圈迭代。它可以與所有C語言迴圈結構(while,do while和for)一起使用。
continue語句語法
continue語句的使用結構如下:
while (expr){ . . . . . . if (condition) continue; . . . }
continue語句流程圖
下面的流程圖展示了continue語句的工作方式:

必須在迴圈內使用continue語句。如果在迴圈外使用continue語句,則會產生編譯錯誤。與break語句不同,continue語句不用於switch-case語句。
帶巢狀迴圈的continue語句
對於巢狀迴圈,continue語句將繼續執行最近迴圈的下一輪迭代。continue語句通常與if語句一起使用。
continue語句示例
示例:帶while迴圈的continue語句
在這個程式中,迴圈生成變數“i”的1到10的值。每當它是一個偶數時,下一輪迭代就開始了,跳過了printf語句。只打印奇數。
#include <stdio.h> int main(){ int i = 0; while (i < 10){ i++; if(i%2 == 0) continue; printf("i: %d\n", i); } }
輸出
i: 1 i: 3 i: 5 i: 7 i: 9
示例:帶for迴圈的continue語句
下面的程式過濾掉字串中的所有母音:
#include <stdio.h> #include <string.h> int main () { char string[] = "Welcome to TutorialsPoint C Tutorial"; int len = strlen(string); int i; printf("Given string: %s\n", string); printf("after removing the vowels\n"); for (i=0; i<len; i++){ if (string[i]=='a' || string[i]=='e' || string[i] == 'i' || string[i] == 'o' || string[i] == 'u') continue; printf("%c", string[i]); } return 0; }
輸出
執行程式碼並檢查其輸出:
Given string: Welcome to TutorialsPoint C Tutorial after removing the vowels Wlcm t TtrlsPnt C Ttrl
示例:帶巢狀迴圈的continue語句
如果continue語句出現在內迴圈中,程式控制將跳轉到相應迴圈的開頭。
在下面的例子中,有三個for迴圈,一個巢狀在另一個裡面。這些迴圈分別由變數i、j和k控制。如果k等於i或j,則最內層迴圈將跳過printf語句,並轉到k的下一個值。當第二個j迴圈等於i時,執行continue。結果,顯示所有三個數字1、2和3的唯一組合。
#include <stdio.h> int main (){ int i, j, k; for(i = 1; i <= 3; i++){ for(j = 1; j <= 3; j++){ if (i == j) continue; for (k=1; k <= 3; k++){ if (k == j || k == i) continue; printf("%d %d %d \n", i,j,k); } } } return 0; }
輸出
執行程式碼並檢查其輸出:
1 2 3 1 3 2 2 1 3 2 3 1 3 1 2 3 2 1
示例:去除字串中單詞之間的空格
以下程式碼檢測字串中單詞之間的空格,並在不同的行上列印每個單詞。
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <time.h> int main(){ char string[] = "Welcome to TutorialsPoint C Tutorial"; int len = strlen(string); int i; printf("Given string: %s\n", string); for (i = 0; i < len; i++){ if (string[i] == ' '){ printf("\n"); continue; } printf("%c", string[i]); } return 0; }
輸出
執行此程式碼後,您將得到以下輸出:
Given string: Welcome to TutorialsPoint C Tutorial Welcome to TutorialsPoint C Tutorial
示例:查詢數字的質因數
continue語句證明非常有效的情況之一是編寫一個程式來查詢給定數字的質因數。
這個程式的演算法是這樣的:
給定數字被連續除以從2開始的數字。如果數字可被整除,則給定數字被減少到除法結果,並且檢查結果數字是否可被2整除,直到它不再可被2整除。
如果不是2,則對從3開始的所有奇數重複此過程。當給定數字減少到1時,迴圈執行。
以下是查詢質因數的程式:
#include <stdio.h> int main (){ int n = 64; int i, m = 2; printf("Prime factors of %d: \n", n); while (n > 1){ if (n % m == 0){ n = n/m; printf("%d ", m); continue; } if (m == 2) m++; else m = m+2; } return 0; }
輸出
這裡,給定的數字是64。因此,當您執行此程式碼時,它將產生以下輸出:
Prime factors of 64: 2 2 2 2 2 2
將數字更改為45,然後更改為90。再次執行程式碼。現在您將得到以下輸出:
Prime factors of 45: 3 3 5 Prime factors of 90: 2 3 3 5