#include
是在这个头文件中的函数!
#include
#include
int cmp(const void *a,const void *b)
{
return ( *(int *)a - *(int *)b ) ;
}
int main()
{
int n,s[100];
scanf("%d",&n);
for(int i=0;iscanf("%d",&s[i]);
qsort(s,n,sizeof(s[0]),cmp);
for(int i=0;iprintf("%d ",s[i]);
return(0);
}
// 5 2 3 1 4 5
结构体快排 (包含两个元素)
#include
#include
struct node {
double date1;
int no;
} s[100];
int cmp(const void *a,const void *b)
{
struct node *aa=(node *)a;
struct node *bb=(node *)b;
if(aa->date1!=bb->date1)
return(((aa->date1)>(bb->date1))?1:-1);
else
return((aa->no)-(bb->no));
}
int main()
{
int i,n;
scanf("%d",&n);
for(i=0;is[i].no=i+1;
scanf("%lf",&s[i].date1);
}
qsort(s,n,sizeof(s[0]),cmp);
for(i=0;iprintf("%d %lf\n",s[i].no,s[i].date1);
return(0);
}
double型
#include
#include
double s[1000];
int i, n;
int cmp(const void * a, const void * b)
{
return((*(double*)a - *(double*)b>0)?1:-1);
}
int main()
{
scanf("%d", &n);
for(i = 0; i < n; i++)
scanf("%lf", &s[i]);
qsort(s, n, sizeof(s[0]), cmp);
for(i = 0; i < n; i++)
printf("%lf ", s[i]);
return 0;
}
char型
#include
#include
#include
char s[10000], i, n;
int cmp(const void *a,const void *b)
{
return (*(char *)a - *(char *)b);
}
int main()
{
scanf("%s", s);
n = strlen(s);
qsort(s, n, sizeof(s[0]), cmp);
printf("%s", s);
return(0);
}
http://blog.csdn.net/f_zyj/article/details/51484751