【数学】【C】一个序列的中位数获取

int getMid(int a[], int size)
{

int i,j,t;
int mid;
for (i=0;i<size-1;i++)//i为排序的趟数
{
    for(j=0;j<size-i-1;j++)//j为第i趟需比较的次数
    {
        if(a[j]>a[j+1])
        {
            t=a[j];
            a[j]=a[j+1];
            a[j+1]=t;
        }
    }
}
if(size%2==0)//判断元素个数是否为偶数
{
    mid=(a[size/2]+a[size/2-1])/2;
    printf("偶数的中位数是:%d\n",mid);
}
else
    mid=a[(size-1)/2];
return mid;
int main () {

int p[]={8,5,4,3,9,6};
int size=sizeof(p)/sizeof(int);
printf("2、中位数是:%d\n",getMid(p,size));
return 0;


 

猜你喜欢

转载自blog.csdn.net/m0_37362454/article/details/89404552