程序如下:
#include <stdio.h>
int less(int x,int y)
{
return (x>y)?1:0;
}
int greater(int x,int y)
{
return (x<y)?1:0;
}
void sort(int *a,int length,int (*p)(int ,int))
{
int i,j,tmp;
for (i = 0; i < length - 1; i++)
{
for (j = 0; j < length - 1 - i; j++)
{
if (p(a[j] , a[j + 1]))
{
tmp = a[j];
a[j] = a[j + 1];
a[j + 1] = tmp;
}
}
}
}
int main()
{
int a[10] = {0};
int i;
for (i = 0; i < 10; i++)
{
scanf("%d", &a[i]);
}
sort (a,sizeof(a)/sizeof(int),greater);
for (i = 0; i < 10; i++)
{
printf("%d ", a[i]);
}
printf("\n");
return 0;
}