qsort函数(快速排序用法举例)

这篇博客介绍了C库函数qsort的使用方法,它用于快速排序。内容包括qsort函数的参数解释,以及针对整型数据和字符串型数据的排序示例,特别提到了cmp函数在不同应用场景的选择。此外,还提及了sort函数对字符串排序的趣味应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

上一篇讲了sort函数的用法,现在讲讲库函数qsort的用法,qsort是快速排序的库函数,包含头文件#include”stdlib.h”,其函数原型如下:

void qsort(void *base,int nelem,int width,int(*fcmp)(const void *,const void*));

各参数代表的含义是:

1:待排序数组首地址;    2:数值中待排序元素数量;

3:各元素的占用空间大小;4:指向函数的指针(实际运用中函数名就是函数指针)。

下面按照数组元素的数据类型分类讲解qsort函数的用法。针对不同应用场景选用合适的cmp函数,可以快速简便的实现排序。

A:整型数据

#include "iostream"
#include "stdlib.h"
using namespace std;

int cmp(const void*a,const void*b)//降序,qsort函数默认升序,而实现升序规则只需调换成a-b的形式即可
{
	return *(int*)b-*(int*)a;
}

int main()
{
	int  a[6]={1,2,3,4,5,6},i;
	qsort(a,6,sizeof(int),cmp); //  a是被排序的数组   6是排序元素的个数  
	                            //sizeof(int)是每个元素所占的字节数  cmp是
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值