Java二维数组实战:学生成绩管理系统

本文将带你学习如何使用Java二维数组构建一个简单的学生成绩管理系统。我们将涵盖三种不同的二维数组初始化方法,并提供详细的代码示例,帮助你快速掌握Java数组操作。

需求分析

假设我们需要存储若干名学生的成绩信息,每位学生选课门数不同。我们需要设计一个Java程序,将所有学生的成绩存储在一个二维数组中,并能够方便地输出和处理这些数据。

代码实现

以下是使用Java实现学生成绩管理系统的源代码,其中包含三种不同的二维数组初始化方法:javapublic class StudentGrades { public static void main(String[] args) { // 1. 使用初始化列表为数组赋值 double[][] grades1 = { {89.5, 92.0, 78.3}, {76.8, 81.2}, {95.0, 88.7, 91.4, 84.6} }; displayGrades('成绩数组 1:', grades1);

    // 2. 使用new关键字创建数组,并在程序中为数组元素赋值        double[][] grades2 = new double[3][];        grades2[0] = new double[]{89.5, 92.0, 78.3};        grades2[1] = new double[]{76.8, 81.2};        grades2[2] = new double[]{95.0, 88.7, 91.4, 84.6};        displayGrades('成绩数组 2:', grades2);

    // 3. 使用new关键字创建数组,并动态输入每行数据个数和元素值        int numStudents = 3;        int[] numCourses = {3, 2, 4};        double[][] grades3 = createGrades('成绩数组 3:', numStudents, numCourses);        displayGrades('成绩数组 3:', grades3);    }

// 输出二维数组的内容    public static void displayGrades(String message, double[][] grades) {        System.out.println(message);        for (int i = 0; i < grades.length; i++) {            for (int j = 0; j < grades[i].length; j++) {                System.out.print(String.format('%.1f ', grades[i][j]));            }            System.out.println();        }        System.out.println();    }

// 动态创建二维数组,并赋予随机成绩值    public static double[][] createGrades(String message, int rows, int[] cols) {        System.out.println(message + ' (随机生成)');        double[][] grades = new double[rows][];        for (int i = 0; i < rows; i++) {            grades[i] = new double[cols[i]];            for (int j = 0; j < cols[i]; j++) {                grades[i][j] = Math.round((Math.random() * 100) * 10) / 10.0;            }        }        return grades;    }}

代码解析

  1. 方法一:使用初始化列表 - 最简洁直观的初始化方式。 - 在大括号内直接列出所有元素值,每个学生成绩用一个一维数组表示。2. 方法二:使用new关键字和分别赋值 - 先创建指定行数的二维数组,每行长度可以不同。 - 再分别为每一行创建数组并赋值。3. 方法三:动态创建数组并输入数据 - 使用createGrades函数动态创建数组。 - 函数接收学生人数和每位学生选课数作为参数。 - 使用随机数生成成绩数据,更贴近实际情况。

总结

本文介绍了使用Java二维数组存储和处理学生成绩信息的方法,并提供了三种不同的数组初始化方式。你可以根据实际需求选择合适的方法,并在此基础上扩展功能,例如计算平均成绩、排名等。

Java二维数组实战:学生成绩管理系统

原文地址: https://www.cveoy.top/t/topic/UNm 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录