当前位置: 代码迷 >> 综合 >> 矩阵相乘-xdoj
  详细解决方案

矩阵相乘-xdoj

热度:73   发布时间:2023-12-06 09:24:11.0

矩阵相乘
输入2×3矩阵A和3×2矩阵B各元素值,计算矩阵A和矩阵B相乘的结果

输入说明:输入整形数组A和数组B,数组元素用空格分隔

输出说明:输出矩阵A*B的结果,矩阵元素之间用空格分隔,数组每行元素用换行分隔

输入样例:
1 2 3
4 5 6
1 2
3 4 
5 6

输出样例
22 28
49 64


/*矩阵相乘:

前提是第一个矩阵的行数等于第二个矩阵的列数,第一个矩阵的列数等于第二个矩阵的行数。

第一个矩阵第i行与第二个矩阵第j列的元素对应相乘,等于结果矩阵第i行第j列的数。*/


#include<stdio.h>
int main()
{int a[2][3],b[3][2],c[2][2]={0};int i,j,k;for(i=0;i<2;i++)for(j=0;j<3;j++)scanf("%d",&a[i][j]);for(i=0;i<3;i++)for(j=0;j<2;j++)scanf("%d",&b[i][j]);for(i=0;i<2;i++){for(j=0;j<2;j++){for(k=0;k<3;k++){c[i][j]=c[i][j]+a[i][k]*b[k][j];}}}for(i=0;i<2;i++){for(j=0;j<2;j++)printf("%d ",c[i][j]);printf("\n");}return 0; 
}