默认升序,降序写个cmp函数,放到第三个参数的位置
升序
#include <stdio.h>
#include <stdlib.h>
#include<algorithm>
using namespace std;
bool cmp(int a,int b);
int main()
{
int i,n,a[101];
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
sort(a,a+n);
for(i=0;i<n;i++)
{
printf("%d ",a[i]);
}
}
bool cmp(int a,int b)
{
return a>b;
}
降序
#include <stdio.h>
#include <stdlib.h>
#include<algorithm>
using namespace std;
bool cmp(int a,int b);
int main()
{
int i,n,a[101];
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
sort(a,a+n,cmp);
for(i=0;i<n;i++)
{
printf("%d ",a[i]);
}
}
bool cmp(int a,int b)
{
return a>b;
}