从键盘读入学生成绩,找出最高分, 并输出学生成绩等级(Java)


从键盘读入学生成绩,找出最高分, 并输出学生成绩等级

一、题目

从键盘读入学生成绩,找出最高分,并输出学生成绩等级。

成绩>=最高分-10 等级为’A’

成绩>=最高分-20 等级为’B’

成绩>=最高分-30 等级为’C’

其余等级为’D’

二、代码

import java.util.Scanner;

public class arrayDemo {
    public static void main(String[] args) {
        System.out.println("请输入学生个数:");
        Scanner StuNum=new Scanner(System.in);//得到一个学生的人数number
        int b=StuNum.nextInt();//转换成为int类型的number
        int[] score=new int[b];//将这个number作为数组的长度
       for (int i=0;i<score.length;i++){
           System.out.println("请输入第"+(i+1)+"个学生成绩:");
           Scanner StuSco=new Scanner(System.in);
           int c=StuSco.nextInt();
           score[i]=c;
       }//for循环将分数一个一个的赋给数组
        System.out.println("这是学生的成绩:");
       for (int x:score){
           System.out.print(x+" ");
       }//遍历一遍看有没有问题
        int temp=0;
       for (int i=1;i<score.length;i++){

           for (int j=0;j<score.length-1;j++){
               if (score[j]>score[j+1]){
                   temp=score[j];
                   score[j]=score[j+1];
                   score[j+1]=temp;
               }
           }
       }//这里是将数组排序,数组中最后一个元素就是最大的number
        System.out.println("\n这是排好序的学生成绩");
        for (int bs:score){
            System.out.print(bs+" ");
        }//将排序好的数组打印一遍,看有没有问题
        int m=score[b-1];//m是最高分
        System.out.println("\n成绩最高的分数是:"+m);
        char p;
        for (int s=0;s<score.length;s++){
            int r=m-score[s];//r是最高分和他的差值

            if (r<=10){
              p='A';
            }else if (r<=20){
                p='B';
            }else if (r<=30){
                p='C';
            }else {
                p='D';
            }
            System.out.println("学生"+(s+1)+"的成绩是"+score[s]+",他的评级是“"+p);
        }
    }
}

三、运行结果

四、总结

  这道题主要点在于如何找到MaxNumbr和如何给分数做评级,MaxNumber其实可以用代码中双重for(冒泡排序)中的内层for直接找到,题目并没有说明必须按照原有顺序输出,所以对原数组进行排序,排序号后最后一个元素就是MaxNumber。对分数进行评级则采用if-else的多重判断。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM