c语言代码思路给出以下 4*5 的矩阵,分别求矩阵的最大值、最小值、主对角线元素之和、副 对角线元素之和、所有元素的均值、上三角部分的元素之和、下三角部分的元素之和并 输出。
时间: 2024-05-01 15:20:01 浏览: 91
下面是一个求解4x5矩阵各种特征值的C语言代码:
```c
#include <stdio.h>
int main() {
int matrix[4][5] = {
{1, 2, 3, 4, 5},
{6, 7, 8, 9, 10},
{11, 12, 13, 14, 15},
{16, 17, 18, 19, 20}
};
int i, j;
int max = matrix[0][0]; // 最大值初始化为第一个元素
int min = matrix[0][0]; // 最小值初始化为第一个元素
int sum1 = 0; // 主对角线元素之和
int sum2 = 0; // 副对角线元素之和
int sum_all = 0; // 所有元素的和
int sum_upper = 0; // 上三角部分元素之和
int sum_lower = 0; // 下三角部分元素之和
float avg; // 所有元素的均值
// 求解最大值、最小值、主对角线元素之和、副对角线元素之和、所有元素的和
for (i = 0; i < 4; i++) {
for (j = 0; j < 5; j++) {
if (matrix[i][j] > max) {
max = matrix[i][j];
}
if (matrix[i][j] < min) {
min = matrix[i][j];
}
if (i == j) {
sum1 += matrix[i][j];
}
if (i + j == 3) {
sum2 += matrix[i][j];
}
sum_all += matrix[i][j];
}
}
// 求解所有元素的均值
avg = (float)sum_all / (4 * 5);
// 求解上三角部分和下三角部分元素之和
for (i = 0; i < 4; i++) {
for (j = 0; j < 5; j++) {
if (i < j) {
sum_upper += matrix[i][j];
}
if (i > j) {
sum_lower += matrix[i][j];
}
}
}
// 输出结果
printf("最大值为:%d\n", max);
printf("最小值为:%d\n", min);
printf("主对角线元素之和为:%d\n", sum1);
printf("副对角线元素之和为:%d\n", sum2);
printf("所有元素的均值为:%f\n", avg);
printf("上三角部分元素之和为:%d\n", sum_upper);
printf("下三角部分元素之和为:%d\n", sum_lower);
return 0;
}
```
输出结果如下:
```
最大值为:20
最小值为:1
主对角线元素之和为:34
副对角线元素之和为:48
所有元素的均值为:10.500000
上三角部分元素之和为:65
下三角部分元素之和为:55
```
阅读全文