- 文字列でIPアドレスとネットマスクが与えられた時、ネットワーク
アドレスを文字列が返す関数を定義し、その動作を確認しなさい。
char* netaddress(char* ipaddress,char* netmask)
- 0以上1未満の小数が与えられた時、その二進表現の文字列を返す
関数を定義し、その動作を確認しなさい。
char* bstring(double a)
- 浮動小数点変数aが与えられた時、小数以下n桁に四捨
五入した文字列を返す関数を定義し、その動作を確認しなさい。
char* round(double a, int n)
- 与えられた文字列の順序が逆の文字列を生成する関数を定義し、
その動作を確認しなさい。ただし、文字列を操作するシステムの関数
を使ってはならない。
char* revstr(char* s)
- 与えられた文字列sの中で、最後に文字cが表れた
位置へのポインタを返す再帰的関数を定義し、その動作を確認しなさ
い。もしも文字cが表れなかった場合には、NULLを
返しなさい。また、文字列を操作するシステムの関数を使っては
ならない。
char* index_last(char* s, char c)
- 与えられた文字列sのn文字目からm文字目
からなる部分文字列を返す関数を定義し、その動作を確認しなさい。
ただし、文字列を操作するシステムの関数を使ってはならない。
char* substring(char* s, int n, int m)
- 文字をデータとして保持する構造体Listを考える。この
リストの中から文字aを保持するノードを全て削除する
関数を定義し、その動作を確認しなさい。戻り値は、削除した
ノード数とする。
int delete_node(List &list,char a)
- 文字をデータとして保持する構造体Listを考える。二つの
リストをl1とl2とするとき、l2の要素を
l1の後ろに連結する関数を定義し、その動作を確認しなさい。
戻り値は、追加したノード数とする。また、l2の要素と
l1に追加された要素は独立の存在するとする。
int concat(List &l1,List l2)
- 文字をデータとして保持する構造体Listを考える。リストの
順番を反転させたリストへのポインタを返す関数を定義し、その
動作を確認しなさい。
List* reverse(List l)
- 文字の集合を表す構造体Setを定義し、要素を追加する
関数を定義し、その動作を確認しなさい。追加した要素が
集合の新しい要素の場合1、既に存在していた場合0を返すとする。
int addset(Set &set,char a)