C语言关键字浅析-break

### C语言关键字浅析系列 ###

### ISO/ANSI C 关键字 ###

break关键字算是最常用的关键字之一了

常见于程序的循环结构和选择结构中

 

break的作用是:

结束当前循环并跳出本层循环体。

 

1、循环结构中的break

循环结构中的break经常结合带if的选择结构一起使用

#include <stdio.h>

int main(void)
{
    int i;
    int sum;

    /* 定义一个数组,这种初始化方式只有ANSI C支持 */
    int a[10] = {1,4,2,3,6,5,3,6,2,9};

    /* for循环中的break,这个例子是数组的查找 */
    for(i = 0; i < 10; i++)
    {
        if(a[i] == 6)
        {
            printf("6 is found.\n");
            break;   /* 找到6,可以退出循环 */
        }
        else
        {
            printf("Continue to search 6\n");
        }
    }

    /* while或do-while循环中的break,这个例子是满载限制 */
    sum = 0;
    i = 0;
    while(sum < 20)
    {
        if(a[i] < 0)
        {
            break;   /* 操作数不合法时可退出循环 */
        }
        sum += a[i++];
    }
    printf("Sum is %d", sum);

    return 0;
}

2、嵌套循环中的break

嵌套结构中的break一次只往外跳出一层嵌套

#include <stdio.h>

int main(void)
{
    int i, j, flag;
    flag = 0;

    /* 定义一个10*10的数组并用函数初始化 */
    int a[10][10];
    init();

    /*
        定义:如果一个数据矩阵的一行中有一个负数,那该行无效
        下面的循环语句的作用是找有多少行无效
    */
    for(i = 0;i < 10; i++)
    {
        for(j = 0; j < 10; j++)
        {
            if(a[i][j] < 0)
            {
                flag++;
                break;   /* break一次只往上跳出一层嵌套的循环结构 */
            }
        }
    }

    return 0;
}

3、switch选择语句中的break

根据switch语句的特性,如果每一个case后的语句没有break,那程序将继续进行下去

当然这个特性有时候会有巧妙的运用

char judgeGrade(char level)
{
    /* 通过成绩等级制判断招聘人员资料的审核归类 */
    char x;
    switch(level)
    {
        case 'A':
        case 'B':
        case 'C':x = 'T';   /* T 通过 */
                 break;
        case 'D':x = 'W';   /* W 等待讨论 */
                 break;
        default:x = 'P';    /* P 不通过 */
    }
}

 

——参考《C Primer Plus第五版》

 

相关文章:C语言关键字浅析-continue

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值