c语言二维数组对角线各元素之和
时间: 2024-10-22 17:20:27 浏览: 76
C语言实现3*3数组对角线之和示例
5星 · 资源好评率100%
在C语言中,二维数组是对角线元素通常是指从左上角到右下角(主对角线)以及从右上角到左下角(副对角线)的所有元素。计算它们的和可以采用两层循环遍历的方式。
首先,定义一个函数接收二维数组和它的行数和列数作为参数:
```c
#include <stdio.h>
int sumDiagonal(int arr[][n], int m, int n) {
int mainSum = 0;
int secondarySum = 0;
// 主对角线
for (int i = 0; i < m; ++i) {
if (i < n) { // 防止越界
mainSum += arr[i][i];
}
}
// 副对角线
for (int i = 0; i < n; ++i) {
if (m - 1 >= i) { // 右上到左下,防止越界
secondarySum += arr[m - 1 - i][i];
}
}
return mainSum + secondarySum;
}
```
在这个函数中,`arr`是二维数组,`m`是行数,`n`是列数。我们分别遍历主对角线和副对角线,并将对应的元素加起来。
阅读全文