while语句中的break和continue

在while语句中,有着和if语句共有的存在,break和continue。他们在while语句中又扮演着什么样的角色?

1.break

break的作用是用于终止循环的,在while循环中,只要有机会执行到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后,当i等于5的时候,循环于break的地方终止,不再打印,不在循环。

所以break的作用就是永久的终止循环,只要break被执行,break外的第一层循环就终止了。

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

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

练习:连续输入字符,只打印数字字符,其他字符直接跳过,不做处理。

参考代码:

#include <stdio.h>
int main()
{
int ch=0;

while((ch=getchar())!=EOF)
{
if(ch<'0'||ch>'9')
continue;
putchar(ch);//putchar,接受单个字符
}
return 0;
}

 上述的代码中,Ascall码值不在'0', '9'范围内的,使用continue跳过后续的putchar语句,不再打印。学到这里我们也就理解了continue可以帮助我们跳过某一次循环后面的代码,直接到循环判断的部分,进行下一次循环的判断。

所以未来我们在循环中,当某个条件发生的时候,本次循环就无需再执行某些操作的时候,我们就可以使用continue来实现。

对Ascall码值感兴趣的朋友,可以自己在网上了解


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值