为了账号安全,请及时绑定邮箱和手机立即绑定

将 2 个矩阵 4x1 和 1x4 相乘

将 2 个矩阵 4x1 和 1x4 相乘

绝地无双 2021-12-30 16:21:16
程序应该将 2 个矩阵 4x1 和 1x4 相乘,并将结果输出到控制台(矩阵 4X4)。但没有任何显示。有什么问题?public class Matrix {    public static void main(String[] args) {        int[][] matrixA = new int[4][1];        int[][] matrixB = new int[1][4];        int[][] matrixC = new int[4][4];        matrixA[0][0] = 1;        matrixA[1][0] = 2;        matrixA[2][0] = 3;        matrixA[3][0] = 4;        matrixB[0][0] = 4;        matrixB[0][1] = 3;        matrixB[0][2] = 2;        matrixB[0][3] = 1;        for (int i = 0; i < 4; i++) { // A rows            for (int j = 0; j < 4; j++) { // B columns                for (int k = 0; k < 1; k++) { // A columns                    matrixC[i][j] += matrixA[i][k] * matrixB[k][j];                    System.out.print(matrixC[i][j] + "   ");                }            }        }        int j = 0;        for (int i = 0; i < 4; i++) {            for (int k = 0; k < 1; k++)                System.out.print(matrixC[i][j] + "   ");            System.out.println();        }    } //end main} //end class
查看完整描述

2 回答

?
HUH函数

TA贡献1836条经验 获得超4个赞

您j在第二组for循环之前引入了一个变量。此外,即使它们是可选的,我也强烈建议始终包含大括号。并且k < 4。喜欢,


for (int i = 0; i < 4; i++) {

    for (int k = 0; k < 4; k++) {

        System.out.print(matrixC[i][k] + "   "); // not [i][j]

    }

    System.out.println();

}

或者只是使用Arrays.deepToString(Object[])像


System.out.println(Arrays.deepToString(matrixC));


查看完整回答
反对 回复 2021-12-30
?
暮色呼如

TA贡献1853条经验 获得超9个赞

希望这可以帮助:


public class Matrix {

    public static void main(String[] args) {

        int[][] matrixA = {{1}, {2}, {3}, {4}};

        int[][] matrixB = {{4, 3, 2, 1}};


        int[][] matrixC = new int[4][4];


        for (int i = 0; i < 4; i++) { // A rows

            for (int j = 0; j < 4; j++) { // B columns

                for (int k = 0; k < 1; k++) { // A columns

                    matrixC[i][j] += matrixA[i][k] * matrixB[k][j];

                    System.out.print(matrixC[i][j] + "   ");

                }

            }

            System.out.println();

        }

    }

}

输出:


4   3   2   1   

8   6   4   2   

12   9   6   3   

16   12   8   4   


查看完整回答
反对 回复 2021-12-30
  • 2 回答
  • 0 关注
  • 490 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信