こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

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

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

宜しくお願い致します。

投稿日時 - 2005-03-06 17:33:18

QNo.1254204

暇なときに回答ください

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

これはどうですか?

#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]);
}
}

投稿日時 - 2005-03-06 19:19:51

お礼

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

投稿日時 - 2005-03-06 20:01:04

ANo.1

このQ&Aは役に立ちましたか?

4人が「このQ&Aが役に立った」と投票しています

回答(3)

ANo.3

説明します。

今回は、選択法です。

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

投稿日時 - 2005-03-06 20:54:05

ANo.2

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

投稿日時 - 2005-03-06 19:21:47

あなたにオススメの質問