编写函数求任意方阵每行、每列、对角线元素之和。c语言
时间: 2024-02-06 17:04:33 浏览: 126
可以使用二维数组来表示方阵,然后依次计算每行、每列、对角线元素之和即可。以下是一个示例代码:
```c
#include <stdio.h>
#define N 3 // 方阵的大小
// 计算每行、每列、对角线元素之和
void sum(int a[][N]) {
int i, j, s, d1 = 0, d2 = 0;
for (i = 0; i < N; i++) {
s = 0;
for (j = 0; j < N; j++) {
s += a[i][j]; // 计算每行的元素之和
}
printf("第%d行的元素之和为%d\n", i+1, s);
s = 0;
for (j = 0; j < N; j++) {
s += a[j][i]; // 计算每列的元素之和
}
printf("第%d列的元素之和为%d\n", i+1, s);
d1 += a[i][i]; // 计算左上到右下对角线的元素之和
d2 += a[i][N-1-i]; // 计算右上到左下对角线的元素之和
}
printf("左上到右下对角线的元素之和为%d\n", d1);
printf("右上到左下对角线的元素之和为%d\n", d2);
}
int main() {
int a[N][N] = {{1, 2, 3},
{4, 5, 6},
{7, 8, 9}};
sum(a);
return 0;
}
```
输出结果为:
```
第1行的元素之和为6
第1列的元素之和为12
第2行的元素之和为15
第2列的元素之和为15
第3行的元素之和为24
第3列的元素之和为18
左上到右下对角线的元素之和为15
右上到左下对角线的元素之和为15
```
阅读全文