cd c
を実行した後で( ~/c
に移動した後で )、以下の課題を
やってみよ。
片方向リストの例(「より柔軟なリスト」を参照)を用いて、
ユーザーが入力した文字列を記憶し、入力終了後それらを順に出力する
プログラムを作成せよ。但し、入力の終わりは ^D
であると
する。
22.1 の課題を改良し、双方向リンクドリストへと変更せよ。 その上で、入力された文字列を逆順に表示するプログラムを作成せよ。
課題 21.3 を改良し、学生データをリストへと格納するように せよ。また、通年成績も学生データ構造に格納するようにせよ。
課題22.3 を改良し、学生データのリストを通年成績の良いもの順に 並べ替えるようにせよ(並べ替え用の関数を作成せよ)。最後に、 成績順に出力するようにせよ。
但し、並べ替えのアルゴリズムには色々なものが考えられるが、ここで は単純に、学生データが登録されたリストをAとすると、別のリストBを作り、 Aのリストの中で成績が最高のものを A から B に移し変えるようにし よう。こうすると、Aからは最高の成績のものがいなくなるので、当然 2番目に成績の良いものが A の中では最高の成績となっているので、 先ほどの手順を繰り返し、A の中の最高の成績のものを B のリストの 末尾に付け加えるようにする。これを繰り返せば自動的にリストB には 成績順に並んだリストが出来ているという訳である。
作成したプログラムをメイルで creport まで送りなさい。題は、kadai22 とする事。