之前我们学习了C语言中的循环语句,使用while或for循环时如果有一些特殊的条件下我们需要提前结束循环而在不满足条件的前提下继续执行我们的循环语句该怎样做呢?
遇到上面的情况我们就需要使用循环控制语句来跳出循环了。
循环控制语句
循环控制语句它可以改变你代码的执行顺序。通过它你可以实现代码的跳转。
break关键字
使用while循环来计算1加到100的值:
#include <stdio.h>
int main(){
int i=1, sum=0;
while(1){ //循环条件为死循环
sum+=i;
i++;
if(i>100) break;
}
printf("%d\n", sum);
return 0;
}
在这里我们的while循环中的循环条件为1,它是一个死循环。那么当执行到第一百次循环的时候,计算完i++后i的值是101,这个时候我们进行判断如果i>100满足条件后我们就会执行break语句来结束循环。
用法:
C 语言中 break 语句有以下两种用法:
- 当 break 语句出现在一个循环内时,循环会立即终止,且程序流将继续执行紧接着循环的下一条语句。
- 它可用于终止 switch 语句中的一个 case。
如果您使用的是嵌套循环(即一个循环内嵌套另一个循环),break 语句会停止执行最内层的循环,然后开始执行该块之后的下一行代码。
continue 语句
C 语言中的 continue 语句有点像 break 语句。但它不是强制终止,continue 会跳过当前循环中的代码,强迫开始下一次循环。
对于 for 循环,continue 语句执行后自增语句仍然会执行。对于 while 和 do…while 循环,continue 语句会重新执行条件判断语句。
continue语句用在 while、for 循环中,常与 if 条件语句一起使用,判断条件是否成立。
#include <stdio.h>
int main(){
char c = 0;
while(c!='\n'){ //回车键结束循环
c=getchar();
if(c=='4' || c=='5'){ //按下的是数字键4或5
continue; //跳过当次循环,进入下次循环
}
putchar(c);
}
return 0;
}
程序遇到while时,变量c的值为'\0'
,循环条件c!='\n'
成立,开始第一次循环。getchar() 使程序暂停执行,等待用户输入,直到用户按下回车键才开始读取字符。