编写程序,从键盘上输入数据构成一个矩阵,并计算出各行元素之和、各列元素之和及对角线元素之和。
时间: 2023-04-01 13:02:30 浏览: 61
非常感谢您的问题。这是一个关于编程的问题,我可以回答。要实现这个功能,您可以使用 C 语言编写一个程序,从键盘上输入矩阵的各个元素,然后计算出各行元素之和、各列元素之和及对角线元素之和。具体实现方法可以参考以下代码:
#include <stdio.h>
int main()
{
int n;
printf("请输入矩阵的阶数:");
scanf("%d", &n);
int matrix[n][n];
printf("请输入矩阵的各个元素:\n");
for (int i = ; i < n; i++) {
for (int j = ; j < n; j++) {
scanf("%d", &matrix[i][j]);
}
}
int row_sum[n] = {};
int col_sum[n] = {};
int diagonal_sum1 = ;
int diagonal_sum2 = ;
for (int i = ; i < n; i++) {
for (int j = ; j < n; j++) {
row_sum[i] += matrix[i][j];
col_sum[j] += matrix[i][j];
if (i == j) {
diagonal_sum1 += matrix[i][j];
}
if (i + j == n - 1) {
diagonal_sum2 += matrix[i][j];
}
}
}
printf("各行元素之和:");
for (int i = ; i < n; i++) {
printf("%d ", row_sum[i]);
}
printf("\n");
printf("各列元素之和:");
for (int i = ; i < n; i++) {
printf("%d ", col_sum[i]);
}
printf("\n");
printf("对角线元素之和:");
printf("%d %d\n", diagonal_sum1, diagonal_sum2);
return ;
}