哦,有点印象了。可我不明白的是c[i][j] 是空数组,感觉c[i][j]+=a[i][k]*b[k][j] <=>c[i][j]=c[][]+a[][]*b[][]; 那就直接c[][]=a[][]*b[][],可是运行后结果很不一样。

我是这样做的(老师说也要的):
main()
{int i,j,k;
int a[3][3]={1,2,3,4,5,6,7,8,9};
int c[3][3];
int b[3][3]={9,8,7,6,5,4,3,2,1};
for (i=0;i<3;i++)
{printf("\n");
for (j=0;j<3,j++) printf ("%2d",a[i][j]);
}
printf("\n");
for (j=0;j<3;j++)
{printf("\n");for(k=0;k<3;k++) printf("%2d",b[j][k]);}
printf("\n");
for (i=0;i<3;i++)
{for (k=0;k<3;k++)
{c[i][k]=0;
for(j=0;j<3;j++)
{c[i][k]+=a[i][j]*b[j][k];
}
}
}
for (i=0;i<3;i++)
{printf("\n");for (k=0;k<3;k++)
printf("%4d",c[i][k]);
}
printf("\n");
} 多谢大家的帮助!!