关于矩阵乘法的运算

//矩阵相乘

//矩阵a[m*n]乘以矩阵b[n*k],得到矩阵c[m*k]

//矩阵[m*k]为返回结果

void multiplyMatrix(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[u] = 0.0;
            for(l=0;l<n;l++) {
                c[u] = c[u]+a[i*n+l]*b[l*k+j];}
        }
    }
    return ;
}

//x*y=c 2*2的矩阵 应用举例

int l=2,n=2,m=2;

double c [2][2] = {0};

double x [2][2] = {1,2,3,4};

double y [2][2] = {5,6,7,8};

multiplyMatrix(&x[0][0],&y[0][0],l,m,n,&c[0][0]);

结果:c[2][2]= {19,22,43,50};

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值