c语言用二维数组输入一个数x得出x行x列的矩阵并求出两条对角线之和
时间: 2025-01-26 13:09:47 浏览: 32
好的,我来为您介绍如何使用C语言实现这个功能。以下是一个示例程序:
```c
#include <stdio.h>
int main() {
int x, i, j;
int sum1 = 0, sum2 = 0;
printf("请输入矩阵的阶数x: ");
scanf("%d", &x);
int matrix[x][x];
printf("请输入矩阵元素:\n");
for (i = 0; i < x; i++) {
for (j = 0; j < x; j++) {
scanf("%d", &matrix[i][j]);
}
}
printf("输入的矩阵是:\n");
for (i = 0; i < x; i++) {
for (j = 0; j < x; j++) {
printf("%d\t", matrix[i][j]);
}
printf("\n");
}
for (i = 0; i < x; i++) {
sum1 += matrix[i][i];
sum2 += matrix[i][x - 1 - i];
}
printf("主对角线之和: %d\n", sum1);
printf("副对角线之和: %d\n", sum2);
printf("两条对角线之和: %d\n", sum1 + sum2);
return 0;
}
```
这个程序的工作原理如下:
1. 首先,程序提示用户输入矩阵的阶数x。
2. 然后,程序创建一个x行x列的二维数组来存储矩阵。
3. 接着,程序提示用户输入矩阵的元素。
4. 输入完成后,程序打印出完整的矩阵。
5. 然后,程序计算主对角线(从左上到右下)和副对角线(从右上到左下)的元素之和。
6. 最后,程序输出两条对角线的和。
这个程序可以处理任意大小的方阵,并计算两条对角线的和。它展示了C语言处理数组和循环结构的能力。
阅读全文
相关推荐

















