C語言中qsort函式的用法例項詳解

2022-09-29 23:00:23 字數 1119 閱讀 7284

c語言中qsort函式的用法例項詳解

快速排序是一種用的最多的排序演算法,在c語言的標準庫中也有快速排序的函式,下面說一下詳細用法。

qsort函式包含在中

qsort函式宣告如下:

void qsort(void * base,size_t nmemb,size_t size ,int(*compar)(conwww.cppcns.comst void *,const void *));

引數說明:

base,要排序的陣列

nmemb,陣列中元素的數目

size,每個陣列元素占用的記憶體空間,可使用sizeof函式獲得

compar,指向函式的指標也即函式指標。這個函式用來比較兩個陣列元素,第乙個引數大於,等於,小於第二個引數時,分別顯示正值,零,負值。

下面看幾個例子:

#include

#include

#include

#include

void main(void)

; char b[10]=;

double c[10]=;

int cmp1(const void * a,const void * b)

int cmp2(const void * a,const void *b)

int c***(const void * a,constwww.cppcns.com void * b)

qsort(a,10,sizeof(int),&cmp1);//對於函式指標(指向函式的指標),直接傳入函式名和函式名進行&

//運算都是可以的,因為在呼叫函式時也是取的函式的位址

qsort(b,1程式設計客棧0,sizeof(char),cmp2);

qsort(c,10,sizeof(double),c***);

for(i=0;i<10;i++)

printf("%d 程式設計客棧",a[i]);

for(i=0;i<10;i++)

printf("%c ",b[i]);

for(i=0;i<10;i++)

printf("%lf ",c[i]);

} 本文標題: c語言中qsort函式的用法例項詳解

本文位址:

C語言中qsort函式用法

最近在刷pat時c語言中qsort函式的使用極多,所以在這裡總結整理了一下,需要的朋友可以參考下。具體樣例 參考博文 void qsort void base,size t nmemb,size t size int compar const void const void 引數說明 c語言中的qs...

C語言中的qsort函式

qsort函式可以實現一些型別的排序,目前先學習一部分淺顯的內容,如果以後有需要再深入 標頭檔案是 1 int型別的陣列排序 include includeint cmp const void a,const void b int main qsort num,8,sizeof num 1 cmp ...

C語言中qsort函式的應用

qsort函式包含在的標頭檔案裡,本文中排序都是採用的從小到大排序 int num 100 int cmp const void a const void b qsort num,100,sizeof num 0 cmp char word 100 int cmp const void a cons...