C语言利用qsort,函数实现排序

引用#include<stdlib.h>头文件

qsort()括号里面有4个参数

第一个参数是将要排序的数组名array;

第二个参数是将要排序的数量n;

第三个参数是每个要排序的参数的大小xizeof(array[o]);

第四个参数是自己写的一个比较函数comp;

若排序的是int类型的数组

升序:

int comp(const void*a,const void*b)//用来做比较的函数。

{

return *(int*)a - *(int*)b;

}

降序:

int comp(const void*a,const void*b)//用来做比较的函数。

{

return *(int*)b - *(int*)a; //降序

}

若排序的是结构体数组,假定结构体node

typedef struct{

int a; int b;

}node;

qsort(a,n,sizeof(node),comp)

int comp(const void*x, const void*y)

{

return ((*(node*)y).a) - ((*(node*))x).a);

}