题目:
小蓝给学生们组织了一场考试,卷面总分为100分,每个学生的得分都是一个0到100的整数。请计算这次考试的最高分、最低分和平均分。
输入描述:
输入的第一行包括一个整数n(1<=n<=10^4),表示考试人数。
接下来n行,每行包括一个0至100的整数,表示一个学生的得分。
输出描述:
输出三行。
第一行包括一个整数,表示最高分。
第二行包括一个整数,表示最低分。
第三行包括一个实数,四舍五入保留正好两位小数,表示平均分。
思路:是让我们输入n组数字,然后找出最大值、最小值和平均值。所以我们想到数组里有个函数为Arrays.sort可以帮我按照升序排序,这样就省掉了我们利用循环来比较大小。
import java.util.Scanner;
import java.util.Arrays;
public class Learn {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int num=scan.nextInt();
int[] arr=new int[num];//将输入的成绩都放在一个数组中
double sum=0 ;
for (int i=0;i<num;i++){
arr[i]=scan.nextInt();
sum+=arr[i];//利用sum来求和来算最后的平均值,放在输入中一起是为了节约运行成本和时间
}
Arrays.sort(arr);//利用数组中的函数sort来给数组排序
System.out.println(arr[num-1]);//因为数组已经排好序,所以就在数组中直接调用最大值和最小值
System.out.println(arr[0]);
System.out.printf(String.format("%.2f",sum/num));//String.format规范输出格式,根据四舍五入保留小数点后两位
scan.close();
}
}