下面是一个Java中的数组综合案例,实现了对学生成绩的统计和分析。
import java.util.Scanner; public class ScoreAnalysis { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("请输入学生人数:"); int count = scanner.nextInt(); int[] scores = new int[count]; int sum = 0; for (int i = 0; i < count; i++) { System.out.print("请输入第" + (i + 1) + "个学生的成绩:"); int score = scanner.nextInt(); scores[i] = score; sum += score; } double average = sum * 1.0 / count; System.out.println("总分:" + sum); System.out.println("平均分:" + average); System.out.println("最高分:" + findMax(scores)); System.out.println("最低分:" + findMin(scores)); System.out.println("及格人数:" + countPass(scores)); } public static int findMax(int[] scores) { int max = scores[0]; for (int i = 1; i < scores.length; i++) { if (scores[i] > max) { max = scores[i]; } } return max; } public static int findMin(int[] scores) { int min = scores[0]; for (int i = 1; i < scores.length; i++) { if (scores[i] < min) { min = scores[i]; } } return min; } public static int countPass(int[] scores) { int count = 0; for (int i = 0; i < scores.length; i++) { if (scores[i] >= 60) { count++; } } return count; } }
该程序首先从用户输入中获取学生人数,然后创建一个具有指定大小的整数数组,用于存储学生的成绩。接下来,程序依次获取每个学生的成绩,并将其存储在数组中。然后,程序使用一些方法来分析这些成绩,包括计算总分、平均分、最高分、最低分以及及格人数。
其中,findMax 方法用于查找数组中的最大值,findMin 方法用于查找数组中的最小值,countPass 方法用于计算及格的学生人数。
这个案例展示了如何在Java中使用数组和方法来实现复杂的计算和分析任务。通过定义适当的方法,可以使代码更加模块化和可维护,提高代码的重用性和可读性。