题目
从键盘读入学生成绩,计算并输出最高分,最低分,平均分,并输出学生成绩等级,
满分100;成绩90-100等级为A80-89等级为B ;成绩60-79等级为C ; 0-59其余等级为'D;
解题代码:
import java.util.Scanner;
public class Grade {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int max=0,min=100,sum=0;//满分100,所以开始注意max必须为0,min必须为100;
double ave=0.0; //平均分有可能为浮点数
System.out.println("请输入有多少个学生:");
int student= sc.nextInt();
int []grade=new int[100];
for (int i = 0; i < student; i++) {
System.out.println("请输入第"+(i+1)+"个学生成绩:");
grade[i]= sc.nextInt();
if(grade[i]>max)//求最高分
{
max=grade[i]; //定义max=0,只要比它大就把分数赋给max 找出最大
}
if(grade[i]<min)//求最低分
{
min=grade[i];//定义min=0,只要比它小就把分数赋给min 找出最小
}
sum+=grade[i];
ave=sum*1.0/student;//注意乘1.0 整数与整数运算才能化为浮点数
if((grade[i]>=0)&&(grade[i]<=59)) //等级D
{
System.out.println("第"+(i+1)+"个学生等级为:D");
}
if((grade[i]>=60)&&(grade[i]<=79))//等级C
{
System.out.println("第"+(i+1)+"个学生等级为:C");
}
if((grade[i]>=80)&&(grade[i]<=89))//等级B
{
System.out.println("第"+(i+1)+"个学生等级为:B");
}
if((grade[i]>=90)&&(grade[i]<=100))//等级A
{
System.out.println("第"+(i+1)+"个学生等级为:A");
}
}
System.out.println("最高分:"+max);
System.out.println("最低分:"+min);
System.out.println("平均分:"+ave);
}
}