print_key
キーの表示
ミニレポート第 9 回課題
練習 9.2
で動作させたオープンアドレス法のプログラムに
ハッシュ表に登録されているキーの値すべてを
出力する関数 print_key を作成せよ.
プログラムの仕様
-
前提:通常のキーの値は 2 以上の整数とし,空の状態がキーの値 0 で,
削除済みの状態をキーの値 1 で表されるとする.
-
引数,戻り値:無し
-
動作:ハッシュ表に格納されている全てのデータの key メンバの値を空白を挟んで
画面に出力し,最後に改行を行う.格納されているデータが一つも無い場合は
改行のみを行う.出力されるデータの順序は任意でよい.
空や,削除済みのデータを出力してはならない.
関数定義の書き出し例: void print_key(void)
例えば main ルーチンで
int main(void)
{
DATA d;
init();
d = 1;
insert(100, &d);
d = 2;
insert(1000, &d);
d = 3;
insert(1070, &d);
delete(1000);
print_key();
}
図r9.1 main の例
というデータをハッシュ表に登録すると出力は以下のようになる.
(出力順は異なっていても良い)
図r9.2 出力例
プログラム全体についての注意
-
プログラムファイルの設置場所は演習サーバ
sirius.yamamotolab.je.u-tokai.ac.jp 上の自分のホームディレクトリ
直下の c ディレクトリとし,
ファイル名は report09.c とする
-
レポート提出時には main 関数だけをこちらで用意したもので
置き換えてテストを行うので提出時の
report09.c の main 関数内はどんなものでもよい.
注意事項
-
締切は
2024年12月15日
とする.
-
メールでプログラムを提出する必要はない
-
締切後はレポート受理,非受理の結果がわかるまで上書き
しないように注意せよ
受理した学生のリストを
1 クラス提出者
2 クラス提出者
3 クラス提出者
に掲載する.
締切までに提出したにもかかわらず締切後一週間を過ぎても掲載されていない
場合は山本 <hiroshi@tokai.ac.jp>まで連絡せよ.
未提出の学生はすみやかに再提出せよ.
再提出後一週間経っても掲載されない場合も
山本まで連絡せよ.
Updated in November 4, 2019,
index.html,
Yamamoto Hiroshi Web