break和continue语句

break和continue语句

在循环执行的过程中,如果某些状况发生的时候,需要提前终⽌循环,这是非常常见的现象。C语言中提供了 break 和 continue 两个关键字,就是应用到循环中的。

  • break 的作用是用于永久的终止循环,只要break被执行,就会直接跳出循环,继续往后执行。
  • continue 的作用是跳过本次循环continue后边的代码,在for循环和while循环中有所差异。

8.1 while循环中的break和continue

8.1.1 break举例

#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;
}

运行结果:

在这里插入图片描述

打印了 1, 2, 3, 4 后,当i等于5的时候,循环正 break 的地方终止,不再打印,不再循环。 所以 break 的作⽤就是永久的终止循环,只要 break 被执行, break 外的第一层循环就终⽌了。

那以后我们在循环中,想在某种条件下终止循环,则可以使⽤ break 来完成我们想要的效果。

8.1.2 continue举例

continue 是继续的意思,在循环中的作⽤就是跳过本次循环中 continue 后边的代码,继续进行 下⼀次循环的判断。

上⾯的代码,如果把 break 换成 continue 会是什么结果呢?

#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;
}

运行结果:

在这里插入图片描述

到这里我们就能分析出来, continue 可以帮助我们跳过某⼀次循环 continue 后边的代码,直接到循环的判断部分,进行下⼀次循环的判断,如果循环的 调整 是在 continue 后边的话,可能会造成 死循环

8.2 for循环的break和continue

8.2.1 break举例

其实和 while 循环中的 break ⼀样, for 循环中的 break 也是用于终止循环的,不管循环还需要循环多少次,只要执行到了 break ,循环就彻底终止,话不多说我们直接上代码:

#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 来完成。

8.2.2 continue举例

如果上⾯的代码,如果把 break 换成 continue 会是什么结果呢?

#include <stdio.h>

int main()
{
	int i = 1; 
	for(i=1; i<=10; i++)//i++为代码判断元素调整部分
	{
	if(i == 5)
		continue;//这⾥continue跳过了后边的打印,直接来到了i++的调整部分
	printf("%d ", i);
	}
	return 0;
}

运行结果:
在这里插入图片描述

所以在 for 循环中 continue 的作用是跳过本次循环中 continue 后的代码,直接去到循环的 调整 部分。未来当某个条件发生的时候,本次循环无需再执行后续某些操作的时候,就可以使用 continue 来实现。

8.3 do-while循环的break和continue

do-while 语句中的 break 和 continue 的作用和 while 循环中几乎一模一样,大家可以自行测试感受和体会。

#include <stdio.h>

int main()
{
	int i = 1;
	do
	{
		if(i == 5)
		break;
		printf("%d ", i);
		i = i + 1;
	}while(i<=10);

	return 0;
}

在这里插入图片描述

#include <stdio.h>

int main()
{
	int i = 1;
	do
	{
		if(i == 5)
		continue;
		printf("%d ", i);
		i = i + 1;
	}while(i<=10);

	return 0;
}

在这里插入图片描述

  • 22
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

'撒野奔跑.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值