作业帮 > 综合 > 作业

C语言求个程序!计算两个矩阵乘积

来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/07/31 16:53:20
C语言求个程序!计算两个矩阵乘积
Description
计算两个矩阵A和B的乘积.
Input
第一行三个正整数m、p和n,0
C语言求个程序!计算两个矩阵乘积
#include <stdio.h>
#include <stdlib.h>
int main()
{
    unsigned int m,p,n;
    int i,j,k,*a,*b,*c;
    scanf("%d %d %d",&m,&p,&n);
    a=malloc(m*p*sizeof(int));
    for(i=0;i<m;i++)
        for(j=0;j<p;j++)
            scanf("%d",&a[i*p+j]);
    b=malloc(p*n*sizeof(int));
    for(i=0;i<p;i++)
        for(j=0;j<n;j++)
            scanf("%d",&b[i*n+j]);
    c=calloc(m*n,sizeof(int));
    for(i=0;i<m;i++)
        for(j=0;j<n;j++)
            for(k=0;k<p;k++)
                c[i*n+j]+=a[i*p+k]*b[k*n+j];
    printf("\n");
    for(i=0;i<m;i++)
    {
        for(j=0;j<n;j++)
            printf("%d ",c[i*n+j]);
        printf("\n");
    }
    free(a);free(b);free(c);
    return 0;
}