为了以后方便,各操作写成了函数
#include<iostream>
using namespace std;
const int Maxn=3;
struct Matrix{
int matrix[Maxn][Maxn];
int row,col;
Matrix(){};
Matrix(int r,int c):row(r),col(c){};
};
void in_Matrix(Matrix &x){//输入矩阵
for(int i=0;i<x.row;i++){
for(int j=0;j<x.col;j++){
scanf("%d",&x.matrix[i][j]);
}
}
}
void out_Matrix(Matrix &x){//输出矩阵
for(int i=0;i<x.row;i++){
for(int j=0;j<x.col;j++){
printf("%d ",x.matrix[i][j]);
}
printf("\n");
}
}
Matrix mul_Matrix(Matrix x,Matrix y){//矩阵乘法
Matrix s(x.row,y.col);
for(int i=0;i<x.row;i++){
for(int j=0;j<y.row;j++){
s.matrix[i][j]=0;
for(int k=0;k<x.col;k++){
s.matrix[i][j]+=x.matrix[i][k]*y.matrix[k][j];
}
}
}
return s;
}
int main(){
Matrix x(2,3);
Matrix y(3,2);
in_Matrix(x);
in_Matrix(y);
Matrix s=mul_Matrix(x,y);
out_Matrix(s);
return 0;
}