//C++ 字符数组顺序排序qsort()
#include<iostream.h>
#include<stdlib.h>
//顺序排序
int cmp(const void*a,const void*b)
{
return*(char*)a-*(char*)b;
}
//逆序排序
int cmp2(const void*a,const void *b)
{
return*(char*)b-*(char*)a;
}
//显示数组的函数
void display(char n[],int len)
{
int i;
for(i=0;i<len;i++)
cout<<n[i]<<" ";
cout<<endl;
}
void main()
{
// char num[]={'1','4','2','5','3'};//也可以这样
char num[]="14253";
int len=sizeof(num)/sizeof(char);
cout<<"排序前"<<endl;
display(num,len);
qsort(num,len,sizeof(num[0]),cmp);//从小到大排序
cout<<"从小到大排序"<<endl;
display(num,len);
qsort(num,len,sizeof(num[0]),cmp2);//从大到小排序
cout<<"从大到小排序"<<endl;
display(num,len);
}
/*----------------------------
排序前
1 4 2 5 3
从小到大排序
1 2 3 4 5
从大到小排序
5 4 3 2 1
Press any key to continue
----------------------------*/
//C++ 字符数组顺序排序
最新推荐文章于 2024-05-15 01:20:07 发布