用c语言输入任意一个4×4的矩阵a[4][4] ,计算并输出该矩阵主对角线元素之和、副 对角线元素之和。
时间: 2023-10-08 07:04:42 浏览: 106
以下是用C语言实现的代码:
```c
#include <stdio.h>
int main() {
int a[4][4];
int i, j, main_sum = 0, sub_sum = 0;
// 输入矩阵
printf("请输入4x4的矩阵:\n");
for(i = 0; i < 4; i++) {
for(j = 0; j < 4; j++) {
scanf("%d", &a[i][j]);
}
}
// 计算主对角线元素之和
for(i = 0; i < 4; i++) {
main_sum += a[i][i];
}
// 计算副对角线元素之和
for(i = 0; i < 4; i++) {
sub_sum += a[i][3-i];
}
// 输出结果
printf("主对角线元素之和为:%d\n", main_sum);
printf("副对角线元素之和为:%d\n", sub_sum);
return 0;
}
```
运行结果:
```
请输入4x4的矩阵:
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
主对角线元素之和为:34
副对角线元素之和为:32
```
相关问题
c语言:输入一个4×4的矩阵a[4][4],计算并输出该矩阵主对角线元素之和、副对 角线元素之和。
以下是输入一个4×4的矩阵a[4][4],计算并输出该矩阵主对角线元素之和、副对角线元素之和的C语言代码:
```c
#include <stdio.h>
int main() {
int a[4][4];
int i, j, sum1 = 0, sum2 = 0;
// 输入矩阵
printf("请输入4×4矩阵的元素:\n");
for (i = 0; i < 4; i++) {
for (j = 0; j < 4; j++) {
scanf("%d", &a[i][j]);
}
}
// 计算主对角线元素之和
for (i = 0; i < 4; i++) {
sum1 += a[i][i];
}
// 计算副对角线元素之和
for (i = 0; i < 4; i++) {
sum2 += a[i][3 - i];
}
// 输出结果
printf("主对角线元素之和为:%d\n", sum1);
printf("副对角线元素之和为:%d\n", sum2);
return 0;
}
```
运行结果如下:
```
请输入4×4矩阵的元素:
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
主对角线元素之和为:34
副对角线元素之和为:32
```
c语言从键盘输入一个4×4的矩阵,输出该矩阵,求该矩阵的外围元素之和、主对角线和副对角线元素之和
以下是C语言代码实现:
```c
#include <stdio.h>
int main() {
int matrix[4][4];
int sum1 = 0; // 记录外围元素之和
int sum2 = 0; // 记录主对角线之和
int sum3 = 0; // 记录副对角线之和
// 输入矩阵
printf("请输入4*4的矩阵:\n");
for(int i=0; i<4; i++) {
for(int j=0; j<4; j++) {
scanf("%d", &matrix[i][j]);
}
}
// 输出矩阵
printf("您输入的矩阵为:\n");
for(int i=0; i<4; i++) {
for(int j=0; j<4; j++) {
printf("%d ", matrix[i][j]);
if(i==0 || i==3 || j==0 || j==3) {
sum1 += matrix[i][j]; // 累加外围元素之和
}
if(i == j) {
sum2 += matrix[i][j]; // 累加主对角线之和
}
if(i+j == 3) {
sum3 += matrix[i][j]; // 累加副对角线之和
}
}
printf("\n");
}
// 输出结果
printf("外围元素之和为:%d\n", sum1);
printf("主对角线之和为:%d\n", sum2);
printf("副对角线之和为:%d\n", sum3);
return 0;
}
```
运行程序,输入矩阵,即可求出外围元素之和、主对角线之和、副对角线之和。
阅读全文