结构体的排序

阅读 60

2022-03-22

例题:
要排序一个物体的长度和宽度。

struct q
{
int l,w;

};
bool cmp1(q b,q c)
{
	if(b.l==c.l)
	return b.w>c.w;
	else return b.l>c.l;
}//优先长度比较,递减
bool cmp2(q b,q c)
{
	if(b.w==c.w)
	return b.l>c.l;
	else return b.w>c.w;
}//优先宽度比较,递减
int main()
{ int n ;
cin>>n;
q a[5005];//定义结构体
for(int i=0;i<n;i++)
cin>>a[i].l>>a[i].w;
sort(a,a+n,cmp2);
sort(a,a+n,cmp1);
for(int i=0;i<n;i++)
	cout<<a[i].l<<" "<<a[i].w<<endl;


 
return 0; 
 
}

精彩评论(0)

0 0 举报