注意:
case穿透 switch匹配一个具体的值
switch case break 其语法特点是,如果都不加break,一旦满足case中的条件,从满足条件的case开始,对后面的case都进行操作直到default。如果加了break,则break的作用是在相应的位置跳出整个循环;
#include <stdio.h>
#include <stdlib.h>
int main()
{
printf("请输入一个学生的成绩:\n");
int score;
scanf("%d",&score);
int level=score/10;
switch(level)
{
//level==10
case 10:printf("成绩等级:满分\n");break;
case 9: printf("成绩等级:优\n");break;
case 8: printf("成绩等级:良\n");break;
case 7: printf("成绩等级:中\n");break;
case 6: printf("成绩等级:及格\n");break;
//level== 0 1 2 3 4 5 这6种情况
default: printf("成绩等级:不及格\n");break;
}
return 0;
}
当用下面代码输入 100 时 输出 的是 满分 优 良 中
#include <stdio.h>
#include <stdlib.h>
int main()
{
printf("请输入一个学生的成绩:\n");
int score;
scanf("%d",&score);
int level=score/10;
switch(level)
{
//level==10
case 10:printf("成绩等级:满分\n");//break;
case 9: printf("成绩等级:优\n");//break;
case 8: printf("成绩等级:良\n");//break;
case 7: printf("成绩等级:中\n");break;
case 6: printf("成绩等级:及格\n");break;
//level== 0 1 2 3 4 5 这6种情况
default: printf("成绩等级:不及格\n");break;
}
return 0;
}