switch 是多分支选择语句
它的用法跟if语句不太一样,我们先来看一下它的基本代码框架
switch (A) // A代表着想要选择判断的变量 { case # : 语句; //# 代表变量A的值 break; //break表示结束switch选择 case # : 语句; break; default : 语句; //default 当以上case 后面 # 都不是 A的值的时候 默认执行default后面的语句 }
我们举一个例子:
Jun冕被老师叫去帮忙写一个小程序来进行考试分数等级的转换
90 - 100 A
80 - 90 B
70 - 80 C
60 - 70 D
小于60 E
#include<stdio.h> int main() { int n; scanf("%d", &n); printf("请输入分数\n"); switch(n/10) { case 10: case 9: printf("A\n"); break; case 8: printf("B\n"); break; case 7: printf("C\n"); break; case 6: printf("D\n"); break; case 5: case 4: case 3: case 2: case 1: case 0: printf("E\n"); break; default: printf("Error\n"); } return 0; }
下面我们就这个例子来讲解运行switch的注意事项
1.switch是顺序执行语句,如果不遇到break会一直执行下去直到默认的default结束
下面来示范一下不加break的代码运行结果
#include<stdio.h> int main() { int n; scanf("%d", &n); printf("请输入分数\n"); switch(n/10) { case 10: case 9: printf("A\n"); case 8: printf("B\n"); case 7: printf("C\n"); case 6: printf("D\n"); case 5: case 4: case 3: case 2: case 1: case 0: printf("E\n"); default: printf("Error\n"); } return 0; }
我们发现当我们输入90的时候下面每一个分枝结果都输出的一遍
这就是不加break后,不能有效地筛选自己想要的结果
2.switch(A) A的数据类型只能说整型 字符型 枚举型
当时浮点型数据的时候程序就会报错
这就是switch大概需要注意的事项了 感谢大家的支持