qsort例子
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<time.h> typedef struct{
int i;
char str[];
} d_t; #define SIZE_D_T 50 d_t *fill()
{
d_t *d = (d_t *)malloc(SIZE_D_T*sizeof(d_t));
d_t *p;
p=d;
srand(time(NULL));
for (int i=;i<SIZE_D_T;i++)
{
p->i = rand();
sprintf(p->str,"%15d",p->i);
printf("%d %s\n",p->i,p->str);
p++;
}
return d;
} int compare_dt(const void *a, const void *b)
{
return (*(d_t *)a).i - (*(d_t *)b).i;
} void print_dt(d_t *d)
{
d_t *p = d;
printf("======================\n");
for (int i=;i<SIZE_D_T;i++)
{
printf("%d %s\n",p->i,p->str);
p++;
}
}
int main()
{
d_t *d = fill();
qsort(d,SIZE_D_T,sizeof(d_t),compare_dt); print_dt(d); return ;
}
qsort例子的更多相关文章
- Scala HandBook
目录[-] 1. Scala有多cool 1.1. 速度! 1.2. 易用的数据结构 1.3. OOP+FP 1.4. 动态+静态 1.5. DSL 1.6 ...
- golang拾遗:为什么我们需要泛型
从golang诞生起是否应该添加泛型支持就是一个热度未曾消减的议题.泛型的支持者们认为没有泛型的语言是不完整的,而泛型的反对者们则认为接口足以取代泛型,增加泛型只会徒增语言的复杂度.双方各执己见,争执 ...
- qsort函数、sort函数【转】
http://blog.163.com/yuhua_kui/blog/static/9679964420142195442766/ 先说明一下:qsort和sort,只能对连续内存的数据进行排序,像链 ...
- C中的qsort函数和C++中的sort函数的理解与使用
一.qsort()函数 原型:_CRTIMP void __cdecl qsort (void*, size_t, size_t,int (*)(const void*, const void*)); ...
- qsort库函数的用法
qsort 功 能: 使用快速排序例程进行排序 用 法: void qsort(void *base, int nelem, int width, int (*fcmp)(const void *, ...
- (转)qsort和sort
1.qsort函数: 原 型: void qsort(void *base, int nelem, int width, int (*fcmp)(const void *,const void *)) ...
- 转载:有关qsort的使用方法和注意事项
七种qsort排序方法 <本文中排序都是采用的从小到大排序> 一.对int类型数组排序 int num[100]; Sample: int cmp ( const void *a , co ...
- qsort函数用法【转】
qsort函数用法 qsort 功 能: 使用快速排序例程进行排序 用 法: void qsort(void *base, int nelem, int width, int (*fcmp)(con ...
- qsort
/*** *qsort.c - quicksort algorithm; qsort() library function for sorting arrays * Copyright (c) Mic ...
随机推荐
- 【spring】之xml和Annotation,Bean注入的方式
基于xml形式Bean注入 @Data @AllArgsConstructor @NoArgsConstructor public class PersonBean { private Integer ...
- Substring方法(C#,JS,Java,SQL)的区别
C#: substring(第一参数,第二参数)// 第一参数:从第几位开始截,初始是从0位开始 第二参数:截取几位 substring(参数) 如果传入参数为一个长整, 且大于等于0,则以这个 ...
- Linux vim快捷键
1 替换 r 替换 先按r再按要替换的内容 2 按yy复制当前行 按p是粘贴 3 # add at 18-10-25 #-------------------------------- ...
- 读书笔记——《redis入门指南(第2版)》第三章 入门
3 .redis的5种数据类型及相应命令 redis不区分命令大小写. string 512m 一个散列类型键可包含至多232-1个字段 一个列表类型键最多能容纳232-1个元素 一个集合类型键最多能 ...
- html5 + thyleaf引擎
偶然与巧合 舞动了蝶翼 谁的心头风起 前赴而后继 万千人追寻 荒漠唯一菩提 似擦肩相遇 或擦肩而去 命运犹如险棋 无数时间线 无数可能性 终于交织向你
- struts设置开发者模式
struts设置开发者模式 在使用ssh框架做项目时,struts.xml文件总要配置许多项功能,其中一个就是开发者模式: <constant name="struts.devMode ...
- Oracle 查询合并列
在ORACLE 查询时,有时要将多个列合并成一行,其方法如下: 1. decode 函数 decode 函数的语法为: decode(条件,值1,返回值1,值2,返回值2,...值n,返回值n,缺省 ...
- JS数据类型的判断
在 ECMAScript 规范中,共定义了 7 种数据类型,分为 基本类型 和 引用类型 两大类,如下所示: 基本类型:String.Number.Boolean.Symbol.Undefine ...
- MySQL学习笔记Windows篇<一> Welcome to MySQL
MySQL安装完毕后没有图形化操作界面,图形化管理界面需要另行安装,个人比较喜欢Navicat,界面更像SQLserver: 此篇学习笔记所有操作均使用命令行中完成: 1.开启/停止服务 使用MySQ ...
- vue.js建立一个简单的表格
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...