矩阵乘法运算,定义数组时的问题……
結果有問題,感覺是數組定義錯了,請問應該如何修正?
程序代码:#include<stdio.h>
int main(void)
{
int a[100][100]={0}, b[100][100]={0}, c[100][100]={0};
int i, j, t, m1, m2, n1, n2;
printf("請自定義第一個矩陣階數:\n");
scanf("%d%d",&m1,&n1);
printf("請自定義第二個矩陣階數:\n");
scanf("%d%d",&m2,&n2);
if(n1!=m2)
{
system("pause");
printf("無法求矩陣之積!\n");
return(1);
}
printf("輸入第一個矩陣:\n");
for(i=0;i<m1;i++)
{
for(j=0;j<n1;j++)
{
scanf("%d",&a[i][j]);
}
}
printf("輸入第二個矩陣:\n");
for(i=0;i<m2;i++)
{
for(j=0;j<n2;j++)
{
scanf("%d",&b[i][j]);
}
}
for(i=0;i<m1;i++)
{
for(j=0;j<n2;j++)
{
for(t=0;t<n1;t++)
{
c[i][j]+=a[i][t]*b[t][j];
}
}
}
printf("矩陣之積:\n");
for(i=0;i<m1;i++)
{
for(j=0;j<n2;j++)
{
printf("%d ",&c[i][j]);
}
}
return(0);
}







