对结构体多级排序

sort()函数是C++中的排序函数其头文件为:#include头文件;

qsort()是C中的排序函数,其头文件为:#include

 对结构体多级排序

按结构体中多个关键字排序()[以二级为例]:

struct Node

{

        int x;

        int y;

}s[100];

//按照x从小到大排序,当x相等时按y从大到小排序(这是3跟4的区别)

int Comp(const void *p1,const void *p2)

{

        struct Node *c=(Node *)p1;

        struct Node *d=(Node *)p2;

        if(c->x!=d->x)

                return c->x-d->x;

        else

                return d->y - c->y;

}

qsort(s,n,sizeof(s[0]),Comp);   //s名称   n个数

你可能感兴趣的:(对结构体多级排序)