对于给定的m X n矩阵A和n X k矩阵B,得到矩阵C(m X k)其乘积的矩阵可以用以下代码表示:
void MatrixMul(double *A,double *B,int m,int n,int k,double *C)
{
int i,j,l,u;
for(i=0;i<m;i++)
{
for(j=0;j<k;j++)
{
u=i*k+j;//矩阵C的位置
C[u]=0.0;//初始值
for(l=0;l<n;l++)
{
C[u]+=A[i*n+l]*B[l*k+j];//相乘累加
}
}
}
}
中间元素位置需要自己去尝试着计算,不容易看出,多动动手去验证验证吧