读入一个正整数n(1≤n≤20),再读入n行n列共n²个整数并存入由二维数组表示的方阵m;计算并输出每一行的元素和;计算并输出每一列的元素和;计算并输出对角线上的元素和(即所有m[i][i]的和, i取0~n-1)。(题目来自拼题海洋饼干叔叔)
时间: 2023-06-19 13:05:14 浏览: 494
好的,这是一个简单的二维数组操作题目,我可以帮你解决。以下是 C++ 代码实现:
```cpp
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
int m[n][n];
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
cin >> m[i][j];
}
}
// 计算每一行的元素和
for (int i = 0; i < n; i++) {
int sum = 0;
for (int j = 0; j < n; j++) {
sum += m[i][j];
}
cout << sum << endl;
}
// 计算每一列的元素和
for (int j = 0; j < n; j++) {
int sum = 0;
for (int i = 0; i < n; i++) {
sum += m[i][j];
}
cout << sum << endl;
}
// 计算对角线上的元素和
int sum = 0;
for (int i = 0; i < n; i++) {
sum += m[i][i];
}
cout << sum << endl;
return 0;
}
```
这段代码首先读入 $n$ 和 $n^2$ 个整数,存入一个 $n \times n$ 的二维数组中。然后分别计算每一行、每一列和对角线上的元素和,最后输出结果。
阅读全文