选择排序代码实现(降序)
#include <stdio.h>
void select_sort(int arr[],int n)
{
int max_i,i,k;
for(k=0;k<n-1;k++) //控制排数次数
{
max_i=k;
for(i=max_i+1;i<n;i++)
{
if(arr[i]>arr[max_i])
{
max_i=i; //获取最大位置下标
}
if(k!=max_i)
{
int temp=arr[k];
arr[k]=arr[max_i];
arr[max_i]=temp;
}
}
}
return;
}
int main(int argc, const char *argv[])
{
int arr[]={25,85,89,54,85};
int n=sizeof(arr)/sizeof(arr[1]);
select_sort(arr,n);
for(int i=0;i<n;i++)
{
printf("%d ",arr[i]);
}
putchar(10);
return 0;
}