C语言多选一结构—switch

介绍

在C语言中,选择结构是控制程序流程的重要部分,其中多选一结构是常用的选择结构之一。本文将针对C语言中的多选一结构——switch进行详细介绍,包括其结构、执行过程、特点以及与if结构的对比。

switch的结构

switch的结构如下所示:

switch (匹配标签)
{
    case 标签1:
        code1;
        break;
    case 标签2:
        code2;
        break;
    case 标签3:
        code3;
        break;
    default:
}

switch的执行过程

  1. 用匹配标签与标签进行依次比较,相等的,就执行相应分支。
  2. 匹配标签是整型表达式。
  3. 标签是整型常量表达式。
  4. break的作用是跳出结构。

举例如下:

int a = 3;
switch (a)
{
    case 1:
        printf("case 1\n");
        break;
    case 2:
        printf("case 2\n");
        break;
    case 3:
        printf("case 3\n");
        break;
    default:
        printf("default\n");
}

switch的特点

  1. 标签就是分支编号,不能重复。
  2. 编号不一定连续,是个整数即可。
  3. default相当于else,可以不用写。
  4. break的作用是跳出结构,最后一个分支不用写break。
  5. 标签只能是整数,小数直接报错。
  6. 标签内定义变量需要加大括号。

不写break

break的作用是中断跳出switch结构,没有break,对应的分支执行完不结束switch,继续执行下一个分支,直到遇见break或者switch结构结束。

举例如下:

int a = 2;
switch (a)
{
    case 1:
        printf("case 1\n");
        break;
    case 2:
        printf("case 2\n");
        //无break,执行完2继续执行3
    case 3:
        printf("case 3\n");
        break;
    //此处结束switch结构
    default:
        printf("default\n");
}

switch结构实现范围的思路

依赖上面的思路,判断变量a是否在2~8之间,a必须是整型。

int a = 2;
switch (a)
{
    case 2:
    case 3:
    case 4:
    case 5:
    case 6:
    case 7:
    case 8:
        printf("在范围\n");
        break;
    default:
        printf("不在范围\n");
}

switch与if的对比

  1. switch实现范围过于繁琐,如果范围加大,那么就要写更多case,而if可以写范围判断。
  2. switch不能涉及小数,if可以。

总结

本文对C语言中的多选一结构——switch进行了详细介绍,包括其结构、执行过程、特点以及与if结构的对比。相信读者在阅读完本文后,可以更好地理解并运用switch结构。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

江南侠客(上海)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值