给两个二维数组表示矩阵,a[n][m],b[x][y]
只有m=x,两个矩阵才能相乘,也就是a[n][m],b[m][p]
a数组的第i行和b数组第j列依次相乘的积相加为c数组的c[i][j]
代码
#include<stdio.h>
int a[2][2];
int b[2][3];
int c[2][3];
int main()
{
for(int i=1; i<=2; i++)
for(int j=1; j<=2; j++)
scanf("%d",&a[i][j]);
for(int i=1; i<=2; i++)
for(int j=1; j<=3; j++)
scanf("%d",&b[i][j]);
for(int i=1; i<=2; i++)
for(int j=1; j<=3; j++)
for(int k=1; k<=2; k++)
c[i][j]+=(a[i][k]*b[k][j]);
for(int i=1; i<=2; i++)
{
for(int j=1; j<=3; j++)
printf("%d ",c[i][j]);
printf("\n");
}
return 0;
}
/*
1 1
2 0
0 2 3
1 1 2
*/
1.不满足交换律(如果m!=x,就不能乘了)
2.满足结合律(例如:(AB)C和A(BC))