只有当矩阵A的列数与矩阵B的行数相等时A×B才有意义。一个m×n的矩阵a(m,n)左乘一个n×p的矩阵b(n,p),会得到一个m×p的矩阵c(m,p)。
1.一个两行三列的矩阵和一个三行两列的矩阵乘法
#include<iostream>#define M 2 //定义A矩阵的行
#define N 3 //定义A矩阵的列 B矩阵的行
#define P 2 //定义B矩阵的列
using namespace std;
int i,j,k;
int main()
{int A[M][N]={2,3,4,5,6,7},B[N][P]={2,3,4,5,6,7},C[M][P]={0};
for(i=0;i<M;i++) //C矩阵的行由A矩阵的行M决定
for(j=0;j<P;j++) //C矩阵的列由B矩阵的列P决定
{
for(int k=0;k<N;k++) //矩阵A和矩阵B对应项相乘
C[i][j]+=A[i][k]*B[k][j];
cout<<C[i][j]<<endl;
}
return 0;
}