c语言计算矩阵周围四边元素之和
时间: 2023-11-19 16:05:16 浏览: 58
假设矩阵为一个二维数组matrix,大小为m行n列,要计算每个元素周围四边的元素之和,可以按照以下步骤进行:
1. 定义一个新的二维数组sum,大小和matrix相同,用于存储每个元素周围四边的元素之和。
2. 通过两层循环遍历matrix的每个元素,对于每个元素matrix[i][j],计算其周围四边元素之和:
sum[i][j] = matrix[i-1][j] + matrix[i+1][j] + matrix[i][j-1] + matrix[i][j+1];
注意需要判断边界条件,即当i=0或i=m-1时,不计算matrix[i-1][j]或matrix[i+1][j];当j=0或j=n-1时,不计算matrix[i][j-1]或matrix[i][j+1]。
3. 计算完成后,sum[i][j]即为矩阵matrix中每个元素周围四边的元素之和。
下面是一个示例代码:
```c
#include <stdio.h>
#define ROW 3
#define COL 3
int main()
{
int matrix[ROW][COL] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
int sum[ROW][COL] = {0};
for (int i = 0; i < ROW; i++) {
for (int j = 0; j < COL; j++) {
if (i > 0) sum[i][j] += matrix[i-1][j];
if (i < ROW-1) sum[i][j] += matrix[i+1][j];
if (j > 0) sum[i][j] += matrix[i][j-1];
if (j < COL-1) sum[i][j] += matrix[i][j+1];
}
}
for (int i = 0; i < ROW; i++) {
for (int j = 0; j < COL; j++) {
printf("%d ", sum[i][j]);
}
printf("\n");
}
return 0;
}
```