成绩分析 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(); } }
上一篇:
IDEA上Java项目控制台中文乱码