用数组实现两个矩阵的相乘运算

来源:百度知道 编辑:UC知道 时间:2024/05/28 15:16:02
用数组实现两个矩阵的相乘运算
程序结构:
#include “stdio.h”
int r[6][6];
void mult(int a[6][6] , int b[6][6])
{ }
main()
{
int i,j;
int num1[6][6],num2[6][6];
printf(“请输入第一个矩阵的值:”,);
for(i=1;i<=6;i++)
for(j=1;j<=6;j++)
scanf(“%d”,&num1[i][j]);
printf(“请输入第二个矩阵的值:”,);
for(i=1;i<=6;i++)
for(j=1;j<=6;j++)
scanf(“%d”,&num2[i][j]);
mult(num1,num2);
printf(“\n两个矩阵相乘后的结果为:”);
for(i=1;i<=6;i++)
{for(j=1;j<=6;j++)
printf(“%4d”,r[i][j]);
printf(“\n”);
}
}

要求及提示:
要求完善函数mult( ),
现有A,B两个矩阵,要求用上述程序求出A与B相乘后的运行结果,

4 1 3 6 9 0 3 1 0 1 2 4
7 3 1 4 2 1 1 3 1 0 5 2
0 1 0 2 9 1 1 9 2 1 3 0
A= 4 1 0 2 6 0 B

#include "stdio.h"
int r[6][6];
void mult(int a[6][6] , int b[6][6])
{
int i,j;
int k;
int sum;
for (i = 0; i < 6; i++)
{

for (j = 0; j < 6; j++)
{
sum = 0;
for (k = 0; k < 6; k++)
{
sum += a[i][k]*b[k][j];
}
r[i][j] = sum;

}

}
}
main()
{
int i,j;
int num1[6][6],num2[6][6];

printf("请输入第一个矩阵的值:");
for(i=1;i<=6;i++)
for(j=1;j<=6;j++)
scanf("%d",&num1[i][j]);
printf("请输入第二个矩阵的值:");
for(i=1;i<=6;i++)
for(j=1;j<=6;j++)
scanf("%d",&num2[i][j]);
mult(num1,num2);

printf("\n两个矩阵相乘后的结果为:");
for(i=1;i<=6;i++)
{for(j=1;j<=6;j++)
printf("%4d",r[i][j]);
printf("\n&qu