显示最低和最高的2d阵列

0 java arrays

我试图显示最低和最高值.最高值是正确的,但最小值总是给我0你能帮我吗?

package openlink.domain;

import java.io.*;

public class table2 {
    public static void main(String[] args) {
        int table1[][] = new int[5][5];
        int table2[][] = new int[5][5];
        int table3[][] = new int[5][5];
        int i, j, k, l, b, c, g, p, num = 0, num1 = 0, small = 0, largest = 0;
        String input = " ";
        BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
        for (i = 0; i < 5; i++) {
            for (j = 0; j < 5; j++) {
                table1[i][j] = 0;
            }
        }
        for (k = 0; k < 5; k++) {
            for (l = 0; l < 5; l++) {
                table2[k][l] = 0;
            }
        }
        try {
            for (i = 0; i < 5; i++) {
                for (j = 0; j < 5; j++) {
                    System.out.print("Input table1[" + i + "][" + j + "]= ");
                    input = in.readLine();
                    num = Integer.parseInt(input);
                    table1[i][j] = num;
                }
            }
            for (k = 0; k < 5; k++) {
                for (l = 0; l < 5; l++) {
                    System.out.print("Input table2[" + k + "][" + l + "]= ");
                    input = in.readLine();
                    num1 = Integer.parseInt(input);
                    table2[k][l] = num1;
                }
            }
            for (b = 0; b < table3.length; b++) {
                for (c = 0; c < table3.length; c++) {

                    table3[b][c] = table2[b][c] + table1[b][c];
                }
            }
            System.out.println("table1");
            for (i = 0; i < 5; i++) {
                for (j = 0; j < 5; j++) {
                    System.out.print(table1[i][j] + "  ");
                }
                System.out.println();
            }
            System.out.println();
            System.out.println("table2");
            for (k = 0; k < 5; k++) {
                for (l = 0; l < 5; l++) {
                    System.out.print(table2[k][l] + "  ");
                }
                System.out.println();
            }
            System.out.println();
            System.out.println("table3");
            /* this is the code in how to locate the lowest and the highest */
            for (b = 0; b < 5; b++) {
                for (c = 0; c < 5; c++) {
                    System.out.print(table3[b][c] + "  ");
                }
                System.out.println();
            }
            System.out.println();
            for (b = 0; b < table1.length; b++) {
                for (c = 0; c < table2.length; c++) {
                    if (small > table3[b][c]) {
                        small = table3[b][c];
                    } else if (table3[b][c] > largest) {
                        largest = table3[b][c];
                    }

                }
            }
            System.out.println("the highest value in table3: " + largest);
            System.out.println("the lowest value in table3: " + small);
        } catch (IOException e) {
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

请帮帮我

Jon*_*eet 6

好吧,你已经初始化small为0开始...所以如果有负数,你只会更新它.同样,你已经初始化large为0,所以如果有数,你只会更新它.输入所有负数,你会发现这small是正确的,large是错误的.

初始化smalltable3[0][0]开始时更好,所以你知道它们都是数组中的有效值.