读书人

C语言成绩转换有关问题本人新手帮

发布时间: 2012-10-19 16:53:36 作者: rapoo

C语言成绩转换问题,本人新手,帮下忙谢谢!!
描述 输入一个百分制的成绩M,将其转换成对应的等级,具体转换规则如下:
90~100为A;
80~89为B;
70~79为C;
60~69为D;
0~59为E;
输入第一行是一个整数N,表示测试数据的组数(N<10)
每组测试数据占一行,由一个整数M组成(0<=M<=100)。输出对于每组输入数据,输出一行。

我根据题目自己编了个:
#include <stdio.h>
int main (void)
{
double N,x;

scanf ("%lf",&N);

if (N < 10 && N == int (N) && N >= 0){
while (scanf ("%lf",&x)!=EOF){
switch (int(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;
default: printf ("E\n");break;
}
}
}
else
return 0;


return 0;
}

但不是很符合题意,我想问下“输入第一行是一个整数N,表示测试数据的组数(N<10)”这一行要怎么写代码,帮我修改下,谢谢大家了!!!

[解决办法]
用个 变量 控制循环次数 不就行了
[解决办法]
不就是再加一个for或者while循环码?
[解决办法]

C/C++ code
#include <stdio.h>int main (void){    int N, x;    scanf ("%d",&N);    while (N --)    {        scanf ("%d",&x);        switch (int(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;        default:             printf ("E\n");            break;        }    }    return 0;} 

读书人网 >C语言

热点推荐