[题目描述]
输入一个整数矩阵,计算位于矩阵边缘的元素之和。所谓矩阵边缘的元素,就是第一行和最后一行的元素以及第一列和最后一列的元素。
☑输入
第一行分别为矩阵的行数m和列数n(m<100,n<100),两者之间以一个空格分开。
接下来输入的m行数据中,每行包含n个整数,整数之间以一个空格分开。
☑输出
输出对应矩阵的边缘元素和。
☑样例输入
3 3
3 4 1
3 7 1
2 0 1
☑样例输出
15
☑提示
注意:结果都在int范围内
☑解题思路
1. 首先,读取输入的矩阵的行数m和列数n。
2. 创建一个大小为m x n的矩阵,并读取输入的m行数据,将数据填充到矩阵中。
3. 初始化边缘元素和变量sum为0。
4. 遍历矩阵的第一行和最后一行,将元素加到sum中。
5. 遍历矩阵的第一列和最后一列(不包括第一行和最后一行),将元素加到sum中。
6. 输出sum。
☑答案
#include <iostream>
using namespace std;
int main() {
int m, n;
cin >> m >> n;
int matrix[100][100];
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
cin >> matrix[i][j];
}
}
int sum = 0;
for (int i = 0; i < m; i++) {
for (int j = 0; j < n; j++) {
if (i == 0 || i == m - 1 || j == 0 || j == n - 1) {
sum += matrix[i][j];
}
}
}
cout << sum << endl;
}
☑so,你学废了吗?
本文章为zovetr小面包有点甜撰写,如有侵权,请及时告知