C语言程序设计
中位数(mid)
【题目描述】
输入一个整数n,和n个整数,输出这n个整数的中位数。
【输入】
第一行一个整数n
第二行n个整数,如题
【输出】
n个整数的中位数,保留一位小数.
【样例输入1】
4
2 3 6 6
【样例输出1】
4.5
【样例输入2】
5
3 5 4 1 2
【样例输出2】
3.0
【数据范围】
对于10%的数据:n<=3;
对于另外30%的数据:保证n个整数在输入时是有序的;
对于50%的数据:n为奇数;
对于50%的数据:n为偶数;
对于100%的数据:n<=3000,所有整数在int范围内.
最佳答案
#include<stdio.h>
int main(){
int a[3000];
int n=0,i,m;
int t=0;
scanf("%d",&n);
float mid;
for(i=0;i<n;i++){
scanf("%d",&a[i]);
}
for(i=0;i<n-1;i++){
for(m=i+1;m<n;m++){
if(a[i]>a[m]){
t=a[i];
a[i]=a[m];
a[m]=t;
}
}
}
if(n%2==0){
mid=(float)(a[n/2-1]+a[n/2])/2;
printf("%f",mid);
}
else{
mid=a[(n+1)/2-1];
printf("%f",mid);
}
}
运行成功!
看看能不能满足你的要求
其他回答
其它网友回答:
以前学习C语言的时候看的是如鹏网的视频教程——《C语言也能干大事》系列;
具体的可以到如鹏网官网上面去了解一下
其它网友回答:
C语言是一种计算机程序设计语言。它既有高级语言的特点,又具有汇编语言的特点。它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设计语言。。。答错了