【问题标题】:Finding maximum and minimum values in each column of 2d array Java在二维数组Java的每一列中查找最大值和最小值
【发布时间】:2016-04-10 18:16:57
【问题描述】:

我试图在 Java 中的二维数组的每一列中找到最大值。该问题的英文版要求找到每个主题/模块的最高分。我已经实现了一个 for 循环来查找最大值,只是不确定如何隔离到每一列。

public static void main(String[] args) {

    double max=0;
    double mark;
    double id;
    double [][] studs = new double [2][3];

    Scanner fromKeyboard = new Scanner (System.in);

    for (int studentNo = 0; studentNo < 2; studentNo++) {
        System.out.println("enter student ID number for student " + (studentNo+1));
        id = fromKeyboard.nextDouble();
        studs[studentNo][0] = id;
        for (int moduleNo = 1; moduleNo < 3; moduleNo++) {
            System.out.println("Enter users mark for module " + moduleNo);
            mark = fromKeyboard.nextDouble();
            studs[studentNo][moduleNo] = mark;
        }
    }

    for (int col=1;col<3;col++){
        for (int row=0;row<2;row++){
            if(studs [row][col]>max) {
                max=studs[row][col];
            }
        }

        System.out.println(max);
    }
    }

【问题讨论】:

    标签: java arrays for-loop multidimensional-array


    【解决方案1】:

    您需要在每个新列的开头重置max。

    【讨论】:

    • 谢谢,这是你从零开始学习时错过的东西。
    【解决方案2】:

    我认为更好的方法是以不同的方式思考:为什么不将主题放在行中并将学生放在列中?然后你只需扫描每一行。

    【讨论】:

      猜你喜欢
      • 2016-03-19
      • 2019-03-31
      • 2015-04-06
      • 2015-02-01
      • 2017-03-16
      • 1970-01-01
      • 2020-05-25
      • 2018-09-14
      • 2016-03-16
      相关资源
      最近更新 更多