c中退出循环

我们在学习c语言时候,已经知道在编写循环得时候在循环体之前,比如while for 或者之后使用(do)语句来结束退出点得方法,然后有时候,我们需要在循环中间设置退出点,甚至我们在循环中可能要设置多个循环结束点,break语句可以用在上述得循环中当作结束的语句

学习break语句时候,我们能对其他两个相关的语句:continue 语句和goto 语句

continue会跳过某次迭代的部分内容 ,但不会跳出整个循环goto语句则是从一条语句跳到另一条语句中

break 语句

break 语句不仅可以从switch 跳出来 还可以跳出 for while do 循环中

比如我们编写是否是素数我们编写一个求n的素数一旦发现有约数我们就跳出循环 ,而且不需要继续尝试下去用 if 来判断是否是素数 

for(i=2;i++;i<n)
{
for(j=2;j<i;j++)
{if(i%j==0)
break;
}
if(i==j)
{cout<<"该数是素数";}





}

对于退出点在循环体之间而不是循环体之前和之后的情况,break语句特别有用,读入用户输入并且在遇到一些特殊命令时可以终止循环常常属于这种类型

for(;;)
cout<<"输入一个数(0除外)";
cin>>n;
if(n==0)
break;
cout<<"输入的数是"<<n;

当然break在遇到多个循环时 比如嵌套在for while do switch 中只能跳出一个循环例如

for(;;){
switch(...){
...
break;

}
}

break只能从switch中转移出来而不能从for循环中出来

continue 语句

continue 是无法跳出循环的 但由于和break 相似 所以放在这里也不全是随意的  break能够 把程序控制放在循环之后 ,continue 刚好把程序控制在循环内,break和continue 语句的另外一个区别是break 语句会使程序跳出循环而continue则是把程序控制在循环内部 break和continue语句的另外一个区别是break用于switch和其他循环 而 continue 用于循环仅此 

下面一个例子来说明continue的简单应用循环读入10个非0的数后循环截止 无论何时读入0都执行continue 语句,控制将跳过 循环体的剩余部分 但人保留在循环体内

n=0;
sum=0;
while(n<10)
{
cin>>i;
if(i==0)
continue;
sum+=i;
n++


}

如果不用continue下面示例如下图

n=0;
sum=0;
while(n<10)
{
cin>>i;
if(i!=0){
sum+=i;
n++;}

}

  • 6
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值