c语言,求一个3*3矩阵对角线元素之和
时间: 2023-12-01 18:03:10 浏览: 228
以下是C语言实现3*3矩阵对角线元素之和的代码:
```c
#include <stdio.h>
#include <stdlib.h>
int main() {
int i, j, sum = 0;
int a[3][3];
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
scanf("%d", &a[i][j]); // 两个for循环输入3*3的矩阵;
}
}
for (i = 0; i < 3; i++) {
sum += a[i][i]; // 累加从左上角到右下角这条对角线上的元素之和
sum += a[i][2 - i]; // 累加从左下角到右上角这条对角线上的元素之和
}
sum -= a[1][1]; // 减去重复计算的中心元素
printf("%d\n", sum);
return 0;
}
```
输入一个3*3的矩阵,程序会计算出左上角到右下角和左下角到右上角这两条对角线上的元素之和,最后减去重复计算的中心元素,输出结果即为对角线元素之和。
相关问题
c语言求一个3*3矩阵对角线元素之和
可以使用以下代码来求一个3*3矩阵对角线元素之和:
```c
#include <stdio.h>
int main() {
int matrix[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
int sum = ;
for (int i = ; i < 3; i++) {
sum += matrix[i][i];
}
printf("对角线元素之和为:%d\n", sum);
return ;
}
```
这个程序首先定义了一个3*3的矩阵,然后使用一个for循环遍历矩阵的对角线元素,并将它们相加。最后输出对角线元素之和。
c语言求一个3*3矩阵主对角线元素之和
以下是两种C语言求一个3*3矩阵主对角线元素之和的例子:
1.使用两个for循环遍历矩阵,当行数等于列数时,累加对角线元素的值。
```c
#include <stdio.h>
int main() {
int a[3][3], sum = 0;
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
scanf("%d", &a[i][j]);
}
}
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
if (i == j) {
sum += a[i][j];
}
}
}
printf("%d\n", sum);
return 0;
}
```
2.使用一个for循环遍历矩阵,当行数等于列数时,累加对角线元素的值。
```c
#include <stdio.h>
#define n 3
int main() {
int a[n][n], sum = 0;
printf("请输入矩阵(3*3):\n");
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
scanf("%d", &a[i][j]);
}
}
for (int i = 0; i < n; i++) {
sum += a[i][i];
}
printf("对角线之和为:%d\n", sum);
return 0;
}
```
阅读全文