C語言continue語句


C語言中的continue語句用於繼續執行迴圈(whiledo whilefor)。 它與迴圈中的條件一起使用。

在內迴圈的情況下,它跳過當前疊代,繼續內迴圈的下一個疊代。

語法

jump-statement;  
continue;

跳轉語句可以是whiledo whilefor迴圈。

continue語句範例

開啟Visual Studio建立一個名稱為:continue的工程,並在這個工程中建立一個原始檔:continue-statment.c,其程式碼如下所示 -

#include <stdio.h>    

void main() {
    int i = 1;//initializing a local variable  

    //starting a loop from 1 to 10  
    for (i = 1;i <= 10;i++) {
        if (i == 5) {//if value of i is equal to 5, it will continue the loop  
            continue;
        }
        printf("%d \n", i);
    }//end of for loop  

}

執行上面程式碼,得到以下結果 -

1
2
3
4
6
7
8
9
10

如上輸出所示,5不會在控制台上列印,因為迴圈在i == 5之後,執行continue語句,跳過剩下的語句並開始下一個疊代。

continue與內迴圈

在這種情況下,C語言中continue語句只繼續內迴圈,而不是外迴圈。建立一個原始檔:continue-inner-loop.c,其程式碼如下所示 -

#include <stdio.h>    
#include <conio.h>    
void main() {
    int i = 1, j = 1;//initializing a local variable  

    for (i = 1;i <= 3;i++) {
        for (j = 1;j <= 3;j++) {
            if (i == 2 && j == 2) {
                continue;//will continue loop of j only  
            }
            printf("%d %d\n", i, j);
        }
    }//end of for loop  

}

執行上面程式碼,得到以下結果 -

1 1
1 2
1 3
2 1
2 3
3 1
3 2
3 3

如上面輸出結果中所看到的,2 2這一行資料並沒有列印在控制台上,這是因為在內部迴圈在i == 2j == 2執行continue語句,跳過並進入下一個疊代。