a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > C > 正文

C語言中qsort函數(shù)的用法實(shí)例詳解

2020-02-24 14:10:58
字體:
供稿:網(wǎng)友

許多C語言初學(xué)者通常會接觸到排序算法,其實(shí)最簡潔的是快速排序,大多數(shù)C語言初學(xué)者通常使用手寫的排序算法,武林技術(shù)頻道小編現(xiàn)在就帶大家來看看C語言中qsort函數(shù)的用法實(shí)例詳解吧!

C語言中qsort函數(shù)的用法實(shí)例詳解

快速排序是一種用的最多的排序算法,在C語言的標(biāo)準(zhǔn)庫中也有快速排序的函數(shù),下面說一下詳細(xì)用法。

qsort函數(shù)包含在<stdlib.h>中

qsort函數(shù)聲明如下:

void qsort(void * base,size_t nmemb,size_t size ,int(*compar)(const void *,const void *));

參數(shù)說明:

base,要排序的數(shù)組
nmemb,數(shù)組中元素的數(shù)目
size,每個數(shù)組元素占用的內(nèi)存空間,可使用sizeof函數(shù)獲得
compar,指向函數(shù)的指針也即函數(shù)指針。這個函數(shù)用來比較兩個數(shù)組元素,第一個參數(shù)大于,等于,小于第二個參數(shù)時,分別顯示正值,零,負(fù)值。

下面看幾個例子:

#include<stdio.h> #include<stdlib.h> #include<math.h> #include<string.h>  void main(void) {   int i;   int a[10]={0,1,2,3,4,5,6,7,8,9};   char b[10]={'a','b','c','d','e','f','g','h','i','j'};   double c[10]={0.1,0.2,0.9,0.5,0.3,0.6,0.7,0.8,1.1,1.2};   int cmp1(const void * a,const void * b)   {     return (*(int*)a-*(int*)b);//a>b 返回正值   }    int cmp2(const void * a,const void *b)   {     return(*(char*)a-*(char*)b);   }   int cmp3(const void * a,const void * b)   {     if(fabs(*(double*)a-*(double *)b)<1*exp(-20))       return 0;     else       return(((*(double*)a-*(double*)b)>0)?1:-1);   }    qsort(a,10,sizeof(int),&cmp1);//對于函數(shù)指針(指向函數(shù)的指針),直接傳入函數(shù)名和函數(shù)名進(jìn)行&                  //運(yùn)算都是可以的,因?yàn)樵谡{(diào)用函數(shù)時也是取的函數(shù)的地址   qsort(b,10,sizeof(char),cmp2);   qsort(c,10,sizeof(double),cmp3);   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]); } 

作為一名程序開發(fā)的人員,如果你已經(jīng)閱讀完C語言中qsort函數(shù)的用法實(shí)例詳解,那你一定知道要如何編寫了。武林技術(shù)頻道還有更多資訊,敬請關(guān)注js.Vevb.com吧!

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 国产精品免费av | 久久国产精品久久久久久 | 偷拍电影一区二区三区 | 一级在线播放 | 久草在线 | 日韩欧美在线一区 | 国产午夜久久 | 中文字幕亚洲电影 | 色网站在线观看 | 热久久免费视频 | 国产亚洲综合视频 | 久久精选 | 精品人成 | 天天操网 | 成人精品在线视频 | 嫩草私人影院 | 特黄视频 | 欧美一区二区三区免费电影 | 国产小视频免费在线观看 | 日韩aaaa| www.欧美精品| baoyu133. con永久免费视频 | 国产成在线观看免费视频 | 国产在线看片 | 久久久久国产精品午夜一区 | 亚洲欧美日韩高清 | 激情小视频网站 | 国产手机视频在线 | 国产精品一级在线观看 | 99视频在线免费观看 | 成人性生交大片免费看中文带字幕 | 国产在线精品福利 | a毛片毛片av永久免费 | 久久亚洲视频 | 久久激情五月丁香伊人 | 亚洲精品一区二区三区四区高清 | 亚洲激情在线播放 | 久久一二三区 | 性高湖久久久久久久久 | 蜜桃中文字幕 | 在线一区二区三区 |