输入一个成绩等级,输出相应的分数范围。

问题遇到的现象和发生背景 下面程序要实现的功能是:输入一个成绩等级,输出相应的分数范围。A等输出90-100;B等输出80-89;C等输出70-79;D等输出60-69;E等输出<60;其它情况输出“error”信息。纠正程序中存在的错误,以实现其功能。

#include

int main(void)

{ float grade;

//printf("请输入成绩等级:");

scanf("%c",&grade);

if('a'

 grade=grade-32;  

switch(grade)

{ case A: printf("90-100\n");

  case B: printf("80-89\n");

  case C:printf("70-79\n");break;

  case D:printf("60-69\n");breakcase E:printf("<60\n");breakdefault:printf("error\n");

}

return 0;

}

case 'A' 字符要用引号 上边为什么是 float grade; scanf("%c",&grade); %c接收呢

img

#include<stdio.h>

int main(void)

{ char grade;

//printf("请输入成绩等级:");

scanf("%c",&grade);

if('a'<=grade&&grade<='z')
 grade=grade-32;  
switch(grade)

{ case 'A': printf("90-100\n");break;

  case 'B': printf("80-89\n");break;
 
  case 'C':printf("70-79\n");break;
 
  case 'D':printf("60-69\n");break;

  case 'E':printf("<60\n");break;
 
  default:printf("error\n");
}

return 0;

}