输入3*3的二维数组 将数组行列交换输出 并求两条对角线元素之和C++
时间: 2024-09-19 14:01:23 浏览: 66
在C++中,你可以创建一个函数来完成这个任务。首先,你需要定义一个二维数组,然后交换它的行和列,并计算对角线元素之和。下面是一个简单的示例:
```cpp
#include <iostream>
// 定义3x3的二维整数数组
int arr[3][3];
// 函数用于交换矩阵的行和列并计算对角线元素之和
void swapDiagonalsAndSum() {
int sumDiagonal1 = arr[0][0] + arr[1][1] + arr[2][2]; // 主对角线
int sumDiagonal2 = arr[0][2] + arr[1][1] + arr[2][0]; // 次对角线
// 交换行和列
for(int i = 0; i < 3; ++i) {
for(int j = 0; j < 3; ++j) {
std::swap(arr[i][j], arr[j][i]);
}
}
// 输出交换后的数组
for(int i = 0; i < 3; ++i) {
for(int j = 0; j < 3; ++j) {
std::cout << arr[i][j] << " ";
}
std::cout << "\n";
}
// 输出对角线元素之和
std::cout << "主对角线元素之和: " << sumDiagonal1 << "\n";
std::cout << "次对角线元素之和: " << sumDiagonal2 << "\n";
}
// 示例初始化和调用函数
int main() {
arr[0][0] = 1;
arr[0][1] = 2;
arr[0][2] = 3;
arr[1][0] = 4;
arr[1][1] = 5;
arr[1][2] = 6;
arr[2][0] = 7;
arr[2][1] = 8;
arr[2][2] = 9;
swapDiagonalsAndSum();
return 0;
}
```
在这个例子中,`swapDiagonalsAndSum`函数首先计算两对角线的元素之和,然后通过嵌套循环交换数组的行和列。在`main`函数中,我们为数组赋值,然后调用这个函数。
阅读全文