C语言求3x3矩阵对角线元素之和
以下是一个用C语言计算3x3矩阵对角线元素之和的完整程序:

(图片来源网络,侵删)
#include <stdio.h>
int main() {
int matrix[3][3];
int sum = 0;
// 输入矩阵元素
printf("请输入3x3矩阵的元素:\n");
for(int i = 0; i < 3; i++) {
for(int j = 0; j < 3; j++) {
scanf("%d", &matrix[i][j]);
}
}
// 计算主对角线元素之和
for(int i = 0; i < 3; i++) {
sum += matrix[i][i];
}
// 计算副对角线元素之和(如果需要)
// int sum2 = 0;
// for(int i = 0; i < 3; i++) {
// sum2 += matrix[i][2-i];
// }
printf("主对角线元素之和为:%d\n", sum);
// printf("副对角线元素之和为:%d\n", sum2);
return 0;
}
代码说明:
-
矩阵定义:使用
int matrix[3][3]定义一个3x3的整型矩阵。 -
输入矩阵元素:通过双重循环读取用户输入的9个整数,填充矩阵。
-
计算主对角线之和:
- 主对角线元素满足行号和列号相等(即
matrix[0][0],matrix[1][1],matrix[2][2]) - 使用单循环累加这些元素
- 主对角线元素满足行号和列号相等(即
-
计算副对角线之和(可选):
(图片来源网络,侵删)- 副对角线元素满足行号+列号=2(即
matrix[0][2],matrix[1][1],matrix[2][0]) - 代码中已注释这部分,如需计算可以取消注释
- 副对角线元素满足行号+列号=2(即
示例运行:
请输入3x3矩阵的元素:
1 2 3
4 5 6
7 8 9
主对角线元素之和为:15
如果需要计算主对角线和副对角线的总和,可以修改代码为:
// 计算主对角线和副对角线元素之和
for(int i = 0; i < 3; i++) {
sum += matrix[i][i]; // 主对角线
sum += matrix[i][2-i]; // 副对角线
}
sum -= matrix[1][1]; // 减去重复计算的中间元素
这样会得到两条对角线上所有元素的总和。

(图片来源网络,侵删)
