用C++编程 用行指针变量求4阶矩阵的主对角线元素之和
时间: 2023-10-07 17:13:23 浏览: 41
可以使用以下代码实现:
```cpp
#include <iostream>
using namespace std;
int main() {
int matrix[4][4] = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}, {13, 14, 15, 16}};
int sum = 0;
int* ptr = &matrix[0][0]; // 行指针变量
for (int i = 0; i < 4; i++) {
sum += *ptr; // 加上主对角线元素
ptr += 5; // 指向下一个主对角线元素
}
cout << "主对角线元素之和为:" << sum << endl;
return 0;
}
```
这里假设矩阵为4x4的方阵,可以根据实际情况更改。行指针变量`ptr`初始指向矩阵第一个元素,每次加5指向下一个主对角线元素。最后求得主对角线元素之和并输出。
相关问题
用C++求一个 3×3 矩阵主对角线元素之和
可以使用以下代码来实现:
```c
#include <stdio.h>
int main() {
int matrix[3][3] = {{1, 2, 3},
{4, 5, 6},
{7, 8, 9}};
int sum = 0;
for (int i = 0; i < 3; i++) {
sum += matrix[i][i];
}
printf("矩阵主对角线元素之和为 %d\n", sum);
return 0;
}
```
当然,你也可以通过用户输入来动态地获取矩阵元素,并计算主对角线元素之和。
如何用C++求一个4×4矩阵两对角线元素之和
可以使用以下代码求解:
```
#include <stdio.h>
int main() {
int matrix[4][4] = {
{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12},
{13, 14, 15, 16}
};
int sum = 0;
for (int i = 0; i < 4; i++) {
sum += matrix[i][i] + matrix[i][3 - i];
}
printf("两对角线元素之和为:%d\n", sum);
return 0;
}
```
其中,matrix为要求和的矩阵,sum为两对角线元素之和。使用循环遍历矩阵的对角线即可得到答案。