typedef struct _PUKE
{
int huase;
int p;
}PUKE;
typedef void (*f)(PUKE *p,int n);
void sort(PUKE *p,int n)
{
int i,j;
PUKE t;
for(i=0;i<n;i++)
for(j=0;j<n-i-1;j++)
{
if(p[j].huase < p[j+1].huase) || ((p[j].huase == p[j+1].huase) && (p[j].p < p[j+1].p)))
{
t = p[j];
p[j] = p[j+1];
p[j+1] = t;
}
}
}
int main()
{
PUKE puke[100];
int n,i,j;
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d %d",&puke[i].huase,&puke[i].p);//花色输入1,2,3,4表示黑、方、梅、杏即可
f fun = sort;
fun(puke,n);
}
先按优先关键字排序,关键字相同时,再按次关键字排序啊