题目:题目详情 - L1-048 矩阵A乘以B (15 分) (pintia.cn)
大意
思路
代码
#include<stdio.h>
#include<string.h>
int main()
{
int Ra,Ca,i,j,s,t;
scanf("%d %d",&Ra,&Ca);
int A[Ra][Ca];//给定一个数组
for(i=0;i<Ra;i++)
{
for(j=0;j<Ca;j++)
{
scanf("%d",&A[i][j]);
}
}
int Rb,Cb;
scanf("%d %d",&Rb,&Cb);
int B[Rb][Cb];
for(i=0;i<Rb;i++)
{
for(j=0;j<Cb;j++)
{
scanf("%d",&B[i][j]);
}
}
if(Ca!=Rb)
{
printf("Error: %d != %d",Ca,Rb);
}
else
{
int sum[Ra][Cb];
memset(sum,0,sizeof(sum));
for(i=0;i<Ra;i++)
{
for(j=0;j<Cb;j++)
{
for(t=0;t<Ca;t++)
{
sum[i][j]=sum[i][j]+A[i][t]*B[t][j];//
}
}
}
printf("%d %d\n",Ra,Cb);//
for(i=0;i<Ra;i++)
{
printf("%d",sum[i][0]);//
for(j=1;j<Cb;j++)
{
printf(" %d",sum[i][j]);
}
if(i!=Ra-1)
{
printf("\n");
}
}
}
return 0;
}