C語言中的continue語句用于繼續(xù)執(zhí)行循環(huán)(while,do while和for)。 它與循環(huán)中的條件一起使用。
在內(nèi)循環(huán)的情況下,它跳過當(dāng)前迭代,繼續(xù)內(nèi)循環(huán)的下一個(gè)迭代。
語法
jump-statement;
continue;
跳轉(zhuǎn)語句可以是while,do while和for循環(huán)。
打開Visual Studio創(chuàng)建一個(gè)名稱為:continue的工程,并在這個(gè)工程中創(chuàng)建一個(gè)源文件: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
}
執(zhí)行上面代碼,得到以下結(jié)果 -
1
2
3
4
6
7
8
9
10
如上輸出所示,5不會在控制臺上打印,因?yàn)檠h(huán)在i == 5之后,執(zhí)行continue語句,跳過剩下的語句并開始下一個(gè)迭代。
在這種情況下,C語言中continue語句只繼續(xù)內(nèi)循環(huán),而不是外循環(huán)。創(chuàng)建一個(gè)源文件: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
}
執(zhí)行上面代碼,得到以下結(jié)果 -
1 1
1 2
1 3
2 1
2 3
3 1
3 2
3 3
如上面輸出結(jié)果中所看到的,2 2這一行數(shù)據(jù)并沒有打印在控制臺上,這是因?yàn)樵趦?nèi)部循環(huán)在i == 2和j == 2執(zhí)行continue語句,跳過并進(jìn)入下一個(gè)迭代。