break 和 continue 在 for 循环与 while 循环中的区别与联系

break 和 continue 语句

在实际操作中经常会需要提前终止循环,C语言便提供了break与continue这两个关键字

break

break 的作用是永久终止循环,当break被执行时,将直接跳出循环,从而继续执行接下来的语句

continue

continue 的作用是跳过此次循环中continue之后的代码,这一点在for循环和while循环中是有差异的

在while循环中的break和continue

break举例

//在while语句中的break语句实例

#include<stdio.h>

int main()
{
	int i = 1;
	while (i <= 10)
	{
		if (i == 6)
		{
			break;//当i为6时break执行跳出循环并且不打印数字6
		}
		printf("%d ", i);
		i++;
	}
	return 0;
}

代码执行结果如下:
在这里插入图片描述

由以上实例可知,当break被执行时会直接跳出循环从而永久终止循环不再打印数字

注意 当break应用于嵌套循环中时,break被执行只会跳出一层循环而继续执行外层循环的语句

continue举例

同样的代码,如果把break换成continue结果如何呢?

//在while语句中的continue语句实例

#include<stdio.h>

int main()
{
	int i = 1;
	while (i <= 10)
	{
		if (i == 6)
		{
			continue;//当i为6时continue执行,此时只跳过此次循环continue后面的内容
		}			//因为i++被跳过,所以无法调整循环变量,导致i始终为6,代码会死循环且不再打印
		printf("%d ", i);
		i++;//循环变量的调整位于此处
	}
	return 0;
}

结果如下:
在这里插入图片描述
光标将一直在5后面死循环的闪动无法结束

在for循环中的break和continue

break举例

同样的例子使用for循环来实现,代码如下:

//在for循环中的break语句实例

#include<stdio.h>

int main()
{
	int i = 0;
	for (i = 1; i <= 10; i++)
	{
		if (i == 6)
		{
			break;//当i为6时break执行跳出循环
		}
		printf("%d ", i);
	}
	return 0;
}

代码执行结果如下:
在这里插入图片描述

由此可知对于break语句,在for循环和while循环中结果是一样的都是跳出循环永久终止循环

continue举例

而对于同样的代码,在for循环中将break改为continue结果如何呢?

//在for循环中的continue语句实例

#include<stdio.h>

int main()
{
	int i = 0;
	for (i = 1; i <= 10; i++)//i++位于此处,不会被continue跳过
	{
		if (i == 6)
		{
			continue;//当i为6时continue语句执行,跳过当次循环,不打印数字6,之后执行i++,继续接下来的打印
		}
		printf("%d ", i);
	}
	return 0;
}

代码执行结果如下:
在这里插入图片描述
由此可见,代码并没有死循环,这是因为for循环与while循环的循环变量调整的位置不同导致continue语句的执行结果不同,这就是continue语句在两个循环语句中的不同之处

对于do while 语句,其break语句与continue语句的使用情况基本与while语句一样,可自行体会

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值