关于函数sort()和qsort()的讲解!
sort()和qsort(),顾名思义,就是排序函数!!!目的就是简化程序,
是程序看起来更加规范实用!!!呵呵!!
1)sort()
在使用sort()函数的时候在前面加上#include<algorithm>头文件!
升序发排序:
int a[10];
sort(a,a+10);
例子如下:
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int i;
int a[10];
for(i=0;i<10;i++)
cin>>a[i];
sort(a,a+10);
for(i=0;i<10;i++)
cout<<a[i]<<' ';
cout<<endl;
return 0;
}
降序发排序:
降序发排序的时候,你需要自己写一个小函数!!!呵呵!!
char[10];
sort(a,a+10,greater)
例子如下:
#include<iostream>
#include<algorithm>
using namespace std;
bool greater(const int &a, const int &b)
{
return a > b ;
}
int main()
{
int i;
int a[10];
for(i=0;i<10;i++)
cin>>a[i];
sort(a,a+10,greater);
for(i=0;i<10;i++)
cout<<a[i]<<' ';
cout<<endl;
return 0;
}
2)qsort()
在使用qsort()函数的时候在前面加上#include<algorithm>头文件
int a[10];
qsort(a,10,sizeof(int),greater)
降序法排序
#include<iostream>
#include<algorithm>
using namespace std;
int greater(const void *a,const void *b)
{
return *(int*)b-*(int*)a;
}
int main()
{
int i;
int a[10];
for(i=0;i<10;i++)
cin>>a[i];
qsort(a,10,sizeof(int),greater);
for(i=0;i<10;i++)
cout<<a[i]<<' ';
cout<<endl;
return 0;
}
升序法排序
#include<iostream>
#include<algorithm>
using namespace std;
int greater(const void *a,const void *b)
{
return *(int*)a-*(int*)b;
}
int main()
{
int i;
int a[10];
for(i=0;i<10;i++)
cin>>a[i];
qsort(a,10,sizeof(int),greater);
for(i=0;i<10;i++)
cout<<a[i]<<' ';
cout<<endl;
return 0;
}