c语言输入nxn阶矩阵,输出该矩阵,输出每行的和,每列的和,主对角线上的和
时间: 2024-03-12 11:47:17 浏览: 76
好的,以下是一个简单的 C 代码实现:
```C
#include <stdio.h>
int main() {
int n, i, j;
printf("请输入矩阵的阶数:");
scanf("%d", &n);
int matrix[n][n];
// 输入矩阵
printf("请输入矩阵的每个元素:\n");
for (i = 0; i < n; i++) {
for (j = 0; j < n; j++) {
scanf("%d", &matrix[i][j]);
}
}
// 输出矩阵
printf("矩阵如下:\n");
for (i = 0; i < n; i++) {
for (j = 0; j < n; j++) {
printf("%d ", matrix[i][j]);
}
printf("\n");
}
// 输出每行的和
printf("每行的和如下:\n");
for (i = 0; i < n; i++) {
int row_sum = 0;
for (j = 0; j < n; j++) {
row_sum += matrix[i][j];
}
printf("%d ", row_sum);
}
printf("\n");
// 输出每列的和
printf("每列的和如下:\n");
for (j = 0; j < n; j++) {
int col_sum = 0;
for (i = 0; i < n; i++) {
col_sum += matrix[i][j];
}
printf("%d ", col_sum);
}
printf("\n");
// 输出主对角线上的和
int diag_sum = 0;
for (i = 0; i < n; i++) {
diag_sum += matrix[i][i];
}
printf("主对角线上的和为:%d\n", diag_sum);
return 0;
}
```
代码的思路和 Python 版本类似,先输入矩阵,然后逐行/逐列计算和并输出,最后计算主对角线上的和并输出。注意,这里假设输入的矩阵是整数矩阵,如果需要处理浮点数矩阵,可以将 `int` 替换为 `float`。
阅读全文