★g1) まず,kansou.txtというファイルにこの授業の感想を書いて準備しておく。そして,そのファイルの中身(=感想)を表示するプログラムを作って結果を確かめなさい。 ※感想を書いたファイルも提出してください。
【ポイント】 関数 fopen,fclose と getc(またはfgetc),putchar を用いる。
★g2) ユーザが指定したファイル名のファイルを新しく作成し,そのファイルに1以上100以下の13の倍数をすべて書き込むプログラムを作成しなさい.
【ポイント】 関数 fprintf を用いる。
★g4) x座標,y座標からなる構造体pointを定義し,その変数を3つ作成しなさい。キーボードから三角形の3つの頂点の座標を読み込み,三角形の重心の座標を求め表示しなさい。
struct point { double x; double y; };
gx1) コマンドラインで与えられたファイル名のファイルの内容を画面に表示するC言語のプログラムを作成しなさい(UNIXのcat,Windowsのtype)。このプログラムを実行するためには,「コマンドプロンプト」からプログラムを実行しなければならない。
【ポイント】 プログラム実行時のコマンドラインの引数は,メインの引数として取得することができる。
int main(int argc, char *argv[]);このargcに,コマンドライン引数の個数,argvにそれぞれの引数の文字列が得られる。
int main(int argc, char *argv[]) { int i; for (i = 0; i < argc; i++) printf("%s\n", argv[i]); }
gx2) ユーザが指定したファイル名の英文テキストファイルを開き,そこに含まれている単語の平均長(平均文字数)を求めるプログラムを作成せよ。ただし,単語の定義は,アルファベットが連続している文字列とする。
gx3) まず,商品名(文字列),価格(整数),数量(整数)をメンバとする構造体を定義する。次に,構造体を要素とする長さ10の配列を作成し,中身を適当な値で初期化する。キーボードから整数を読み込み,その価格以下のデータを探してすべて表示するプログラムを作成しなさい。
struct item { char name[20]; int price; int quantity; }; struct item item_list[10] = { /* 初期化 */ };
gx4) g3)の構造体変数へのポインタを引数にとり,キーボードから座標値をその変数に代入する関数を作成しなさい。
gx5) まず,氏名(文字列),年齢(整数),身長(実数)からなる構造体を定義しなさい。そして,その構造体の配列に10人分のデータをキーボードから読み込み,それをheight.txtファイルに格納するプログラム(gx5a.c)を作成しなさい。また,その10人分のデータを読み出して表示するプログラム(gx5b.c)も作成しなさい。
gz1) 最後の課題である。fz1)とbz1)を組み合わせて,RPGを作成してみなさい。しかし,それだけでは肝心の「経験値」と「レベルアップ」がないのでそれらを実現するとよいだろう。