用c语言写给定一个n阶整型方阵,计算周边元素及对角线的和。
时间: 2024-11-19 17:35:19 浏览: 24
在C语言中,你可以使用二维数组(array of arrays)来表示矩阵,并遍历每个元素来计算周边元素和对角线元素的总和。下面是一个简单的示例代码:
```c
#include <stdio.h>
#define N 3 // 假设矩阵大小为3x3
void calculate周边和对角线(int matrix[N][N]) {
int周边和 = 0, 主对角线和 = 0, 次对角线和 = 0;
for (int i = 0; i < N; i++) {
for (int j = 0; j < N; j++) {
// 周边元素(上、下、左、右)
if (i == 0) {
周边和 += matrix[i][j];
} else if (i == N - 1) {
周边和 += matrix[i][j];
} else if (j == 0) {
周边和 += matrix[i][j];
} else if (j == N - 1) {
周边和 += matrix[i][j];
}
// 主对角线元素
if (i == j) {
主对角线和 += matrix[i][j];
}
// 次对角线元素
if (i + j == N - 1) {
次对角线和 += matrix[i][j];
}
}
}
printf("周边元素之和: %d\n", 周边和);
printf("主对角线元素之和: %d\n", 主对角线和);
printf("次对角线元素之和: %d\n", 次对角线和);
}
int main() {
int matrix[N][N] = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} }; // 示例矩阵
calculate周边和对角线(matrix);
return 0;
}
```
这段代码首先定义了一个`calculate`函数,该函数接受一个`N`x`N`的矩阵作为参数,然后遍历矩阵计算周边元素和两条对角线元素。在`main`函数中,我们创建了一个3x3的矩阵,并将其传递给`calculate`函数进行计算。
请注意,这只是一个基础示例,如果你需要处理更大规模的矩阵或者用户输入的矩阵,你可能需要优化循环结构或者使用动态内存分配。
阅读全文