描述 输入一个百分制的成绩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; }