中位数
来源:互联网 发布:淘宝贝南海幼儿园应聘 编辑:程序博客网 时间:2024/05/23 02:29
中位数
Problem Description
中位数是指在一组数据中,按数值大小排序后处于中间位置的数。例如:1, 5, 3 排序后为 1, 3, 5,则其中位数为 3。特别地,当数的个数 N 为偶数时,中位数取位置居中的两个数 (N/2 和 N/2+1) 的平均值,例如:1, 2, 3, 4,中位数为 (2+3)/2 = 2.5。
给定一组数,你能求出中位数吗?
Input
输入数据有多组(数据组数不超过 100),到 EOF 结束。
对于每组数据:
第 1 行输入一个整数 n (3 <= n <= 100),表示数的个数。
第 2 行输入 n 个用空格隔开的整数 Ai (0 <= Ai <= 1000),依次表示每一个数,保证互不重复。
Output
对于每组数据,在一行中输出一个实数(保留 1 位小数),表示这组数据的中位数。
Example Input
31 5 341 2 3 4
Example Output
3.02.5
代码:
#include <stdio.h>int main(){ int i, n, a[101], t, j; double ave; while(scanf("%d", &n) != EOF) { for(i = 0; i < n; i++) { scanf("%d", &a[i]); } for(i = 0; i <= n - 2; i++) { for(j = 0; j <= n - i - 2; j++) { if(a[j] > a[j + 1]) { t = a[j]; a[j] = a[j + 1]; a[j + 1] = t; } } } if(n % 2 == 0) { ave = (a[(n - 1)/2] + a[(n - 1)/2+1])/2.0; } else { ave = a[(n - 1)/2]; } printf("%.1lf\n", ave); } return 0;}
阅读全文
0 0
- 中位数
- 中位数
- 中位数
- 中位数
- 中位数
- 中位数
- 中位数
- 中位数
- 中位数
- 中位数
- 中位数
- 中位数
- 中位数
- 中位数
- 中位数
- 中位数
- 中位数
- 中位数
- 精密超低功耗高端电流如何检测?---凯利讯半导体
- QT 画板的设计
- 《hadoop学习》关于hdfs中的namenode和datanode详解
- SQLServer: 解决“错误15023:当前数据库中已存在用户或角色”
- Tomcat下部署多个项目
- 中位数
- iframe宽高度自适应问题解决方案
- Move Zeroes[LeetCode 283]
- 瞎聊微服务治理问题
- 阿里云推荐码优惠券推荐码获取及使用方法
- 指针函数与函数指针的区别
- 关于JS那些容易被你忽略的那些点(2)
- 【SpringMVC】学习小结
- 求树的高度