#include<iostream>
using namespace std;
int main()
{
system("chcp 65001");
int m,n,p,q;
cout<<"请输入第一个矩阵m x n"<<endl;
cin>>m>>n;
cout<<"请输入第二个矩阵p x q"<<endl;
cin>>p>>q;
if(n!=p)
{cout<<"矩阵无法运算"<<endl;}
else
{
int s1[m][n];
int s2[p][q];
int s3[m][q];
//初始化矩阵
for(int i=0;i<m;i++)
{
for(int j=0;j<q;j++)
{
s3[i][j]=0;
}
}
cout<<"请输入第一个矩阵中的数字"<<endl;
for(int i=0;i<m;i++)
{
for(int j=0;j<n;j++)
{
cin>>s1[i][j];
}
}
cout<<"请输入第二个矩阵中的数字"<<endl;
for(int i=0;i<p;i++)
{
for(int j=0;j<q;j++)
{
cin>>s2[i][j];
}
}
//进行计算
for(int i=0;i<m;i++)
{
for(int j=0;j<q;j++)
{
for(int x=0;x<n;x++)
{
s3[i][j]+=s1[i][x]*s2[x][j];
}
}
}
//输出
cout<<"计算结果是"<<endl;
for(int i=0;i<m;i++)
{
cout<<endl;
for(int j=0;j<q;j++)
{
cout<<s3[i][j]<<" ";
}
}
}
}
通过二重循环输入矩阵。
通过三重循环来计算矩阵乘法。
通过二重循环输出矩阵