版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/H_lukong/article/details/82532819
描述
我们知道,高中会考是按等级来的。
90~100为A;
80~89为B;
70~79为C;
60~69为D;
0~59为E。
编写一个程序,对输入的一个百分制的成绩t,将其转换成对应的等级。
输入
输入数据有多组,每组占一行,由一个整数组成。
输出
对于每组输入数据,输出一行。如果输入数据不在0~100范围内,请输出一行:“Score is error!”。
样例输入
56
67
100
123
扫描二维码关注公众号,回复:
3091067 查看本文章
样例输出
E
D
A
Score is error!
解答:
import java.io.*;
import java.util.*;
public class Main{
public static void main(String [] args)
{
Scanner in=new Scanner(System.in);
while(in.hasNext())
{
int score=in.nextInt();
if(score>=0&&score<=59)
{
System.out.println("E");
}
else if(score>59&&score<=100)
{
switch(score/10)
{
case 6:System.out.println("D");
break;
case 7:System.out.println("C");
break;
case 8:System.out.println("B");
break;
case 9:System.out.println("A");
break;
case 10:System.out.println("A");
break;
}
}
else
{
System.out.println("Score is error!");
}
}
}
}
其中,hasNext()函数,作用是判断是否还有下一个元素,以CTRL+Z结束。
刚开始:根据题目要求的输入多组数据,我是加入一个for循环让i<4,提交后总是出现答案错误;后面想到,java的以EOF结束是使用hasNext()函数,得到正解。
C,C++语言类似。详情见:java输入时以EOF做结束 。