ZCMU 4942: 计算两个矩阵的乘积

Time Limit: 1 Sec  Memory Limit: 32 MB
Submit: 8  Solved: 4
 

Description

计算两个矩阵的乘积,第一个是2*3矩阵,第二个是3*2矩阵,结果为一个2*2矩阵。

Input

输入包含多组数据,先输入一个2*3矩阵,再输入一个3*2矩阵。

Output

输出两个矩阵的乘积。

Sample Input

1 1 1 1 1 1 1 1 1 1 1 1

Sample Output

3 3 3 3

HINT

Source

数据结构高分笔记

题解:建立数组保存答案 三层循环

代码:

#include<stdio.h>
int a[2][3],b[3][2];
int main()
{
    int i,j,k;
    while(~scanf("%d%d%d",&a[0][0],&a[0][1],&a[0][2]))
    {
        int sum[2][2]={0};
        for(int i=1; i<2; i++)
            for(int j=0; j<3; j++)
                scanf("%d",&a[i][j]);
        for(int i=0; i<3; i++)
            for(int j=0; j<2; j++)
                scanf("%d",&b[i][j]);
        for(int i=0; i<2; i++)
        {
            for(int j=0; j<2; j++)
            {
                for(k=0; k<3; k++)
                {
                    sum[i][j]+=a[i][k]*b[k][j]; //重点
                }
            }
        }
        printf("%d %d\n",sum[0][0],sum[0][1]);
        printf("%d %d\n",sum[1][0],sum[1][1]);
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_42671353/article/details/82184182