C语言成绩转换的一道题

输入一个百分制的成绩t,将其转换成对应的等级,具体转换规则如下:90~100为A;80~89为B;70~79为C;60~69为D;0~59为E;不知道错在哪了输出来为什么... 输入一个百分制的成绩t,将其转换成对应的等级,具体转换规则如下:
90~100为A;
80~89为B;
70~79为C;
60~69为D;
0~59为E;
不知道错在哪了 输出来为什么都是2
#include<stdio.h>
int main()
{
int t,A,B,C,D,E;
scanf("%d",&t);
while(1)
{

if(90<t<100)
{
printf("%d\n",A);
}
else if(80<t<89)
{
printf("%d\n",B);
}
else if(70<t<79)
{
printf("%d\n",C);
}
else if(60<t<69)
{
printf("%d\n",D);
}
else if(0<t<59)
{
printf("%d\n",E);
}
else if(t<0&&t>100)
{
printf("Score is error!");
}
}
return 0;
}
展开
 我来答
正青春梦飞扬

2017-08-09 · 知道合伙人互联网行家
正青春梦飞扬
知道合伙人互联网行家
采纳数:6837 获赞数:306021
对SEO有这独特见解 工作努力积极、团结同事 连续2个月个人工作完成优秀 客户0投诉 评委最佳班组经理

向TA提问 私信TA
展开全部
关键是如何读取文件中的数据,每次读取一行用fgets()函数,碰到换行或EOF终止;然后对该行进行字符串替换,替换函数要注意能进行多次查找,如:int Index(char *str,char *sub,int start),从start开始查找子串sub在主串str中的位置并返回,替换,然后再继续从替换后的位置开始查找,直到该行查找完毕,先保存到一个临时文件,再读取下一行。
miniappSgluvqbRQlLRW
2015-10-17 · TA获得超过2143个赞
知道小有建树答主
回答量:824
采纳率:50%
帮助的人:435万
展开全部
这是我修改后的代码:
#include<stdio.h>
int main()
{
char A='A',B='B',C='C',D='D',E='E'; //这个你该定义成字符型的
while(1)
{
int t;
scanf("%d",&t);
if(90<=t&&t<=100) //这个你得写法错了,还少了=号
{
printf("%c\n",A);
}
else if(80<=t&&t<=89)
{
printf("%c\n",B);
}
else if(70<=t&&t<=79)
{
printf("%c\n",C);
}
else if(60<=t&&t<=69)
{
printf("%c\n",D);
}
else if(0<=t&&t<=59)
{
printf("%c\n",E);
}
else if(t<0||t>100)
{
printf("Score is error!\n"); //这个多一个换行'\n'格式会好看些
}
}
return 0;
}
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
爱答题的刘老师
2017-08-10 · TA获得超过2761个赞
知道小有建树答主
回答量:394
采纳率:66%
帮助的人:131万
展开全部
这是我修改后的代码:
#include<stdio.h>
int main()
{
char A='A',B='B',C='C',D='D',E='E'; //这个你该定义成字符型的
while(1)
{
int t;
scanf("%d",&t);
if(90<=t&&t<=100) //这个你得写法错了,还少了=号
{
printf("%c\n",A);
}
else if(80<=t&&t<=89)
{
printf("%c\n",B);
}
else if(70<=t&&t<=79)
{
printf("%c\n",C);
}
else if(60<=t&&t<=69)
{
printf("%c\n",D);
}
else if(0<=t&&t<=59)
{
printf("%c\n",E);
}
else if(t<0||t>100)
{
printf("Score is error!\n"); //这个多一个换行'\n'格式会好看些
}
}
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
推荐于2017-08-10
展开全部
j仅供参考: #include <math.h>
#include <stdio.h>

int main(void)
{
int r;

while (scanf("%d", &r) != EOF)
{
if (r < 0)
puts("Score is error!");
else if (r < 60)
puts("E");
else if (r < 70)
puts("D");
else if (r < 80)
puts("C");
else if (r < 90)
puts("B");
else if (r < 101)
puts("A");
else
puts("Score is error!");
}

return 0;
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帐号已注销
2017-08-10 · TA获得超过192个赞
知道小有建树答主
回答量:170
采纳率:66%
帮助的人:47.7万
展开全部
用 excel 函数 countif 做,这种很简单
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式