c语言(二维数组)求一个N*N矩阵两条对角线元素之和
时间: 2023-10-08 10:04:42 浏览: 621
可以使用一个循环来遍历矩阵,并利用两个变量分别累加主对角线和副对角线的元素值。代码如下:
```c
#include <stdio.h>
int main() {
int n;
printf("请输入矩阵的大小(n*n):");
scanf("%d", &n);
int matrix[n][n];
int sum1 = 0, sum2 = 0; // 分别累加主对角线和副对角线的元素值
// 输入矩阵元素
printf("请输入矩阵元素:\n");
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
scanf("%d", &matrix[i][j]);
if (i == j) { // 主对角线
sum1 += matrix[i][j];
}
if (i + j == n - 1) { // 副对角线
sum2 += matrix[i][j];
}
}
}
// 输出两条对角线元素之和
printf("主对角线元素之和为:%d\n", sum1);
printf("副对角线元素之和为:%d\n", sum2);
return 0;
}
```
其中,`sum1`和`sum2`分别用于累加主对角线和副对角线的元素值。在输入矩阵元素时,利用两个if语句分别将主对角线和副对角线的元素值累加到对应的变量中。最后输出两条对角线元素之和即可。
阅读全文