用c语言编写函数:求出某二维数组周边元素之和
时间: 2023-07-16 13:16:27 浏览: 149
以下是用 C 语言编写的函数,可以计算二维数组周围元素之和:
```c
#include <stdio.h>
// 宏定义数组行列数
#define ROW 4
#define COL 4
// 计算周边元素之和
int sumSurrounding(int arr[ROW][COL], int row, int col) {
int sum = 0;
int i, j;
for (i = row - 1; i <= row + 1; i++) {
for (j = col - 1; j <= col + 1; j++) {
if (i >= 0 && i < ROW && j >= 0 && j < COL && (i != row || j != col)) {
sum += arr[i][j];
}
}
}
return sum;
}
int main() {
int arr[ROW][COL] = {{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12},
{13, 14, 15, 16}};
int row = 1, col = 2;
int sum = sumSurrounding(arr, row, col);
printf("sum = %d\n", sum);
return 0;
}
```
这个程序中,`sumSurrounding` 函数计算周围元素之和。它接收一个二维数组 `arr`、一个行索引 `row` 和一个列索引 `col`,返回周围元素之和。在函数内部,我们使用两个循环遍历 `arr` 周围的元素,并将它们的和累加到 `sum` 变量中。注意,我们使用 `if` 语句来确保我们只计算有效的周围元素。最后,我们在 `main` 函数中调用 `sumSurrounding` 函数,传入一个示例数组和一个行列索引,以计算周围元素之和。
阅读全文