从键盘输入7个人的月收入(均为正整数),计算并输出这7个人的收入中位数。中位数(Median)又称中值,统计学中的专有名词,是按顺序排列的一组数据中居于中间位置的数。 【输入形式】 7个正整数构成的数据序列,数与数之间使用空格进行分割。 【输出形式】 1个正整数。
时间: 2024-03-22 13:36:49 浏览: 88
好的,你可以参考以下C语言代码实现:
```c
#include <stdio.h>
#include <stdlib.h>
// 用于比较两个整数的大小,用于排序
int cmp(const void *a, const void *b) {
return *(int *)a - *(int *)b;
}
int main() {
int n = 7;
int arr[7];
int sum = 0;
// 读入数据
printf("请输入7个人的月收入:");
for (int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
sum += arr[i];
}
// 对数据进行排序
qsort(arr, n, sizeof(int), cmp);
// 计算中位数
int median;
if (n % 2 == 0) {
median = (arr[n/2] + arr[n/2-1]) / 2;
} else {
median = arr[n/2];
}
// 输出结果
printf("这7个人的收入中位数为:%d\n", median);
return 0;
}
```
这段代码中,我们首先读入了7个人的月收入,然后使用快速排序对这些数据进行排序。然后根据数据个数的奇偶性计算中位数,并输出结果。如果你有任何关于这段代码的疑问,欢迎随时提出。
阅读全文