C/C++の宿題を片付けます 103代目
at TECH
[
2ch
|
▼Menu
]
■コピペモード
□
スレを通常表示
□
オプションモード
□このスレッドのURL
■項目テキスト
700:デフォルトの名無しさん 08/01/28 03:18:16 >>699 見難い。 出直して来い。 701:673 08/01/28 07:23:48 <<694ありがとうございます!参考にします。 702:デフォルトの名無しさん 08/01/28 10:56:13 [1] 授業単元:データ構造とアルゴリズム [2] 問題文(含コード&リンク): 配列に整数を100個蓄える。 (1)蓄える整数は関数randによって与えられるものとし、 この配列をバブルソートによってソートした結果を出力するプログラムを作成せよ。 (2)また、上の問題を選択ソートを使用したプログラムに変更せよ。 [3] 環境 [3.1] OS: Linux [3.2] コンパイラ名とバージョン: gcc [3.3] 言語: C [4] 期限: 1月29日 よろしくお願いします 703:デフォルトの名無しさん 08/01/28 11:26:39 >>702 ありきたりで申し訳ないが #include <stdio.h> #include <stdlib.h> #include <time.h> #define N 100 #define SWAP(type, x, y) do{type tmp = x; x = y; y = tmp;}while(0) // バブルソート void bsort(int *a, int n){ int i, j; for(i = 0; i < n - 1; i++) for(j = i + 1; j < n; j++) if(a[i] > a[j]) SWAP(int, a[i], a[j]); } // 選択ソート void ssort(int *a, int n){ int i, j, min; for(i = 0; i < n - 1; i++){ min = i; for(j = i + 1; j < n; j++) if(a[min] > a[j]) min = j; SWAP(int, a[i], a[min]); } } int main(void){ int i, a[N]; srand((unsigned)time(NULL)); for(i = 0; i < N; i++) a[i] = rand()%100; for(i = 0; i < N; i++) printf("%4d", a[i]); printf("\n"); bsort(a, N); // ssort(a, N); for(i = 0; i < N; i++) printf("%4d", a[i]); }
次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
レスジャンプ
mixiチェック!
Twitterに投稿
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch
4966日前に更新/357 KB
担当:undef