import javax.swing.*;
import java.lang.System;
import java.util.Scanner;
public class grade implements Comparator{
Scanner s;
public grade(){
s=new Scanner(System.in);
inputScore();
}
public void inputScore()
{int i,a;
int per[],average[];
per=new int[]{0,0,0,0,0};
average=new int[]{0,0,0,0,0};
for(i=0;i<10;i++)
{a=s.nextInt();
String b=judgeScore(a);
if(b.equals("A")){per[0]++;average[0]+=a;}
else if(b.equals("B")){per[1]++;average[1]+=a;}
else if(b.equals("C")){per[2]++;average[2]+=a;}
else if(b.equals("D")){per[3]++;average[3]+=a;}
else if(b.equals("E")){per[4]++;average[4]+=a;}
}
average[0]/=per[0];per[0]/=10.0;per[0]*=100;
average[1]/=per[1];per[1]/=10.0;per[1]*=100;
average[2]/=per[2];per[2]/=10.0;per[2]*=100;
average[3]/=per[3];per[3]/=10.0;per[3]*=100;
average[4]/=per[4];per[4]/=10.0;per[4]*=100;
String output;
output="等级A的百分比:"+per[0]+"%,平均分:"+average[0];
output+="\n"+"等级B的百分比:"+per[1]+"%,平均分:"+average[1];
output+="\n"+"等级C的百分比:"+per[2]+"%,平均分:"+average[2];
output+="\n"+"等级D的百分比:"+per[3]+"%,平均分:"+average[3];
output+="\n"+"等级E的百分比:"+per[4]+"%,平均分:"+average[4];
JOptionPane.showMessageDialog(null,output,"消息",JOptionPane.INFORMATION_MESSAGE);
}
public String judgeScore(int x)
{
switch(x)
{case 100:
case 90:return "A";break;
case 80:return "B";break;
case 70:return "C";break;
case 60:return "D";break;
default:return "E";}
}
public static void main(String args[])
{grade lhx=new grade();
System.exit(0);
}
}
功能:主要是实现一个窗口显示成绩等级的统计结果
错误提醒:找不到符号
我眼都看花了,还没找到,望各位帮帮忙~~
------解决方案--------------------
你这错误也太多了一些。
1.找不到符号 -- import import java.util.Comparator;
2.类名要大写
3.要override Comparator中的compare函数
4.switch的case语句中,如果用了return xxx;,则后面不要跟break;
------解决方案--------------------
我将楼主贴出来的代码完整的放到eclipse中看了一下,两个地方报错
1.楼主没有import java.util.Comparator;
2.switch语句中,case里已经return了,要去掉break语句。
然后我运行,输入十个分数,出现如下界面: