编程求数组各元素的中位数,要求如下:
发布网友
发布时间:2022-04-22 09:57
我来回答
共1个回答
热心网友
时间:2023-10-31 10:15
已通过测试,望采纳
#include <stdio.h>
void main()
{ void array_input(double array[],int n);
void select_sort(double array[],int n);
double median(double array[],int n);
double d[8],med;
printf("请输入double型数组的8个元素:\n");
array_input(d,8);
select_sort(d,8);
med=median(d,8);
printf("数组d各元素的中位数:");
printf("%lf\n",med);
getch();
}
void array_input(double array[],int n)
{ int i;
for(i=0;i<n;i++)
scanf("%lf",&array[i]);
}
void select_sort(double array[],int n)
{ int i,j;
double t;
for(i=0;i<n-1;i++)
for(j=0;j<n-1-i;j++)
if(array[j]>array[j+1])
{ t=array[j];
array[j]=array[j+1];
array[j+1]=t;
}
}
double median(double array[],int n)
{ double m;
int t;
t=(int)(n/2);
if(n%2!=0)
m=array[t];
else
{ m=array[t-1];
m+=array[t];
m/=2;
}
return m;
}