C语言 快速排序函数用法

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
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语言 快速排序函数相关推荐

  1. c语言快速排序代码不用函数,C语言 快速排序函数

    C语言 快速排序函数用法 #include #include #include struct student { int id; char name[12]; char sex; }; int com ...

  2. c语言自动排序函数,C语言快速排序函数用法(qsort)

    本文实例为大家分享了C语言快排函数用法,供大家参考,具体内容如下 #include #include #include struct student { int id; char name[12]; ...

  3. c语言qsort函数(快速排序)

    c语言qsort函数(快速排序) 在学习c语言时我们常常会遇到一些排序的问题,在遇到这些排序的问题的时候,我们当然可以自己选择写出自己的排序方法来进行排序.但是我们今天要介绍的是c语言库函数中所提供的 ...

  4. C语言快速排序-qsort函数

    目录 一.qsort简介 二.qsort详解 1)函数原型 2)快速排序源码 三.使用qsort进行排序 目录 一.qsort简介 二.qsort详解 1)函数原型 2)快速排序源码 三.使用qsor ...

  5. C语言qsort快速排序函数详解

    直接进入主题,在c语言中qsort函数是用来快速排序的,qsort有4个参数,分别是数组地址,数组元素个数,数组元素字节大小和一个比较数组元素的函数指针.让我来看一下官方给出的使用标准,上图: 让我们 ...

  6. C语言快速排序--qsort函数

    C语言快速排序–qsort函数 一.什么是qsort函数 qsort函数是C语言编译器函数库自带的快速排序函数. 其包含在#include<stdlib.h>头文件里面,所以在使用的时候需 ...

  7. 【C语言】快速排序函数qsort()

    快速排序函数 函数原型 各种数据类型的升序排序函数 1. 整型 2. double型 3. 字符排序 4. 字符串排序 1. 根据字符串首字母排序 2. 根据字符串长度排序 3. 按字典排序字符串. ...

  8. 在c语言中 函数的作用是什么,C语言程序中函数的定义

    C语言程序中函数的定义 C语言的函数问题是困扰很多学者的问题的,c程序中什么是函数呢?下面啦小编为大家精心推荐的c程序中函数的定义,希望能够对您有所帮助. C语言读书笔记--函数 先来看看函数的一般形 ...

  9. C语言快速排序算法及三种优化方式

    C语言快速排序算法及三种优化方式 C语言快速排序算法及三种优化方式 原理 快速排序复杂度分析 1 时间复杂度 2 空间复杂度 快速排序代码实现 1 普通快速排序 2 快速排序优化1-三数取中优化不必要 ...

最新文章

  1. 小麦的一生矢量图收藏贴-从种子的萌发到完熟
  2. JS自动刷新当前页面
  3. 第三届蓝桥杯预赛c++b组
  4. cuda编程python接口_混合编程[python+cpp+cuda]
  5. 谷歌要求华为不启用鸿蒙,谷歌:华为我不让你用我的服务!华为:我还是照样用!...
  6. S5PV210体系结构与接口06:串口编程
  7. [转载] 【python】Python中*args和**kwargs的区别(在Python中如何使用可变长参数列表)
  8. 安装webpack和webpack打包(此文转自Henery)
  9. FILD和FSTP转换成C语言
  10. Win10正式版历代记
  11. 使用Arduino连接一个LCD显示屏
  12. 学习笔记之——基于深度学习的图像超分辨率重建
  13. 有效性指标——传输速率和频带利用率
  14. 病理与病理生理学【1】
  15. 豆瓣上《特权和寻租的经济学》的书评
  16. 移动硬盘分区丢失如何找回?搜索分区技巧分享
  17. 模拟用户操作 京东抢购 华为mate40 Pro、支付的js脚本
  18. win服务器文件权限问题,win服务器 文件夹权限设置
  19. 设置浏览器禁用DPI缩放,360浏览器、火狐、谷歌
  20. 浙江大学陈越教授数据结构PTA 题目——最大子列和(在线处理法)

热门文章

  1. 《python 数据可视化编程实战》-从excel表中读取数据
  2. OpenCV - 将图片转换为深度学习模型输入格式,BGR通道转RGB,图片归一化,HWC转CHW
  3. undefined reference to `cvRound'
  4. ADB使用总结(内附ADB push apk过程)
  5. 清理VS工程的ipch和sdf文件
  6. orbslam2代码详解之tracking线程——局部地图跟踪
  7. 计算机毕业设计Java家校沟通程序(源码+系统+mysql数据库+lw文档)
  8. 使用aliyun的registry上传下载镜像
  9. 真实线上OOM溢出借助MAT工具排查(原创)
  10. 小白Java成长之旅