写了个矩阵乘法,出错了,求助呀
#include<stdio.h>#include<stdlib.h>
#define M 100
void main()
{
float A[M][M],B[M][M],C[M][M];
int i,j,k,m,s1,s2,n;
printf("请输入矩阵A的行列数m,s1\n");
scanf("%d%d",&m,&s1);
printf("请按行输入矩阵A的各个元素\n");
for(i=0;i<m;i++)
for(j=0;j<s1;j++)
scanf("%f",&A[i][j]);
printf("矩阵A:\n");
for(i=0;i<m;i++)
{
for(j=0;j<s1;j++)
printf("%10.2f",A[i][j]);
printf("\n");
}
printf("请输入矩阵A的行列数s2,n\n");
scanf("%d%d",&s2,&n);
printf("请按行输入矩阵B的各个元素\n");
for(i=0;i<s2;i++)
for(j=0;j<n;j++)
scanf("%f",&B[i][j]);
printf("矩阵B:\n");
for(i=0;i<s2;i++)
{
for(j=0;j<n;j++)
printf("%10.2f",B[i][j]);
printf("\n");
}
if(s1==s2)
{
{
for(i=0;i<m;i++)
for(j=0;j<n;j++)
{
C[i][j]=0;
for(k=0;k<s1;k++)
C[i][j]=C[i][j]+A[i][s1]*B[s1][j];
}
}
printf("A*B=\n");
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
printf("%10.2f",C[i][j]);
printf("\n");
}
}
else
printf("A和B不能相乘!\n");
system("pause");
}