成绩分析 java版 蓝桥杯

题目描述 小蓝给学生们组织了一场考试,卷面总分为 100 分,每个学生的得分都是一个 0 到 100 的整数。 请计算这次考试的最高分、最低分和平均分。 输入描述 输入的第一行包含一个整数 n (1≤n≤104)n (1 ≤ n ≤ 10^4) n (1≤n≤10 4 ),表示考试人数。 接下来 nn n 行,每行包含一个 0 至 100 的整数,表示一个学生的得分。 输出描述 输出三行。 第一行包含一个整数,表示最高分。 第二行包含一个整数,表示最低分。 第三行包含一个实数,四舍五入保留正好两位小数,表示平均分。 输入输出样例 示例 输入

7
80
92
56
74
88
99
10

输出

99
10
71.29

代码实现

import java.util.Scanner;

//成绩分析(利用数组)
public class Main{
          
   
    public static void main(String[] args) {
          
   
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        int[] ints = new int[n];
        for (int i = 0; i < n; i++) {
          
   
            ints[i] = scanner.nextInt();
        }
        int min = ints[0], max = ints[0];
        double sum = 0;
        for (int i : ints) {
          
   
            sum += i;
            if (i > max) max = i;
            if (i < min) min = i;
        }
        System.out.println(max);
        System.out.println(min);
        System.out.println(String.format("%.2f", sum / n));
    }
}
import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;

//成绩分析(利用集合) 
public class Main{
          
   
    public static void main(String[] args) {
          
   
        Scanner scan = new Scanner(System.in);
        ArrayList<Integer> list = new ArrayList<>();
        int n = scan.nextInt();
        double sum = 0;
        for (int i = 0; i < n; i++) {
          
   
            list.add(scan.nextInt());
            sum = sum + list.get(i);
        }
        Collections.sort(list);
        System.out.println(Collections.max(list));
        System.out.println(Collections.min(list));
        System.out.println(String.format("%.2f", sum / n));
        scan.close();
    }
}
经验分享 程序员 微信小程序 职场和发展