题目1:要求按照考试成绩的等级输出百分制分数段,A等为85分以上,B等为70-84分,C等为60-69分,D等为60分以下。成绩的等级由键盘输入。
题目2:要求按照考试成绩输出等级,85分以上为A等,70-84分为B等,60-69分为C等,60分以下为D等。成绩由键盘输入。
分析:这两个题都是判断选择的类型 用if…else类型略为繁琐,本题用switch()…case最为合适
代码1
#include "stdio.h"
void main()
{
char grade;
printf("请输入等级(为大写字母)");
scanf("%c",&grade);
switch(grade)
{
case'A':printf("85~100\n");break;
case'B':printf("70~84\n");break;
case'C':printf("60~69\n");break;
case'D':printf("<60\n");break;
default:printf("输入错误!\n");break;
}
}
运行结果如下
代码2
#include "stdio.h"
void main()
{
int score;
printf("请输入分数(0~100)");
scanf("%d",&score);
switch(score/10)
{
case 10:printf("成绩等级为A");break;
case 9:printf("成绩等级为A");break;
case 8:printf("成绩等级为B");break;
case 7:printf("成绩等级为C");break;
default:printf("成绩等级为D");break;
}
}
运行结果如下
总结:应该注意的很重要的一点是,switch后面括号内的“表达式”的值,其类型应为整型或字符型,也就是int类型或char类型,不可以是浮点型,也就是double类型和float类型