用c语言表示:输入一个二维矩阵(4*4),通过函数求对角线元素之和
时间: 2023-10-07 07:14:16 浏览: 116
计算机C语言学习可用材料
好的,可以通过如下的 C 语言代码实现:
```c
#include <stdio.h>
int diagonal_sum(int matrix[4][4]) {
int n = 4;
int total_sum = 0;
for (int i = 0; i < n; i++) {
total_sum += matrix[i][i] + matrix[i][n-i-1];
}
return n % 2 == 1 ? total_sum - matrix[n/2][n/2] : total_sum;
}
int main() {
int matrix[4][4] = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}, {13, 14, 15, 16}};
printf("%d\n", diagonal_sum(matrix)); // 输出 68
return 0;
}
```
这里的 `diagonal_sum` 函数接受一个二维数组 `matrix` 作为输入,返回对角线元素之和。具体实现方式与上面的 Python 代码类似,先遍历第一个对角线(从左上角到右下角),再遍历第二个对角线(从右上角到左下角),将对角线元素累加起来。注意,如果矩阵的维度是奇数,则中心位置的元素会被重复计算,需要减去一次。
阅读全文