C语言给出一百分制成绩,要求输出成绩等级'A','B','C','D','E'.

90分以及90分以上为A,80-89分为B,70-79分为C,60-69分为D,60分以下为E.
代码哪里错了?
#include<stdio.h>
int main()
{
int a;
scanf("%d", &a);
if (a >= 90) a = 'A';
if (a >= 80 && a <= 89) a = 'B';
if (a >= 70 && a <= 79) a = 'C';
if (a >= 60 && a <= 69) a = 'D';
if (a < 60) a = 'E';
printf("%c", a);
return 0;
}

你好,你开始将a定义为int型,后面判断将,字符赋值给a,这样肯定不对,你可以定义个char b用于存放等级。
还有判断等级时需要先判断小于0,或者>100的部分。

追答

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-10-03
你要把第一个if外的所以if改为else if,然后输出等级时将a转为char类型追问

谢谢,

本回答被提问者采纳