试题 F: 成绩分析(难度:★)15分
【问题描述】
小蓝给学生们组织了一场考试,卷面总分为 100 分,每个学生的得分都是 一个 0 到 100 的整数。请计算这次考试的最高分、最低分和平均分。
【输入格式】
输入的第一行包含一个整数 n,表示考试人数。 接下来 n 行,每行包含一个 0 至100 的整数,表示一个学生的得分。
【输出格式】
输出三行。
第一行包含一个整数,表示最高分。
第二行包含一个整数,表示最低分。
第三行包含一个实数,四舍五入保留正好两位小数,表示平均分。
【样例输入】
7
80
92
56
74
88
99
10
【样例输出】
99
10
71.29
【评测用例规模与约定】
对于 50% 的评测用例,1≤n≤100。
对于所有评测用例,1≤n≤10000。
思路:
累计,排序,求和,输出最大值,最小值,以及求和/数据个数。值得注意的是平均数包里两位小数。用printf("%.2f",sum/n)
代码:
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner (System.in);
int n = sc.nextInt();
double sum = 0;
int a[] = new int[n];
for(int i = 0;i<n;i++){
a[i] = sc.nextInt();
sum+=a[i];
}
Arrays.sort(a);
System.out.println(a[n-1]);
System.out.println(a[0]);
System.out.printf("%.2f",sum/n);
}
}