呼叫c語言的快速排序演算法qsort();程式設計客棧
#include
#include
#include
#define size 100
//從小到大排序
int comp1(const void *x,const void *y)
//從大到小排序
int comp2(const void *x,const void *y)
void main()
printf("arr before qsort.\n");
for(i = 0; i < n; i++)
}qsort(arr,n,sizeof(int),comp1);
printf("\narr after qsort.\n");
for(i = 0; i < n; i++)
}qsort(arr,n,sizeof(int),comp2);
printf("\nrecover all.\n");
for(i = 0; i < n; i++)
}printf("\n");
}只帶兩個引數的快速排序:
編寫快速排序,函式qsort(),函式只帶兩個引數
#include
#include
#include
#define len 10
typedef int datatype;
//初始化陣列,陣列元素為小於100的整數
void intiarr(datatype a, int len);
//列印陣列元素
void print(datatype a, int len);
//帶兩個引數的快排
void qsort(datatype a, int len);
int main()
初始化陣列,陣列元素為小於100的整數
void intiarr(datatype a, int len)
}列印陣列元素
void print(datatype a,程式設計客棧 int len)
printf("\n");
}帶程式設計客棧兩個引數的快排
void qsort(datatype a, int len)
while(p < q)
*p = *q;
while((p < q) && (*p <= temp))
*q = *p;
} *p = temp;
qsort(a,p - a);
qsort(p + 1,len - (p - a) - 1);
}本文標題: c語言中使用快速排序演算法對元素排序的例項詳解
本文位址:
C語言中 使用方式
域寬 轉換字元 乙個轉換說明以 開始,以轉換字元結尾,域寬部分是可選的,每個轉換說明對應於乙個輸出引數,改引數被轉化換成有轉換說明規定的資料格式後輸出。注 如果 後面是非轉換字元,多數編譯系統將它作為普通字元輸出。域寬說明字元 意義 減號 在指定區域按左對齊方式輸出 沒有減號時為右對齊 加號 輸出正...
在Go語言中使用氣泡排序?
氣泡排序實現 go語言中陣列的定義 1.用var關鍵字定義,var arr 5 int,需要指定元素個數 2.用 定義,arr 3 int,需要賦初值 用 定義,由編譯器計算元素個數,arr int 氣泡排序 第1個元素和第2個元素比較,若a j a j 1 那麼交換位置 0.思想 n個元素,依次處...
C語言中使用結構體
1 先定義結構體 struct stu char name 20 long number float score 4 再定義指向結構體型別變數的指標變數 struct stu p1,p2 或者 struct stu p1,p2 定義指標變數p 1 p 2,分別指向結構體型別變數。2 在定義型別的同時...