java实现从键盘上输入学生成绩,求总分、平均分、最高分、最低分,并升序排列、降序排列

时间:2024-05-21 09:24:59
  • 用数组存储成绩

    1、录入,求总分、平均分
    2、求最高分、最低分 —打擂台,胜了,站擂台
    3、排序(升序、降序) —Arrays.sort(arr)方法升序

package com.array.test;

import java.util.Arrays;
import java.util.Scanner;

//从键盘上输入学生成绩,求总分、平均分、最高分、最低分,并升序排列、降序排列
public class ArrayScore {
    public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入学生人数");
        int num=sc.nextInt();   //输入学生人数
        int[] score=new int[num];     //创建数组,存放学生成绩

        /*1、录入,求总分、平均分*/
        int sum=0;
        for(int i=0;i<score.length;i++){
            System.out.println("请输入第"+(i+1)+"个学生的成绩");
            score[i]=sc.nextInt();          //录入成绩
            sum+=score[i];                  //累加到sum
        }
        System.out.println("总分为:"+sum);
        double avg=sum/num;
        System.out.println("平均分为:"+avg);

        /*2、求最高分、最低分*/
        int max=score[0];   //对max初始化
        int min=score[0];   //对min初始化
        for(int i=0;i<score.length;i++){
            if(score[i]>max){   //打擂台,胜了,站上擂台
                max=score[i]; 
            }
            if(score[i]<min){
                min=score[i];
            }
        }
        System.out.println("最高分为:"+max);
        System.out.println("最低分为:"+min);


        /*3、排序(升序、降序)*/
        System.out.println("输出所有学生成绩:");
        for(int i=0;i<score.length;i++){  //直接输出
            System.out.print(score[i]+" ");
        }
        System.out.println();

        Arrays.sort(score);         //升序排列
        System.out.println("升序排列结果为:");
        for(int i=0;i<score.length;i++)
            System.out.print(score[i]+" ");
        System.out.println();

        System.out.println("降序排列结果为:");    //降序排列
        for(int i=score.length-1;i>=0;i--){
            System.out.print(score[i]+" ");
        }
    }

}

结果:
java实现从键盘上输入学生成绩,求总分、平均分、最高分、最低分,并升序排列、降序排列