用选择法实现数组中的数按从大到小的次序排列。用选择法实现数组中的数按从大到小的次序排列。
参考如下:
#include<stdio.h>
// 从大到小排序
void sort(int a[],int n)
{
int i,j,k,t;
for(i=0;i<n-1;i++)
{
k=i;
for(j=i+1;j<n;j++)
if(a[j]>a[k]) // 从小到大,只需要 a[j] < a[k]
k=j;
if(k!=i)
{
t=a[k];
a[k]=a[i];
a[i]=t;
}
}
}
int main()
{
int n;
printf("Input n:");
scanf("%d", &n);
printf("Input %d numbers:", n);
int a[n];
for (int i = 0; i < n; i++) {
scanf("%d", &a[i]);
}
sort(a, n);
printf("Sorting results:");
for (int i = 0; i < n; i++) {
printf("%4d", a[i]);
}
return 0;
}