3 回答

TA貢獻(xiàn)1824條經(jīng)驗(yàn) 獲得超5個(gè)贊
qsort()是您要尋找的功能。您可以使用指向數(shù)據(jù)數(shù)組的指針,該數(shù)組中元素的數(shù)量,每個(gè)元素的大小以及一個(gè)比較函數(shù)來(lái)調(diào)用它。
它發(fā)揮了神奇的作用,并且您的數(shù)組已就地排序。下面是一個(gè)示例:
#include <stdio.h>
#include <stdlib.h>
int comp (const void * elem1, const void * elem2)
{
int f = *((int*)elem1);
int s = *((int*)elem2);
if (f > s) return 1;
if (f < s) return -1;
return 0;
}
int main(int argc, char* argv[])
{
int x[] = {4,5,2,3,1,0,9,8,6,7};
qsort (x, sizeof(x)/sizeof(*x), sizeof(*x), comp);
for (int i = 0 ; i < 10 ; i++)
printf ("%d ", x[i]);
return 0;
}
- 3 回答
- 0 關(guān)注
- 593 瀏覽
添加回答
舉報(bào)