在竞赛中,有10位评委为参赛的选手打分,分数分别为:5,4,6,8,9,0,1,2,7,3
求选手的最后得分(去掉一个最高分和一个最低分后其余8位评委打分的平均值)
public class ArrayTest04 {
public static void main (String[] args) {
int[] arr = {5,4,6,8,9,0,1,2,7,3};
int sum = arr[0];
int max = arr[0];
int min = arr[0];
for (int i = 1; i < arr.length ;i++ ) {
sum+=arr[i];
if (max < arr[i]) {
max = arr[i];
}
if (min > arr[i]) {
min = arr[i];
}
}
double avg = (sum - max - min) * 1.0 / (arr.length - 2);
System.out.println("选手的最后得分 :" + avg + "分");
}
}
这个做的时候,得先求出数组中的最大值,最小值,然后求平均数的时候,将数组的和减去最大最小值即可,然后再除以数组长度减去2。即可得到平均值。
我当时做的时候,是先将最大最小值求出来,然后将其的值改为0,然后再求平均值,这样做麻烦了一点。