问题描述
输入2×3矩阵A和3×2矩阵B各元素值,计算2×2矩阵C并输出其结果,矩阵相乘公式如下:
输入说明
输入整形数据,如矩阵元素A={{1,2,3},{4,5,6}},B={{1,2},{3,4},{5,6}}。
输出说明
格式输出:输出矩阵A、B和A*B的结果,矩阵形式,分行分列输出,矩阵之间空一行。
输入样例
1 2 3 4 5 6
1 2 3 4 5 6
输出样例
1 2 3
4 5 6
1 2
3 4
5 6
22 28
49 64
提示信息
采用三重循环结构实现计算过程,数据输出格式%5d。
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int a[2][3];
int b[3][2];
for(int i=0;i<2;i++)
for(int j=0;j<3;j++)
cin>>a[i][j];
for(int i=0;i<3;i++)
for(int j=0;j<2;j++)
cin>>b[i][j];
int c[2][2]={0};
for(int k=0;k<2;k++)
{
for(int i=0;i<2;i++)
{
for(int j=0;j<3;j++)
c[k][i]+=a[k][j]*b[j][i];
}
}
for(int i=0;i<2;i++)
{
for(int j=0;j<3;j++)
printf("%5d ",a[i][j]);
cout<<endl;
}
cout<<endl;
for(int i=0;i<3;i++)
{
for(int j=0;j<2;j++)
printf("%5d ",b[i][j]);
cout<<endl;
}
cout<<endl;
for(int i=0;i<2;i++)
{
for(int j=0;j<2;j++)
printf("%5d ",c[i][j]);
cout<<endl;
}
return 0;
}