题解 | #矩阵乘法#
矩阵乘法
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;
}
查看21道真题和解析