c语言自动排序函数,C语言快速排序函数用法(qsort)
本文实例为大家分享了C语言快排函数用法,供大家参考,具体内容如下
#include
#include
#include
struct student
{
int id;
char name[12];
char sex;
};
int compare(const void* a,const void* b)//基本数据类型排序
{
return *(char*)a-*(char*)b;//从小到大
//取值//强转为相应类型的指针!!
}
int compare_struct(const void* a,const void* b)
{
return (*(struct student*)a).id-((struct student*)b)->id;
//注意优先级诶!//否则报错在非结构体中。。。
}
int compare_struct_duoji(const void* a,const void* b)//多级排序
{
struct student student_a=*(struct student*)a;
struct student student_b=*(struct student*)b;
if(student_a.id==student_b.id)
{
return student_a.sex-student_b.sex;
}
else
{
return student_a.id-student_b.id;
}
}
void main()
{
//*************char型*************
char a[5]="hello";
qsort(a,5,sizeof(a[0]),compare);
//元素个数//元素大小//函数指针
int i;
for(i=0;i<5;i++)
printf("%c ",a[i]);
printf("\n");
//************struct型************
struct student e[4]={{100,"chen",'m'},{100,"li",'f'}, \
{70,"wang",'f'},{100,"zhang",'m'}};
qsort(e,4,sizeof(e[1]),compare_struct_duoji);
for(i=0;i<4;i++)
printf("%d %s %c\n",e[i].id,e[i].name,e[i].sex);
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。
c语言自动排序函数,C语言快速排序函数用法(qsort)相关推荐
- 7-229 sdut-C语言实验- 排序7-227 sdut- C语言实验-计算1到n的和(循环结构)
目录 7-229 sdut-C语言实验- 排序 7-231 买文具 7-227 sdut- C语言实验-计算1到n的和(循环结构) 7-229 sdut-C语言实验- 排序 分数 16 全屏浏览题目 ...
- c语言选择排序步骤,C语言中如何实现选择排序算法
选择排序法实现的步骤:首先找出一个最小数交换到最前面:然后在剩下的数中找个最小的交换到剩下数最前面:最后一直重复此步骤,直到所有数排好即可. 选择排序法实现的步骤:找出一个最小数交换到最前面,然后在剩 ...
- c语言 自动计时万年历,C语言实现万年历
C语言实现的万年历显示,按下上下左右按键来更换日期和年份,供大家参考,具体内容如下 #include #include #include #include typedef struct today { ...
- c语言自动安装软件,(c语言)电脑控制手机,手机端不需要安装软件
编译环境 devc++(需要下载) ege图形库(需要自己配置到devc++) adb指令(已提供在tool文件夹下) 手机端要打开手机调试 主要原理 利用adb的input指令,使用c语言 演示图 ...
- c语言自动按键脚本,C语言键盘控制走迷宫小游戏
本文实例为大家分享了C语言键盘控制走迷宫小游戏的具体代码,供大家参考,具体内容如下 在看了<啊哈C语言>之后想写一个游戏demo 游戏的截图 首先是启动界面 然后是初始化 接下来是键盘操控 ...
- c语言自动循环输入,C语言用for如何实现多次循环的输入输出
C语言用for如何实现多次循环的输入输出 关注:241 答案:3 mip版 解决时间 2021-01-27 11:18 提问者傃顏莄蒾亾 2021-01-26 12:37 #includevoid ...
- c语言自动出题器,c语言四则运算出题器
c语言四则运算出题器,绝对的原创,绝对的无错误,绝对用最简单的知识完成难得问题. #include #include #include int a,n,nright=0,nwrong=0,flag5, ...
- c语言自动取款机程序,c语言写的取款机的模拟程序
#include #include #define TYPE_NUM 7 int Moneyvalue [TYPE_NUM]={100,50,20,10,5,2,1}; // ...
- c语言自动导入数据类型,c语言数据类型
参考文章 数据类型一览表 算数类型(arithmetic type) 字符类型 signed char 有符号字符 unsigned char 无符号字符 char 字符(可以是 signed cha ...
最新文章
- 在看不见的地方,AI正在7×24为你在线服务
- jaquery ready
- 云计算技术都要学什么?教你分清公有云、私有云和混合云
- javascript 注意事项
- 经典C语言程序100例之六零
- JSP页面中调用Spring Bean
- app aws_服务网格:Istio和AWS App Mesh
- linux 内核/proc
- minifilter 与用户态的通信
- 文章下载:关于窗宽窗位调节非常有用的论文《DICOM 医学图像窗口变换的加速算法》...
- 免费的Google翻译API接口
- dqmh框架 labview_LabVIEW宝典(第2版)简介,目录书摘
- 2021年1月PMP考试改版
- C语言图形库——easyx的使用
- J. 青出于蓝胜于蓝(dfs序+树状数组)
- python导出百万数据到excel_使用python将大量数据导出到Excel中的小技巧分享
- 微信小程序之发送通知消息(通过openid推送消息给用户)
- 计算机重装系统的方法,电脑怎么刷机重装系统 电脑刷机重装系统的方法
- 戴尔R730服务器增加内存,多功能存储密集型 戴尔R730xd拆解评测
- Unity2019 UIElement 笔记(十一)事件系统