//矩阵的乘法
//若有A,B两个矩阵,则要求A的列数等于B的行数,这样才能进行矩阵的乘法
//代码清单:
#include<iostream>
using namespace std;
#define MAX_SIZE 10 //矩阵的最大规模
int main()
{
int a[MAX_SIZE][MAX_SIZE],b[MAX_SIZE][MAX_SIZE],c[MAX_SIZE][MAX_SIZE];
int i,j,k,rowA,colA,colB;
//输入A和B的大小
cout<<"\n输入A的行数、列数和B的列数:";
cin>>rowA>>colA>>colB;
//输入A
cout<<"\n输入A:\n";
for(i=0;i<rowA;++i)
for(j=0;j<colA;++j)
{
cout<<"a["<<i<<"]["<<j<<"]=";
cin>>a[i][j];
}
//输入B
cout<<"\n输入B:\n";
for(i=0;i<colA;++i)
for(j=0;j<colB;++j)
{
cout<<"b["<<i<<"]["<<j<<"]=";
cin>>b[i][j];
}
//执行AxB
for(i=0;i<rowA;++i)
for(j=0;j<colB;++j)
{c[i][j]=0;
for(k=0;k<colA;++k)
c[i][j]+=a[i][k]*b[k][j];
}
//输出C
cout<<"\n输出c:";
for(i=0;i<rowA;++i)
{
cout<<endl;
for(j=0;j<colB;++j)
cout<<c[i][j]<<'\t';
}
return 0;
}