需求:有6位评委打分,分数范围[0,100],去掉一个最高分和最低分之后,剩下4个评委的平均分就是最终得分
import java.util.Scanner;public class 评委打分 {public static void main(String[] args) {int[] arr = new int[6];//动态初始化定义新数组Scanner sc = new Scanner(System.in);for (int i = 0; i < 6;) {System.out.println("请输入第" + (i + 1) + "位评委的打分");int score = sc.nextInt();if (score >= 0 && score <= 100) {arr[i] = score;i++;//把for循环里的i++放到这里来,目的是当输入错误数据时,防止i自增,只有数据正确,i才能自增}else{System.out.println("请输入正确的数据:");}}//求最高分,也就是求数组中的最大值int max=arr[0];for (int i = 1; i < arr.length; i++) {if (arr[i]>max){max=arr[i];}}System.out.println("去掉一个最高分:"+max);//求最低分,也就是求数组中的最小值int min=arr[0];for (int i = 1; i < arr.length; i++) {if (arr[i]<min){min=arr[i];}}System.out.println("去掉一个最低分:"+min);//定义sum和result,用来记录总成绩和最终成绩,此时得把最高分和最低分减去int sum=0,result=0;for (int i = 0; i < 6; i++) {sum=sum+arr[i];}sum=sum-max-min;result=sum/4;System.out.println("最终成绩为:"+result);}
}