C語言中排序函式的用法

2021-07-08 19:01:09 字數 818 閱讀 3720

c語言中沒有預置的sort函式。如果在c語言中,遇到有呼叫sort函式,就是自定義的乙個函式,功能一般用於排序。

一、可以編寫自己的sort函式。

如下函式為將整型陣列從小到大排序。

void sort(int *a, int l)//a為陣列位址,l為陣列長度。

}}對於這樣的自定義sort函式,可以按照定義的規範來呼叫。

二、c語言有自有的qsort函式。

功 能: 使用快速排序例程進行排序

標頭檔案:stdlib.h

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

void *,const

void *));

引數:1 待排序陣列首位址

2 陣列中待排序元素數量

3 各元素的占用空間大小

4 指向函式的指標,用於確定排序的順序

這個函式必須要自己寫比較函式,即使要排序的元素是int,float一類的c語言基礎型別。

以下是qsort的乙個例子:

#include

#include

int comp(const

void*a,const

void*b)//用來做比較的函式。

int main()

;//亂序的陣列。

int i;

qsort(a,n,sizeof(int),comp);//呼叫qsort排序

for(i=0;i<10;i++)//輸出排序後的陣列

return

0;}

C語言中排序函式的用法

c語言中沒有預置的sort函式。如果在c語言中,遇到有呼叫sort函式,就是自定義的乙個函式,功能一般用於排序。一 可以編寫自己的sort函式。如下函式為將整型陣列從小到大排序。void sort int a,int l a為陣列位址,l為陣列長度。對於這樣的自定義sort函式,可以按照定義的規範來...

C語言中排序演算法

選擇排序 拿到其中乙個元素的值依次和其他元素進行比較,完全比較完一次之後,最大或者最小的值出現在第0位.氣泡排序 用兩個相鄰的元素進行比較,每完全比較完依次,最大或者最小的值出現在末尾.例 intnums 5 int length sizeof nums sizeof nums 0 for int ...

C語言中排序演算法總結

十大經典排序演算法 1.0 十大經典排序演算法 排序演算法是 資料結構與演算法 中最基本的演算法之一。排序演算法可以分為內部排序和外部排序,內部排序是資料記錄在記憶體中進行排序,而外部排序是因排序的資料很大,一次不能容納全部的排序記錄,在排序過程中需要訪問外存。常見的內部排序演算法有 插入排序 希爾...