首先你需要明白矩阵的乘法的计算规则才能解决这个问题:(不懂的可以点击下方视频链接学习)
矩阵乘法的动画演示_哔哩哔哩_bilibili(注意该视频中字幕组把column和row搞反了,正确应该是,只有在第一个矩阵的列数(column)和第二个矩阵的行数(row)行列式有意义)
解决思路:定义三个数组,前两个用来存放从键盘接收到的矩阵,第三个个用来存放计算结果;计算两矩阵乘积并存入第三个数组;输出第三个数组。(如果一会说数组一会却说矩阵让你觉得很蒙的话,就把数组理解为矩阵在计算机里的表示方法,通过输出数组时的换行操作就可以使它起来像一个矩阵了)
具体程序如下:
#include#define N 3 //宏定义,可根据需要更改 #define M 4 int main(void){ int i,j,k,sum; int a[N][M],b[M][N],c[N][N]; //定义三个数组,第三个数组用于存放计算结果 //输入第一个矩阵 printf("请输入一个%d×%d的数列A:n",N,M); for(i=0;i 我们来运行程序并输入一个两个可以相乘的矩阵,结果截图如下:(当然结果是正确的)
*在顶部宏定义可根据实际需要更改便可求不同行列数的矩阵乘积
(如果本文或者程序中出现了错误和不足,希望可以私信我)



