C語言qsort函式的使用

2021-10-09 22:53:14 字數 1397 閱讀 7424

函式原型:void qsort(void *base, int nelem, int width, int(*fcmp)(const void *, const *))

標頭檔案:#include

base:要排序的陣列

nelem:需要排序的長度

width:每個陣列元素的大小

cmp:比較函式

int型別的排序

int

cmp1

(const

void

*a,const

void

*b)int main

;qsort

(p,10

,sizeof

(int

),cmp1)

;//呼叫qsort

return0;

}

double型別排序

int

cmp2

(const

void

*a,const

void

*b)int main

;qsort

(d,6

,sizeof

(double

),cmp2)

;//呼叫qsort

return0;

}

char型別排序

int

c***

(const

void

*a,const

void

*b)int main

;qsort

(c,10

,sizeof

(c[0])

,c***)

;//呼叫qsort

return0;

}

字串型別排序

int

cmp4

(const

void

*a,const

void

*b)int main

;qsort

(s,6

,sizeof

(s[0])

,cmp4)

;//呼叫qsort

return0;

}

結構體型別排序

struct stu

;int

cmp5

(const

void

*a,const

void

*b)int main

C語言qsort函式的使用

qsort函式必須是對於連續的記憶體的資料進行排序,不能對鍊錶進行排序 定義 qsort 基本快速排序的方法,每次把陣列分成兩部分和中間的乙個劃分值,而對於有多個重複值的陣列來說,基本快速排序的效率較低,且不穩定 整合在c語言庫函式裡面的qsort函式,使用三路劃分的方法解決排序這個問題。所謂三路劃...

qsort函式的使用 C語言

qsort函式是一種可以實現多種型別資料比較的函式,可int,可float,可double等等 void qsort void base,int nelem,int width,int fcmp const void const void 函式引數介紹 1,要比較的陣列的位址,2.陣列的個數,3.陣...

C語言qsort 函式的使用

qsort 函式是 c 庫中實現的快速排序演算法,包含在stdlib.h標頭檔案中,其時間複雜度為 o nlogn 函式原型如下 void qsort void base,size t nmemb,size t size,int compar const void const void 此函式需要四...