题解 | #矩阵乘法#
矩阵乘法
https://www.nowcoder.com/practice/ebe941260f8c4210aa8c17e99cbc663b
#include<iostream> #include<bits/stdc++.h> using namespace std; int main() { int x, y, z; while (cin >> x >> y >> z) { vector<vector<int>>A(x, vector<int>(y, 0));//创建二维数组 vector<vector<int>>B(y, vector<int>(z, 0)); vector<vector<int>>C(x, vector<int>(z, 0)); for(int i=0;i<x;i++)//输入A矩阵的值 for (int j = 0; j < y; j++) { cin >> A[i][j]; } for (int i = 0; i < y; i++)//输入B矩阵的值 for (int j = 0; j < z; j++) { cin >> B[i][j]; } for(int i=0;i<x;i++)//计算C矩阵的值 for (int j = 0; j < z; j++) { for (int k = 0; k < y; k++) C[i][j] += A[i][k] * B[k][j]; } for (int i = 0; i < x; i++)//输出C矩阵的值 { for (int j = 0; j < z; j++) { cout << C[i][j] << " "; } cout << endl; } for (int i = 0; i < x; i++)//将C矩阵的值清零 for (int j = 0; j < z; j++) C[i][j] = 0; } return 0; }