• ベストアンサー

C言語 並び替え(配列)について

10個の整数を 昇順に並び替える プログラムを 出来るだけ簡単に 使う関数は少なく 出来ないでしょうか? 宜しくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • funaho
  • ベストアンサー率58% (43/74)
回答No.1

これはどうですか? #include <stdio.h> void main(){ int d[10], i, j, work; for(i=0; i<10; i++){ printf("d[%d]->", i); scanf("%d", &d[i]); } for(i=0; i<=8; i++){ for(j=i+1; j<=9; j++){ if(d[i]>d[j]){ work=d[i]; d[i]=d[j]; d[j]=work; } } } for(i=0; i<10; i++){ printf("d[%d]:%d\n", i, d[i]); } }

mradult
質問者

お礼

有難う御座います。 もしよければ、 考え方等、 教えて頂けたら幸いです。

すると、全ての回答が全文表示されます。

その他の回答 (2)

  • funaho
  • ベストアンサー率58% (43/74)
回答No.3

説明します。 今回は、選択法です。 先頭の要素と、2番目から最後までの要素を順に比較し、先頭の要素より小さければ、先頭の要素と入れ替える。 2番目の要素と、3番目から最後までの要素を順に比較し、先頭の要素より小さければ、先頭の要素と入れ替える。 これの、繰り返しです。

すると、全ての回答が全文表示されます。
  • jacta
  • ベストアンサー率26% (845/3158)
回答No.2

qsort関数を調べてみてください。

すると、全ての回答が全文表示されます。

関連するQ&A