学生ゼミ資料 C言語2

C言語 ファイル入出力
2016年 吉田研究室
今日の内容
1. 前回の課題
2. ファイル入出力
1. 課題の解答
高さ 10 cm,上辺a cm,下辺b cmの台形の面積を求めよ
a cm
10 cm
b cm
2. ファイル入出力
scanf
printf
fscanf
fprintf
入力された文字列を読み込む関数
画面に文字列を出力する関数
指定したファイルから文字列を読み込む関数
指定したファイルに文字列を出力する関数
ファイルの使い方
1. ファイルのオープン(fopen)
2. 読み書き(fscanf,fprintf)
3. ファイルのクローズ(fclose)
任意のxとyを入力させ,それらを用いた四則計算の結果をファイルに出力する
ファイルポインタの宣言
FILE *ファイルポインタ;
出力ファイルを開く
ファイルポインタ
= fopen(“ファイル名”,”オープンモード”);
オープンモード
r:読み出し用にオープン
w:書き込み用にオープン
a:既に存在するファイルに追加する
出力ファイルに書き込む
fprintf(ファイルポインタ,“文字列”,変数);
出力ファイルを閉じる
fclose(ファイルポインタ);
ファイルから読み込んだxとyの値を用いて行った四則計算の結果をファイルに出力する
読み込むファイルを開く
ファイルポインタ
= fopen(“ファイル名”,”オープンモード”);
オープンモード
r:読み出し用にオープン
w:書き込み用にオープン
a:既に存在するファイルに追加する
ファイルからxとyの値を読み込む
fscanf(ファイルポインタ,“変換指定子”,&変数);
2.2. 練習問題
前回の課題(台形の面積を求めるプログラム)を用いて,
ファイルから上辺と下辺の長さを読み込み,
解答を別のファイルに出力するプログラムを作成せよ
1. ファイルのオープン
2. 読み書き
fscanf(ファイルポインタ,“変換指定子”,&変数);
fprintf(ファイルポインタ,“文字列”,変数);
3. ファイルのクローズ
2.2. 練習問題 解答
ファイルから上辺と下辺の長さを読み込み,
解答を別のファイルに出力するプログラムを作成せよ
3. 課題
長さl(m)の単純梁の中央にP(kN)の集中荷重がかかった場合の
C点における曲げモーメント(M)とたわみ(y)をそれぞれ求めよ
このとき,単純梁の長さl(m)と荷重P(kN)の大きさはあるファイルから読み込み,
得られた曲げモーメントとたわみは単位を明記した上で異なるファイルに出力すること
P (kN)
l/2 (m)
E=200(kN/mm2),I=5*10-5(m4)
累乗の書き方
• math.hを使用する
• #include<math.h>
l (m)
• 102→pow(10.0,2)
• x3→pow(x,3)