|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include<stdio.h>
int main()
{
int M,P,N,i,j,k;
int str1[100][100],str2[100][100],str3[100][100];
printf("请输入第一个矩阵的尺寸(M*P):");
scanf("%d*%d",&M,&P);
printf("\n");
printf("请输入另一个矩阵的尺寸(P*N):");
scanf("%d*%d",&P,&N);
printf("请输入第一个矩阵的值:\n");
for(i=0;i<M;i++)
{
for(j=0;j<P;j++)
scanf("%d",&str1[i][j]);
}
printf("请输入第二个矩阵的值:\n");
for(i=0;i<P;i++)
{
for(j=0;j<N;j++)
scanf("%d",&str2[i][j]);
}
printf("计算结果如下:\n");
for(i=0;i<M;i++)
{
printf("\n");
printf("|");//在每一行开头加上|
for(j=0;j<P;j++)
{
printf("%d ",str1[i][j]);
if(j==P-1)printf("|"); //在每一行的结尾加上|
if(i==M/2)printf("*");//在两个矩阵中间加上*
}
for(i=0;i<P;i++)
{
printf("|");
for(j=0;j<N;j++)
{
printf("%d ",str2[i][j]);
if(j==N-1)printf("|");
if(i==P/2)printf("=");
}
for(i=0;i<M;i++)
{
for(j=0;j<N;j++)
{
for(k=0;k<P;k++)
str3[i][j]+=str1[i][k]*str2[k][i];
}
}
for(i=0;i<P;i++)
{
printf("|");
for(j=0;j<N;j++)
{
printf("%d ",str3[i][j]);
if(j==N-1)printf("|");
}
return 0;
}
}
}
}
输出结果为 |1 2 3 4 5| |8 7 6 5 4 3 2 1| |33 33 33 33 33 33 33 33|
有大佬求解一下吗? |
|