c语言题目 求解答

题目2.给出一个百分制成绩,要求输出成绩等级A、B、C、D、E。90分以上为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。要求:用键盘输入百分... 题目
2.给出一个百分制成绩,要求输出成绩等级A、B、C、D、E。90分以上为A,80~89分为B,70~79分为C,60~69分为D,60分以下为E。要求:用键盘输入百分制成绩,并判断输入数据的合理性,对于不合理的数据给出错误信息。用switch语句编写该程序。
#include<stdio.h>
main()
{int x;
scanf("%d",&x);
switch(x/10)
{case 10:
case 9:printf("A\n");break;
case 8:printf("B\n");break;
case 7:printf("C\n");break;
case 6:printf("D\n");break;
case 5:
case 4:
case 3:
case 2:
case 1:
case 0:printf("E\n");
default:printf("ERROR\n");
}
}
如上 这个程序是没有错误可以运行的 但是如果输入101-109的数还是会输出A 怎样才能在不启用if 的情况下 将这一错误改正
展开
 我来答
b94665
2015-04-12 · TA获得超过3844个赞
知道小有建树答主
回答量:1032
采纳率:83%
帮助的人:248万
展开全部
既然是百分制,101-109显然不合理,而题目“判断输入数据的合理性,对于不合理的数据给出错误信息”显然不是说在switch--case里面输出错误信息,而是在输入数据后及时判断并输出。所以,还是要判断的。
追问
意思是 我必须在是with语句前加if 将这个过滤掉吗
在第四行加if(x100) printf("ERROR\n");
else 在switch吗
追答
是的
anonymousuns
2015-04-12 · TA获得超过1222个赞
知道小有建树答主
回答量:468
采纳率:0%
帮助的人:165万
展开全部
附加条件x=<100即可
追问
我应该怎么样把这个条件加进去呢 我不想启用if语句
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式