题解 | #矩阵乘法#

矩阵乘法

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;
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务