在c语言中:请编写函数fun(),函数的功能是:求出某个二维数组(如5行5列)的周边元素值之和,作为函数值返回。
时间: 2024-12-23 12:26:39 浏览: 1
在C语言中,你可以通过传递二维数组的指针以及其大小信息来实现这个功能。这里是一个简单的`fun()`函数示例,它计算并返回给定二维数组四周(即对角线除外)的元素之和:
```c
#include <stdio.h>
// 函数声明
int fun(int arr[][5], int rows, int cols);
// 计算周边元素的和
int sum周边(int i, int j, int rows, int cols) {
if (i > 0 && j > 0) // 上方
return arr[i - 1][j];
else if (i < rows - 1 && j > 0) // 左上方
return arr[i + 1][j - 1];
// ...其他方向的判断(右上方、下方、左下方)
return 0; // 如果不在周边,返回0
}
int fun(int arr[][5], int rows, int cols) {
int total_sum = 0;
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
total_sum += sum周边(i, j, rows, cols);
}
}
return total_sum;
}
int main() {
int array[5][5] = { {1, 2, 3, 4, 5},
{6, 7, 8, 9, 10},
{11, 12, 13, 14, 15},
{16, 17, 18, 19, 20},
{21, 22, 23, 24, 25} };
int result = fun(array, 5, 5);
printf("周边元素的总和: %d\n", result);
return 0;
}
```
在这个例子中,`fun()`函数遍历整个数组,对于每个位置`(i, j)`,调用`sum周边()`函数计算该位置周边四个方向(上、下、左、右)的元素之和,并累加到`total_sum`中。
阅读全文