L1-048. 矩阵A乘以B
问题描述

代码
#include<bits/stdc++.h>
using namespace std;
int main()
{
int m1,n1,m2,n2;
cin >> m1 >> n1;
int a[m1][n1];
for (int i = 0; i < m1; i++) {
for (int j = 0; j < n1; j++) {
cin >> a[i][j];
}
}
cin >> m2 >> n2;
if (n1 != m2) {
cout << "Error: " << n1 << " != " << m2;
return 0;
}
int b[m2][n2];
int c[m1][n2];
for (int i = 0; i < m1; i++) {
for (int j = 0; j < n2; j++) {
c[i][j] = 0;
}
}
for (int i = 0; i < m2; i++) {
for (int j = 0; j < n2; j++) {
cin >> b[i][j];
}
}
for (int i = 0; i < m1; i++)
for (int j = 0; j < n2; j++)
for (int k = 0; k < m2; k++) {
c[i][j] += a[i][k] * b[k][j];
}
cout << m1 << " " << n2 << endl;
for (int i = 0; i < m1; i++) {
for (int j = 0; j < n2; j++) {
cout << c[i][j];
if (j != n2 - 1) {
cout << " ";
}
}
cout << endl;
}
}