当前位置: 首页 > news >正文

qsort函数排序结构体数据

#define _CRT_SECURE_NO_WARNINGS

#include <stdio.h>
#include <string.h>
#include <stdlib.h>


//qsort函数
//需要引用头文件

//qsort排序结构体数据


struct Stu
{
    char name[20];
    int age;
};

//按照名字的字母大小来比较
int cmp_stu_by_name(const void* e1, const void* e2)
{
    //两个字符串比较用strcmp函数,需要引用头文件
    //strcmp函数返回的值就是大于0或等于0或小于0的数字
    return strcmp(((struct Stu*)e1)->name, ((struct Stu*)e2)->name);
}

//按照年龄大小来比较
int cmp_stu_by_age(const void* e1, const void* e2)
{
    return ((struct Stu*)e1)->age - ((struct Stu*)e2)->age;
}

void test1()
{
    //测试使用qsort来排序结构体数据
    struct Stu s[] = { {"zhangsan", 15},{"lisi", 30},{"wangwu", 25}};
    int sz = sizeof(s) / sizeof(s[0]);
    //qsort(s, sz, sizeof(s[0]), cmp_stu_by_name);
    qsort(s, sz, sizeof(s[0]), cmp_stu_by_age);
}
int main()
{
    test1();

    return 0;
}


http://www.mrgr.cn/news/58948.html

相关文章:

  • 新手直播方案
  • LCD手机屏幕高精度贴合
  • ABAP ALV
  • 希尔排序的增量和缩小增量问题
  • 如何制作一台自己想要的无人机?无人机改装调试技术详解
  • 5G工业路由器智能电网部署实录:一天内解决供电、网络
  • 代码随想录刷题学习日记
  • 如何选择运维产品:以一体化管理为核心,提升运维效率与质量
  • ProTable样式缺失
  • Java基础知识异常
  • python学习笔记:___getattr__
  • 鸿蒙开发初级证书考试答案
  • Uni-App-01
  • 架构师备考专栏-导航页
  • C语言输入输出效率优化
  • layui表格反选功能
  • uniapp:上拉加载更多、下拉刷新、页面滚动到指定位置
  • 力扣33:搜索旋转排序数组
  • 从Docker容器中备份整个PostgreSQL
  • 软考系统分析师知识点二三:错题集1-10
  • 并联谐振回路
  • 无人机原理是什么?
  • Linux下的线程同步与死锁避免
  • 从0到1构建 UniApp + Vue3 + TypeScript 移动端跨平台开源脚手架
  • 第15课 算法(上)
  • 快速入门!低功耗4G模组跟服务器之间的加密通信,千万不能错过!