#navi(../)
* qsortを使って数値配列のソートを行うサンプルソース [#lbd7a300]
qsortを使ってqsortを使って数値配列のソートを行うサンプルソースおよび実行結果を以下に記します。
#contents
#htmlinsertpcsp(c-top.html,c-sp.html)
* 関連記事 [#e0d65948]
-[[qsortを使って文字列のポインタ群のソートを行うサンプルソース>ソート/qsortを使って文字列のポインタのソートを行う]]
-[[qsortを使って数値配列のソートを行うサンプルソース>ソート/qsortを使って数値配列のソートを行う]]
* qsortを使って数値の配列群をソートする [#dc5692c9]
以下のサンプルソースにより数値の配列の値をソートすることができます。
&ref(qsort_int.c); (改行コードLF)
#include <stdio.h>
#include <stdlib.h>
int int_compar(const void *a, const void *b)
{
if (*(int*)a == *(int*)b) { return 0; }
if (*(int*)a < *(int*)b) { return -1; }
return 1;
}
int main(void)
{
int i;
int data[5] = {100,20,10,200,5};
printf("===== BEFORE =====\n");
for(i=0; i<5; i++) {
printf("%d\n", data[i]);
}
for(i=0; i<5; i++) {
qsort((void*)data, 5, sizeof(int), int_compar);
}
printf("===== AFTER =====\n");
for(i=0; i<5; i++) {
printf("%d\n", data[i]);
}
return 0;
}
* 数値の配列のソート実行結果 [#v97da577]
コンパイルし実行した結果を以下に記します。
$ gcc qsort_int.c -o qsort_int
sakura@mini:~/c$ ./qsort_int
===== BEFORE =====
100
20
10
200
5
===== AFTER =====
5
10
20
100
200
以上、数値の配列をqsort関数で行う方法でした。
#htmlinsertpcsp(c-btm.html,c-sp.html)