三、C语言中的分支与循环—break和continue语句(8)循环结构 完

本章分支结构的学习内容如下:

三、C语言中的分支与循环---if语句 (1)

三、C语言中的分支与循环---关系操作符 (2)

三、C语言中的分支与循环---条件操作符 与逻辑操作符(3)

三、C语言中的分支与循环---switch语句(4)分支结构 完


本章循环结构的学习内容如下:

三、C语言中的分支与循环---while循环 (5)

三、C语言中的分支与循环---for循环 (6)

三、C语言中的分支与循环---do-while循环 (7)

三、C语言中的分支与循环---break和continue语句(8)循环结构 完


1.基本概念

在循环执行的过程中,如果某些状况发⽣的时候,需要提前终止循环,这是非常常见的现象。C语⾔中 提供了 break 和 continue 两个关键字,就是应该到循环中的。
• break 的作用是用于永久的终止循环,只要 break 被执行,直接就会跳出循环,继续往后执行
• continue 的作用是跳过本次循环 continue 后边的代码,在 for 循环和 while 循环中有所差异的。
其实我们在之前已经接触到了break语句,在switch分支结构中,break语句用于跳出分支结构,避免穿透现象,详细解释见 三、C语言中的分支与循环---switch语句(4)分支结构 完

2.while循环中的break和continue

1)break

代码示例
打印了1,2,3,4后,当i等于5的时候,循环正 break 的地⽅终⽌,不再打印,不再循环。
所以 break 的作⽤就是永久的终⽌循环,只要 break 被执⾏, break 外的第⼀层循环就终⽌了。
那以后我们在循环中,想在某种条件下终⽌循环,则可以使⽤ break 来完成我们想要的效果。

cs 复制代码
#include <stdio.h>
int main()
{
	int i = 1;
	while (i <= 10)
	{
		if (i == 5)
			break;//当i等于5后,就执⾏break,循环就终⽌了
		printf("%d ", i);
		i = i + 1;
	}
	return 0;
}

2)continue

continue 是继续的意思,在循环中的作⽤就是跳过本次循环中 continue 后边的代码,继续进⾏
下⼀次循环的判断。
continue 可以帮助我们跳过某⼀次循环 continue 后边的代码,直接到循环的判断部分,进⾏下⼀次循环的判断,如果循环的调整是在 continue 后边的话,可能会造成死循环。

cs 复制代码
#include <stdio.h>
int main()
{
	int i = 1;
	while (i <= 10)
	{
		if (i == 5)
			continue;
		//当i等于5后,就执⾏continue,直接跳过continue的代码,去循环的判断的地⽅
		//因为这⾥跳过了i = i+1,所以i⼀直为5,程序陷⼊和死循环
		printf("%d ", i);
		i = i + 1;
	}
	return 0;
}

3.for循环中的break和continue

1)break

其实和 while 循环中的 break ⼀样, for 循环中的 break 也是⽤于终⽌循环的,不管循环还需
要循环多少次,只要执⾏到了 break ,循环就彻底终⽌

cs 复制代码
#include <stdio.h>
int main()
{
 int i = 1;
 for(i=1; i<=10; i++)
 {
 if(i == 5)
 break;
 printf("%d ", i);
 }
 return 0;
}

break 的作⽤是永久的终⽌循环,未来我们在某个条件发⽣的时候,不想再继续循环的时候,就可以 使⽤ break 来完成。

2)continue

cs 复制代码
#include <stdio.h>
int main()
{
 int i = 1;
 for(i=1; i<=10; i++)
 {
 if(i == 5)
 continue;//这⾥continue跳过了后边的打印,来到了i++的调整部分
 printf("%d ", i);
 }
 return 0;
}

运行结果如下:我们可以看到当i=5时,打印任务被跳过了

4.do-while循环中的break和continue

do.while 语句中的 break 和 continue 的作⽤和 while 循环中⼏乎⼀模⼀样.

1)break

cs 复制代码
#include <stdio.h>
int main()
{
 int i = 1;
 do
 {
 if(i == 5)
 break;
 printf("%d ", i);
 i = i + 1;
 }while(i<=10);
return 0;
}

2)continue

cs 复制代码
#include <stdio.h>
int main()
{
 int i = 1;
 do
 {
 if(i == 5)
 continue;
 printf("%d ", i);
 i = i + 1;
 }while(i<=10);
 return 0 ;
}
相关推荐
折哥的程序人生 · 物流技术专研4 分钟前
《Java 100 天进阶之路》第23篇:缓冲区数据结构 ByteBuffer
java·开发语言·数据结构·后端·面试·求职招聘
不剪发的Tony老师9 分钟前
Code::Blocks:一款免费开源的C/C++/Fortran集成开发环境
c语言·c++·ide
lsx20240621 分钟前
Razor VB 循环
开发语言
csuzhucong22 分钟前
c++版本特性
开发语言·c++
wand codemonkey44 分钟前
【第五步+前后分离调】最后的联动调试--java+Vue3项目
java·开发语言·vue.js
RSTJ_16251 小时前
PYTHON+AI LLM DAY FOURTY-SEVEN
开发语言·人工智能·python·深度学习
代钦塔拉1 小时前
第二篇:VS2019 + Qt5.9.9 中文乱码实战:源码GB2312不乱码、文件写入与跨平台方案
开发语言·qt
.小小陈.2 小时前
Linux 多线程进阶:线程互斥、同步、线程池、死锁与线程安全、读写锁、自旋锁
linux·开发语言·c++
lingran__2 小时前
C++入门基础
开发语言·c++
吃好睡好便好2 小时前
Matlab中三种三维图的对比
开发语言·人工智能·学习·算法·matlab·信息可视化