用c语言编程输入n*n价矩阵A和B,用函数编程计算并输出其两条对角线上的各元素之和
时间: 2024-03-13 08:43:54 浏览: 72
好的,下面是代码实现:
```c
#include <stdio.h>
// 计算矩阵两条对角线上的元素之和
int diagonal_sum(int matrix[][100], int n) {
int sum = 0;
for (int i = 0; i < n; ++i) {
sum += matrix[i][i]; // 左上角到右下角的对角线
sum += matrix[i][n - i - 1]; // 右上角到左下角的对角线
}
return sum;
}
int main() {
int n;
int matrixA[100][100], matrixB[100][100];
// 输入矩阵A
printf("请输入矩阵A的大小n:");
scanf("%d", &n);
printf("请输入%d*%d的矩阵A:\n", n, n);
for (int i = 0; i < n; ++i) {
for (int j = 0; j < n; ++j) {
scanf("%d", &matrixA[i][j]);
}
}
// 输入矩阵B
printf("请输入%d*%d的矩阵B:\n", n, n);
for (int i = 0; i < n; ++i) {
for (int j = 0; j < n; ++j) {
scanf("%d", &matrixB[i][j]);
}
}
// 计算并输出矩阵A和B的两条对角线上的元素之和
int sumA = diagonal_sum(matrixA, n);
int sumB = diagonal_sum(matrixB, n);
printf("矩阵A和B的两条对角线上的元素之和分别为:%d和%d\n", sumA, sumB);
return 0;
}
```
注意,本程序中只考虑了n不超过100的情况。如果需要支持更大的矩阵,需要增加相关的逻辑。
阅读全文