[ 高橋のページ ] [ プログラミングおよび実習II ]
10月12日の講義資料の演習問題(単純選択法により配列の中身を並べかえる関数を紙に書く)をやってください.
整数のデータが与えられたときに,
というプログラムを作りましよう.名前は selectionsort.c としてください. これまでの score1.c などと同様に,
こととします.ただし,以下のことに気をつけて作成して下さい.
void PrintData2(int data[], int n) { int i; for(i = 0; i < n; i++){ printf("[%3d] ", data[i]); } printf("\n"); }
$ ./a.out Input n: 4 Input score[0]: 1 Input score[1]: 2 Input score[2]: 3 Input score[3]: 4 ##### original scores ##### [ 1] [ 2] [ 3] [ 4] <-- 入力した配列そのまま [ 4] [ 2] [ 3] [ 1] <-- 最初の入れ替え後の配列 [ 4] [ 3] [ 2] [ 1] [ 4] [ 3] [ 2] [ 1] <-- ならべかえ終了 ##### sorted scores ##### [ 4] [ 3] [ 2] [ 1]
こちらをどうぞ: 「ポインタの話」