switch (控制表达式) {//'A'==65 'a'==97 '0'==48 "hsakfhshf" 1.25
case 常量表达式1:
语句块1;
break;
case 常量表达式2:
语句块2;
break;
...
default:
语句块X;
break;
}
2.控制表达式被当做整数处理,可以是字符,但是不能是浮点数和字符串。常量表达式必须是常量,如:3、'A'、2+5。不允许有重复的分支。
3.default不一定在最后,但是如果default出现在其它case之前,其最后的break不能省略。
4.一般而言所有能够使用switch-case结构的场合都可以用if-else替代,反之不行。
#include <stdio.h>
int main()
{
for(;;)
{
float score;
printf("输入一个学生的考试成绩:\n");
scanf("%f",&score);
if(score<0||score>100)
{
printf("无效成绩...\n");
return 0;
}
switch((int)score/10)
{
case 10:
case 9:
printf("你的成绩为‘优秀..’");
break;
case 8:
case 7:
printf("你的成绩为‘中等..’");
break;
case 6:
printf("你的成绩为‘合格..’");
break;
default:
printf("你的成绩为‘不合格..’");
break;
}
}
return 0;
}