C语言:break和continue语句

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

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

1、while循环中的break和continue

1.1、break举例
#include <stdio.h>

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

执行的结果:

打印了1,2,3,4后,当i等于5的时候,循环到break的地方终止,不再打印,不再循环。

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

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

 

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后面的话,可能会造成死循环。


2、for循环中的break和continue

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

2.2、continue的举例

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

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

运行代码: 

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


3、do while循环中的break和continue

do while语句中的break和continue的作用和while循环几乎一模一样。

3.1、break举例
#include <stdio.h>

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

运行代码: 

3.2、continue举例
#include <stdio.h>
int main()
{
    int i = 1;
    do
    {
        if (i == 5)
            continue;
        printf("%d ", i);
        i = i + 1;
    } while (i <= 10);
    return 0;
}

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值