用 c 语言写从键盘输入7个人的月收入(均为正整数),计算并输出这7个人的收入中位数。中位数(Median)又称中值,统计学中的专有名词,是按顺序排列的一组数据中居于中间位置的数。从键盘输入7个人的月收入(均为正整数),计算并输出这7个人的收入中位数。中位数(Median)又称中值,统计学中的专有名词,是按顺序排列的一组数据中居于中间位置的数。
时间: 2024-03-20 14:40:20 浏览: 79
好的,以下是使用 C 语言编写的程序,实现了从键盘输入7个人的月收入,计算并输出这7个人的收入中位数。
```c
#include <stdio.h>
int main() {
int incomes[7]; // 存储7个人的月收入
int i, j, temp;
float median;
// 从键盘输入7个人的月收入,存储在数组中
for (i = 0; i < 7; i++) {
printf("请输入第%d个人的月收入:", i+1);
scanf("%d", &incomes[i]);
}
// 对数组进行排序
for (i = 0; i < 7; i++) {
for (j = 0; j < 6-i; j++) {
if (incomes[j] > incomes[j+1]) {
temp = incomes[j];
incomes[j] = incomes[j+1];
incomes[j+1] = temp;
}
}
}
// 计算中位数
if (7 % 2 == 0) {
// 如果数组长度为偶数,则中位数为中间两个数的平均值
median = (incomes[7/2] + incomes[7/2-1]) / 2.0;
} else {
// 如果数组长度为奇数,则中位数为中间的那个数
median = incomes[7/2];
}
// 输出中位数
printf("这7个人的收入中位数为:%g\n", median);
return 0;
}
```
程序通过 `for` 循环从键盘输入7个人的月收入,存储在数组中。然后使用冒泡排序对数组进行排序,最后计算中位数并输出结果。注意,由于需要输出浮点数,因此需要使用 `%g` 格式化输出符号。
阅读全文