break和continue

一、break

        在学习switch的时候,我们知道break可以使流程跳出switch结构,来执行switch语句下面的一个语句,实际上,break语句还可以用来从循环体内跳出循环体,提前结束循环,接着执行循环下面的语句。

        下面给大家举一个例子:

#include<stdio.h>
int main()
{
    int i=1;
    int num=0;
    while (i<101)
    {
       num=num+i;
       i=i+1;
       if (i>50)
       {
        break;
       }
       
    }
    printf("num=%d",num);

    return 0;
}


num=1275
PS C:\csay\cyuyan>

        在这串代码中,我们能很好理解,就是当i的值大于50时就跳出循环,最后输出的就是从1加到50的和。

        当break语句用于do-while、for、while循环语句中时,可使程序终止循环;而执行循环后面的语句,通常break语句总是与if语句联在一起,即满足条件时便跳出循环。

        注意:1. break语句对if-else的条件语句不起作用。2. 在多层循环中,一个break语句只向外跳一层。3.break语句只能用于循环语句和switch语句之中,不能单独使用。

二、continue

        有的时候不希望终止整个循环的操作,而是希望提前结束本次循环,而接着执行下次循环,这时可以用continue语句。

        下面给大家分析一个例子:

#include <stdio.h>
int main()
{
    int i;
    for(i=1;i<=10;i++)    
        {
            if(i%2==1)
            continue;
            printf("%d\n",i);
        }
    return 0;
}


2
4
6
8
10
PS C:\csay\cyuyan>

        这个例子中,循环1-10中的数字,如果数字是奇数则跳过本次循环,直接执行下一次循环,如果是偶数则输出该数字。

        continue语句的语法比较简单,它只有一个关键字,不需要加任何表达式或其他参数。通常情况下,continue语句放在循环体内,用来跳过循环体中某一次后面的语句,进入下一次循环。

三、区别

        break 语句用于退出当前的循 环结构。当你使用 break`时,它会立即停止当前循环的执行,并继续向下执行后续的代码。如果当前循环是嵌套循环的一部分,那么 break只会影响它所在的这一层的循环。如果在多层循环嵌套的情况下,你需要从最内层的循环开始逐层向上退出,这时可以使用递归调用break来实现。

        continue 语句则用于提前结束当前循环的本次执行,而不终止整个循环。当你使用continue 时,它会直接跳过循环体中剩余的语句(包括 printf等函数),并重新评估是否应该执行循环的条件。如果条件不满足,则不会进入循环的下次迭代。需要注意的是continue仅限于在 for、while、do-while这些循环语句中使用,且不能用在 switch语句中。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值