#include<stdio.h>
#include<stdlib.h>
#define MAX 100+10
struct st
{
int x;
int y;
}a[MAX];
int cmp(const void *a,const void *b)
{
struct st *c=(struct st *)a;
struct st *d=(struct st *)b;
if(c->x!=d->x)
return c->x-d->x;
else
return c->y-d->y;
}
int main()
{
int n,i,j;
while(1)
{
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d%d",&a[i].x,&a[i].y);
qsort(a,n,sizeof(a[0]),cmp);
for(i=0;i<n;i++)
printf("%d %d\n",a[i].x,a[i].y);
}
return 0;
}
这里边请注意a[i].x中的.和->的区别不信把.改成->试试
#include<stdlib.h>
#define MAX 100+10
struct st
{
int x;
int y;
}a[MAX];
int cmp(const void *a,const void *b)
{
struct st *c=(struct st *)a;
struct st *d=(struct st *)b;
if(c->x!=d->x)
return c->x-d->x;
else
return c->y-d->y;
}
int main()
{
int n,i,j;
while(1)
{
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d%d",&a[i].x,&a[i].y);
qsort(a,n,sizeof(a[0]),cmp);
for(i=0;i<n;i++)
printf("%d %d\n",a[i].x,a[i].y);
}
return 0;
}
这里边请注意a[i].x中的.和->的区别不信把.改成->试试