- 1
- 0
- 约 3页
- 2017-02-09 发布于重庆
- 举报
C库函数qsort七种使用方法示例
C库函数qsort七种使用方法示例
七种qsort排序方法本文中排序都是采用的从小到大排序
一、对int类型数组排序C++代码
int num[100]; ?
Sample:
int cmp ( const void *a , const void *b ) ?
{ ?
? ? ? return *(int *)a – *(int *)b; ?
} ?
qsort(num,100,sizeof(num[0]),cmp); ?
二、对char类型数组排序(同int类型)C++代码
char word[100]; ?
Sample:
int cmp( const void *a , const void *b ) ?
{ ?
? ? ?return *(char *)a – *(char*)b; ?
} ?
qsort(word,100,sizeof(word[0]),cmp) ?
三、对double类型数组排序(特别要注意)C++代码
double in[100]; ?
int cmp( const void *a , const void *b ) ?
{ ?
? ? ?return *(double *)a *(double *)b ? 1 : -1; ?
} qsort(in,100,sizeof(in[0]),cmp); ?
struct In { ?
double data; ?
int other; ?
}s[100] ?
//按照data的值从小到大将结构体排序,关于结构体内的排序关键数据data的类型可以很多种,参考上面的例子写 ?
int cmp( const void *a ,const void *b) ?
{ ?
? ? ? return (*(In *)a).data (*(In *)b).data ? 1 : -1; ?
} ?
qsort(s,100,sizeof(s[0]),cmp); ?
struct In { ?
? ? int x; int y; ?
}s[100]; ?
//按照x从小到大排序,当x相等时按照y从大到小排序 ?
int cmp( const void *a , const void *b ) ?
{ ?
? ? ?struct In *c = (In *)a; ?
? ? ?struct In *d = (In *)b; ?
? ? ?if(c-x != d-x) return c-x – d-x; ?
? ? ?else return d-y – c-y; ?
} ?
qsort(s,100,sizeof(s[0]),cmp); ?
六、对字符串进行排序C++代码
struct In { ?
? ? int data; char str[100]; ?
}s[100]; ?
//按照结构体中字符串str的字典顺序排序 ?
int cmp ( const void *a , const void *b ) ?
{ ?
? ? ?return strcmp( (*(In *)a)-str , (*(In *)b)-str ); ?
} ?
qsort(s,100,sizeof(s[0]),cmp); ?
int cmp(const void *a,const void *b) ?
//重点cmp函数,把除了1点外的所有点,旋转角度排序 ?
{ ?
? ? ?struct point *c=(point *)a; ?
? ? ?struct point *d=(point *)b; ?
? ? ?if( calc(*c,*d,p[1]) 0) return 1; ?
? ? ?else if( !calc(*c,*d,p[1]) ?
? ? dis(c-x,c-y,p[1].x,p[1].y) dis(d-x,d-y,p[1].x,p[1].y)) ?
? ? //如果在一条直线上,则把远的放在前面 ?
? ? return 1; else return -1; ?
} ?
您可能关注的文档
- CPA教材精讲企业战略选择 .doc
- CPA教材精讲发展战略.doc
- CPA教材精讲总体战略.doc
- CPA教材精讲发展战略的主要途径.doc
- CPA教材精讲战略评估及选择.doc
- CPA教材精讲基于创造价值增长率的财务战略选择.doc
- CPA教材精讲职能战略.doc
- CP3425的使用与常见问题.doc
- CPA教材精讲风险管理实务.doc
- CPA教材精讲战略选择.doc
- 2026年及未来5年内中国液体氩气行业投资前景及策略咨询研究报告.docx
- 2026年及未来5年内中国黄铜合页行业投资前景及策略咨询研究报告.docx
- 2026年及未来5年内中国竹工艺家具行业投资前景及策略咨询研究报告.docx
- 2025年中国微机数显自动分析仪市场调查研究报告.docx
- 2026年及未来5年内中国微尘白色粉笔行业投资前景及策略咨询研究报告.docx
- 2025年中国微电脑型压胶机市场调查研究报告.docx
- 2026年及未来5年内中国数字化等功游泳训练测试系统行业投资前景及策略咨询研究报告.docx
- 2025年中国圆形花瓶市场调查研究报告.docx
- 2026年及未来5年内中国植物纤维静淀过滤器行业投资前景及策略咨询研究报告.docx
- 2025年中国超音波手套机市场调查研究报告.docx
最近下载
- 平潭澳海上风电场项目可研收口报告2018年4月版本15工程设计概算表.pdf VIP
- 2024年常州信息职业技术学院单招职业技能测试题库(历年真题).docx VIP
- 腹膜透析指南(2025年版).docx VIP
- 党的二十届四中全会PPT课件.ppt VIP
- 产品设计与实训 设计实训.ppt VIP
- 施工现场建筑垃圾减量化专项方案.pdf VIP
- 《数学史》数学的起源.pptx VIP
- 2026年信息科技课标试题及答案.doc VIP
- 本科课件-ArcGIS Engine地理信息系统开发教程(完整).ppt
- 北京通州区2022-2023学年高一下学期期末质量检测英语试卷 含解析.docx VIP
原创力文档

文档评论(0)