next up previous contents
Next: 27. 関数ポインタ Up: 26. バイナリーツリー Previous: 26. バイナリーツリー

1. 課題 26

cd c を実行した後で( ~/c に移動した後で )、以下の課題を やってみよ。

課題 26.1
バイナリーツリー I

バイナリーツリーにデータをポインタを使って登録するような 一般的なプログラム btree.c を作成せよ。

但し、バイナリーツリーに登録に必要な値は整数とし、以下のように 登録する際にはデータへのポインタとその値とを引数に与えるように する。


    Btree *addCell( int point, void *data ){

なお、便利なように addCell() 関数は新しいセルのメモリ割り当てから、 ツリーへの登録まで全て行うようにせよ。

課題 26.2
バイナリーツリー II

25.4 の課題を以下のように変更せよ。成績順に並び変える部分は不要 なので削除し、今度は バイナリーツリーにファイルから読み込んだ学生のデータを登録するように せよ。但し、成績をキーにして登録せよ。次に、 登録後キーボードから入力された値がツリーにあるか否かを 表示し、ツリーにある場合にはその学生のデータを全て表示するように せよ。

作成したプログラムをメイルで creport まで送りなさい。題は、kadai26 とする事。



Noriyo Kanayama