C语言笔记1:break与continue的区别

参考谭浩强《C语言程序设计》第五版P125程序

我们使用双层循环结构实现一个二维数组的输出,并在其中练习使用break与continue。

题目:输出4*5矩阵
1 2 3 4 5
2 4 6 8 10
3 6 9 12 15
4 8 12 16 20

#include <stdio.h>

int main(int argc, const char * argv[]) {
    int i,j;
    for(i=1;i<=4;i++){
        for(j=1;j<=5;j++){
            printf("%d ",i*j);
        }
        printf("\n");
    }
    return 0;
}

下面使用break将第三行后三位数字删除,正确代码如下:

#include<stdio.h>
int main (){
    int i,j;
    for(i=1;i<=4;i++){
        for(j=1;j<=5;j++){
            if(i==3&&j==2) break;
            printf("%d ",i*j);
        }
        printf("\n");
    }
    return 0;
}

这里要注意两点

  • 条件语句应该是i= =3&&j= =2,这是因为仅删除后三个数字,保留第一个数字3。
  • 条件语句的出现位置应该在内层循环,而不是出现在外层。

错误示范

#include<stdio.h>
int main (){
    int i,j;
    for(i=1;i<=4;i++){
        if(i==3) break;
        for(j=1;j<=5;j++){
            printf("%d ",i*j);
        }
        printf("\n");
    }
    return 0;
}

此时,break的作用就是直接跳出外层循环,结束运行。


下面使用continue演示删除第三行第二个元素6,

#include<stdio.h>
int main (){
    int i,j;
    for(i=1;i<=4;i++){
        for(j=1;j<=5;j++){
            if(i==3&&j==2){
                printf("  ");
                continue;
            }
            printf("%d ",i*j);
        }
        printf("\n");
    }
    return 0;
}
  • 这里要注意加上if语句的大括号

总结
这个程序体现出的break与continue的区别:

break是提前终止整个循环。
continue是提前结束本次循环,但不结束整个循环。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值