椋鸟C语言笔记#6:用switch函数构建分支语句

萌新的学习笔记,写错了恳请斧正。


目录

Switch语句的用法

switch语句中的break

有效的利用break

switch语句里的default


Switch语句的用法

switch语句其实就是一种特殊的if...else...语句

但在有些情况下,用switch语句更直观

switch (expression) 
{
case value1: statement1; //case和valve间应有空格
case value2: statement2;
default: statement3;
}

switch语句会根据expression表达式的值选择一个分支,并顺次执行

如果找不到对应的值,则从default分支开始顺次执行

要点1:expression必须是整型表达式,value必须是整型常量

要点2:选择分支后顺次执行,而不是只执行这一项。

比方说expression的值与value2匹配,则先执行statement2,再statement3

switch语句中的break

如果我们不想让switch选完分支后顺次执行

而是只执行这一项,该怎么办呢?

#include 
 
int main()
{
    int n = 0;

    scanf("%d", &n);

    switch(n%3)
    {
    case 0: printf("整除,余数为0\n"); break;
    case 1: printf("余数是1\n"); break;
    case 2: printf("余数是2\n"); break;
    }

    return 0;
}

如上例,只要在语句后加一个break,便可直接跳出该结构

而如果没有break,就可能出现奇怪的情况:

椋鸟C语言笔记#6:用switch函数构建分支语句_第1张图片

有效的利用break

我们不一定要每一个分支后都加上break

有时不加break也是一种方法:

#include 

int main()
{
    int day = 0;

    scanf("%d", &day);

    switch(day)
    {
    case 1:
    case 2:
    case 3:
    case 4:
    case 5: printf("⼯作⽇\n"); break;
    case 6:
    case 7: printf("休息⽇\n"); break;
    }
    
    return 0;

}

switch语句里的default

default语句一定要放在最后吗?

不一定

case和default没有顺序要求,但是一般把default放最后


你可能感兴趣的:(C语言笔记,笔记,c语言,开发语言)