发布网友 发布时间:2024-11-29 08:17
共2个回答
热心网友 时间:2024-12-06 03:15
printf("请依次输入五行二列矩阵B中的元素:");
for(p=0;p<5;p++)
for(q=0;q<2;q++)//这里是q别弄错了
scanf("%d",&b[p][q]);
for(s=0;s<3;s++)
for(t=0;t<2;t++)
for(c[s][t]=0,x=0;x<5;x++)//这里把4改成5
c[s][t]=a[s][x]*b[x][t]+c[s][t];
printf("A*B=");
for(s=0;s<3;s++)//这里每次第一个循环一遍的时候输出一个换行
{
for(t=0;t<2;t++)
printf("%4d",c[s][t]);//格式控制是%4d不是%d4
printf("\n");
}
return 0;
}
热心网友 时间:2024-12-06 03:14
矩阵的乘法你都弄错了,应该是第一个矩阵的行数和第二个矩阵的列数相等时,矩阵相乘才有意义。
a[3][5]*b[5][2]没有意义
b[5][2]*a[3][5]才有意义,结果才是个5x5的矩阵,
矩阵相乘的结果一定是nxn的矩阵