第12週スライド

12回目
ファイル処理
143
ファイル処理の必要性
これまでのプログラム
データ数が多いときは対応できない
キーボード
プログラム
モニタ画面
これらも特別なファイルと考えることができる。
入力ファイル
プログラム
出力ファイル
144
ファイルとは
データベースの意味でのファイル
構造体の一件のデータをレコードという。
レコードの集まりをファイルという。
オペレーティングシステムからみたファイル
一般に、補助記憶装置に記憶された一つのグループ
データをファイルという。
広義のファイル
145
1
C言語とストリーム
プログラムでの処理データの流れ
入力元
プログラム
出力先
入力ストリーム
出力ストリーム
stdin
stdout
stderr
キーボード
画面
printf()
scanf()
入力元、出力先をファイルにする方法を学ぶ。
146
ファイルの指定
プログラム中で
x = 20;
ファイルを“変数”のように扱う。
y = a + 10;
(2) “変数”に対して値を書き込んだり、読み出したりする。
(1)
変数” は FILE *outfp; のように定義する。
とファイルとは、 outfp = fopen(“seiseki.dat”, “w”);
(1) “
fp
ファイル名 書き込みモード
(2) fprintf( outfp, “%d %f”, a, b);
printf(“%d %f”, a, b);
147
ファイルへの入出力
例題 9-1 のプログラムを作成し、一件のデータを書き込む。
gedit
でファイル deiseki.datを開き、内容を確認する。
ファイル関連処理:
fopen
fprintf
fclose
printf
scanf
例題9-2
fscanf
148
2
複数データとファイル
例題9-3
終了条件に達するまで入力を要求するプログラム。
Unix のEOF (End Of File)は CTRL+Dとなっている。
例題9-4
上で作成したmountain.dat の内容を読み出すプログラム。
149
ファイルの応用
の値を1度おきに 0度から360度まで
の三角関数表をファイルに出力しなさい。
なお、 tanの値が 極端に大きくなるときの工夫を
しなさい。
sin, cos, tan
150
比較的大きなファイル
授業のHPにある標高2000メートル以上の山の
データを読み出し、最も北にある山と最も西にある
山を出力してみなさい。
151
3