💯前言
- 矩阵加法是程序设计中一个非常基础但又非常具有实际应用价值的操作。通过对两矩阵的元素进行逐一相加,我们能够快速实现各种场景中的数值计算。这道题目 “矩阵加法” 出自洛谷题库 B2104,是一道典型的二维数组操作题。在这篇文章中,我们将对该题进行全面的解析,涵盖题目描述、我的解法、老师的解法、对比分析以及进一步的优化和拓展。
C++ 参考手册
💯题目描述
题目编号:B2104 矩阵加法
题目要求:
输入两个 (n \times m) 行列的矩阵 (A) 和 (B),输出它们的和矩阵 (A + B)。矩阵加法的规则是两个矩阵中对应位置的值进行加和,具体叙述如下。
输入格式
- 第一行包含两个整数 (n) 和 (m),表示矩阵的行数和列数 (1 ≤ (n), (m) ≤ 100)。
- 接下来 (n) 行,每行 (m) 个整数,表示矩阵 (A) 的元素。
- 接下来 (n) 行,每行 (m) 个整数,表示矩阵 (B) 的元素。
矩阵 A 和矩阵 B 的元素范围均为:1 ≤ 元素值 ≤ 1000。
输出格式
输出矩阵的加法结果,每行输出 (m) 个整数,相邻两个整数之间用单个空格隔开。
输入输出示例
输入示例 #1:
3 3
1 2 3
1 2 3
1 2 3
1 2 3
4 5 6
7 8 9
输出示例 #1:
2 4 6
5 7 9
8 10 12
通过示例可以看出,矩阵加法的核心在于将两个矩阵的对应位置元素直接相加,并输出到结果矩阵中。
💯我的解法
以下是我完成题目的代码实现:
#include <iostream>
using namespace std;
int arr1[1005][1005];
int arr2[1005][1005];
int main()
{
int n, m;
cin >> n >> m;
for(int i = 0; i < n; i++)
{
for(int j = 0; j < m; j++)
{
cin >> arr1[i][j];
}
}
for(int i = 0; i < n