0
点赞
收藏
分享

微信扫一扫

学习-Java数组之二维数值数组之多科成绩统计

九点韶留学 2022-01-22 阅读 98
java

任务描述

本关任务:统计如下图 1 中每个人的成绩总分。

相关知识

在之前的学习中,我们使用一维数组来存储某班级的数学成绩,如果我们还需存储其他科目的成绩(如下图 1 所示),就需要使用到二维数组了。

图1

二维数值数组的创建

二维数组定义:二维数组是指以一维数组作为元素的数组。其中存储数值的二维数组叫做二维数值数组。

二维数组创建语法:

 
  1. // m表示二维数组有多少个数组(行),n表示每个一维数组的元素个数(列)
  2. 数据类型[][] 变量名=new 数据类型[m][n];

二维数值数组创建示例:

 
  1. int[][] arr=new int[6][3]; // 创建一个用于存储图1成绩的二维数值数组。

二维数组初始化

数组初始化分为两种:动态初始化和静态初始化。 动态初始化:创建数组时,指定数组长度,但不指定数组存储的具体值。

示例:

 
  1. int[][] arr=new int[6][3]; // 创建一个用于存储图1成绩的二维数值数组。

静态初始化:创建数组时,指定数组存储的具体值。 示例:

 
  1. int[][] arr={{90,88,87},{89,90,77},{66,78,60}}; // 方式一,注意只能使用{}
  2. int[][] arr=new int[][]{{90,88,87},{89,90,77},{66,78,60}}; // 方式二

二维数值数组元素的引用

我们可以使用数组名[x][y]的方式来访问数组,其中数组的索引 x 和 y 都从 0 开始。 示例:

 
  1. public static void main(String[] args) {
  2. int[][] ints = new int[][]{{2,3},{4,5,6}};
  3. System.out.println(ints[0][1]); // ints[0][1] 表示二维数组的第一行第二列
  4. }

执行结果: 3

我们可以使用两个 for 循环遍历二维数组的每个值,其中第一个 for 循环遍历行,第二 个 for 循环遍历每一行的各列。

示例如下:

 
  1. public static void main(String[] args) {
  2. int[][] arr = new int[][]{{2,3},{4,5,6}};
  3. for(int x=0;x<arr.length;x++){ // 遍历行
  4. for(int y=0;y<arr[x].length;y++){ // 遍历列
  5. System.out.print(arr[x][y]+" ");
  6. }
  7. System.out.println();
  8. }
  9. }

输出结果:

 
  1. 2 3
  2. 4 5 6
/*
* 任务:统计每人的总分。
* 输出样式:x号学生的总分:y
*
* */

public class PassWord {
    public static void main(String[] args) {
        // 创建二维数组存储所有人的成绩
        int[][] arr = new int[][]{{90,88,87},{89,90,77},{66,78,60},{77,90,90},{89,78,67},{78,87,88}};
       
	   // 请在 Begin-End 间编写代码
        /********** Begin **********/
	   // 第一步:对每个人的各科成绩求和
        for (int i = 0;i < arr.length;i ++){//遍历行
            int sum = 0;
            for (int j = 0;j < arr[i].length;j ++){//遍历列
                sum  += arr[i][j];
            }  
       // 第二步:输出每个人的总分数 
          System.out.println((i + 1) + "号学生的总分:" + sum);
        }
        /********** End **********/

    }
}

 

举报

相关推荐

0 条评论