请求各位高人帮帮忙吧,用c++写程序

来源:百度知道 编辑:UC知道 时间:2024/06/06 14:16:52
给出数组A[n],A的元素是结构R。
R=Record
V1, V2 : integer;
End;
请对A进行排序,要求按V1降序排。

#include<iostream>
using namespace std;
typedef rec{int v1,v2;}a[10000];
inline bool cmp(rec a,rec b){return a.v1>b.v1;}
int main()
{int i,n;
cin>>n;for(i=0;i<n;i++)cin>>a[i];
sort(a,a+n,cmp);
for(i=0;i<n;i++)cout<<a[i]<<" ";cout<<endl;
return 0;
}

不想复杂,直接冒泡了...

void sort(R A[],int n)
{
int i,j;
for(i=0;i<n;i++)
{
for(j=0;j<n-i-1;j++)
{
if(A[j].V1<A[j+1].V1)
{
R temp = A[j];
A[j] = A[j+1];
A[j+1] = temp;
}
}
}
}