Microsoft PowerPoint - 14th.ppt [互換モード]
|
|
|
- とき しもかさ
- 8 years ago
- Views:
Transcription
1 工学部 組 ( 奇数学籍番号 ) 担当 : 長谷川英之 情報処理演習 第 14 回 2011 年 1 月 20 日 1
2 今日のテーマ ファイル入出力 ですが, キーボード入力などもおさらいします 2
3 標準入力 キーボードで入力 : 標準入力という例 )scanf( %d,&i) 前回までの講義でファイルからデータを読み込む場合に使用した関数 : fscanf 例 )fscanf(fin, %d,&i) fscanf は, ファイルからの入力以外にも使用できる. ファイルからデータを読み込んだ場合の fin などはファイルポインタであったので, ファイルから入力される. したがって,fin の代わりに標準入力を示す stdin を使用すれば,fscanf を使用してキーボード入力ができる. 例 )fscanf(stdin, %d,&i) scanf では, 暗示的に標準入力 stdin が指定されている. つまり, scanf( %d,&i) と fscanf(stdin, %d,&i) は同一 3
4 標準出力 コンソールに表示 : 標準出力という例 )printf( %d,i) 前回までの講義でファイルにデータを書き込む場合に使用した関数 : fprintf 例 )fprintf(fin, %d,i) fprintf は, ファイルへの出力以外にも使用できる. ファイルにデータを書き込んだ場合の fin などはファイルポインタであったので, ファイルへ出力される. したがって,fin の代わりに標準出力を示す stdout を使用すれば,fprintf を使用してコンソールへ出力できる. 例 )fprintf(stdout, %d,i) printf では, 暗示的に標準出力 stdout が指定されている. つまり, printf( %d,i) と fprintf(stdout, %d,i) は同一 4
5 1 文字だけの標準入力, 標準出力 h14.c #include <stdio.h> main() { int c; c=getchar(); int getchar() 1 文字を標準入力する関数. 文字を入力するが, 関数自体はint 型として定義されている. int putchar(int c) 1 文字を標準出力する関数. 文字を出力するが, 引数はint 型である. } putchar(c); 1 文字を標準する場合でも, 例 ) a (Enter) と入力する必要がある. つまり,a と, 改行を示す n が保存される必要がある.a を表現するために 1 バイト必要なので char 型 (1 バイトでは a しか記憶できないので問題となる. そこで,int 型 (2 バイトもしくは 4 バイト ) として定義されている. 5
6 アスキーデータとバイナリデータ アスキー (ASCII) 形式ヒトに分かりや易いテキスト ( 文字 ) として表現するためのデータフォーマット. 例えば,6 や b などの半角文字は全て 1 バイト (8 bit, 2 進数で 8 桁 ) のアスキーコードで表現され, 標準出力関数はそのコードをもとに,6 や b などと表示する. バイナリ形式文字や数字などを全て 2 進数で表現したもの. 全てアスキー形式で表現した方が分かり易いのでは? 例 )short 型 (2バイト) の変数 a=16384をアスキー形式およびバイナリ形式で表現アスキー形式 bit 5 = 40 bit (5バイト) バイナリ形式 (10 進数 )= (2 進数 ) 16 bit (2 バイト ) アスキーデータの方がデータサイズとしては大きくなる. 6
7 ファイル入出力の手順 ファイルポインタの宣言 FILE *fp; ファイルを開く fp=fopen( ファイル名, モード ); ファイルを読む / 書き込む fscanf, fprintf など ファイルを閉じる fclose(fp) 7
8 ファイルのオープン ファイルを開く : fp=fopen( ファイル名, モード ); ファイル名 のファイルを, 指定した モードで開く 下記のモードが使用可 モード 動作 ファイルがある場合 ファイルがない場合 r 読み込み ファイル内容を読込可 エラー : NULLを返す w 書き込み 元の内容を破棄して上書き 新規作成 a 追加 最後に追加書き込み 新規作成 r+ 読込 & 書込 読み込み & 書き込み可 エラー : NULLを返す w+ 読込 & 書込 読み込み & 書き込み可 元の内容は破棄される 新規作成 a+ 読込 & 追加書込読込 & 最後に追加書込新規作成 8
9 #include <stdio.h> main() { int a; float x; char s[16]; FILE *fp; アスキーファイルの入出力 scanf( %d %f %s,&a,&x,s); fp=fopen( test.txt, w ); fprintf(fp, %d %f %s,a,x,s); fclose(fp); fp=fopen( test.txt, r ); fscanf(fp, %d %f %s,&a,&x,s); fclose(fp); } printf( a, x, s = %d, %f, %s n,a,x,s); 9
10 アスキーファイルの入出力 : 1 文字入出力 #include <stdio.h> main() { int a; FILE *fp; a=getchar(); fp=fopen( test.txt, w ); putc(a,fp); fclose(fp); fp=fopen( test.txt, r ); a=getc(fp); fclose(fp); } putchar(a); 10
11 #include <stdio.h> main() { char s[16]; FILE *fp; アスキーファイルの入出力 : 1 行入出力 scanf( %s,s); } fp=fopen( test.txt, w ); fputs(s,fp); fclose(fp); fp=fopen( test.txt, r ); fgets(s,15,fp); fclose(fp); printf( %s n,s); この例の場合,15-1=14 個の文字がファイルから読み込まれ, s[0] から s[13] に格納される. s[14] には, 文字列の最後を示すヌル文字 ( 0) が格納される. もし, ファイルに書かれていた文字の数が 14 個より少ないときは, 行の末尾まで ( 改行コードが検出されるまで ) 読み込む. 11
12 バイナリデータの読み込み : 心電図データのダウンロード まず, 心電図データを からダウンロード ダウンロードしたファイルは皆さんが作る C プログラムと同じディレクトリに保存して下さい. この 2 つをダウンロードして下さい. 12
13 #include <stdio.h> #define nnn 850 main() { int i; float ecg[nnn+1]; FILE *fp; バイナリファイルの入出力 fp=fopen("./ecg.bin","rb"); fread(ecg,sizeof(float),nnn,fp); fclose(fp); fp=fopen("./ecg2.txt","w"); for(i=0;i<nnn;++i) fprintf(fp,"%f n",ecg[i]); fclose(fp); バイナリデータを読み込む 読み込んだバイナリデータを, アスキーデータとして保存. (gnuplot で確認するため ) } fp=fopen("./ecg2.bin","wb"); fwrite(ecg,sizeof(float),nnn,fp); fclose(fp); 読み込んだバイナリデータを, バイナリデータとして再度保存 ( 元のファイルと同じサイズになるか確認するため ). 13
14 バイナリデータ入出力方法 fopen のモード指定モードの指定は, アスキーデータの場合はこれまで r ( 読み込み ) もしくは w ( 書き込み ) のみ指定していましたが, バイナリデータの場合は, rb ( 読み込み ), wb ( 書き込み ) を使用します. バイナリデータ読み込み関数 fread 使用法 : fread( 読込データを保存する配列名,sizeof( 配列の型 ), データの数, ファイルポインタ ) 例 : fread(ecg,sizeof(float),nnn,fp) 意味 : ファイルポインタfpが示すファイルから,floatのサイズ(4バイト) のデータを nnn 個読み込んで, 配列 ecgに格納. 格納するときのデータ型は配列の型とする. sizeof() は, カッコ内に指定したデータ型のサイズを示す. バイナリデータ書き込み関数 fwrite 使用法 : fwite( 読込データを保存する配列名,sizeof( 配列の型 ), データの数, ファイルポインタ ) 例 : fread(ecg,sizeof(float),nnn,fp) 意味 : 配列 ecgのnnn 個の要素それぞれを, その配列のデータ型 (float) のサイズ (4バイト) でファイルポインタfpが示すファイルに書き込む. 14
15 アスキーデータとバイナリデータのサイズの違い [xxxxxxxxxxxxxxxxxxxxxxxxxx]% ファイルサイズ (bytes) ecg.bin は,ecg.txt( アスキーデータ ) をバイナリデータに変換しただけですが, アスキーデータ (ecg.txt) に比べ, バイナリデータ (ecg.bin) はかなり小さくなっていることが分かります. 15
16 バイナリデータの読み込み結果の確認 [xxx]% gnuplot gnuplot> plot ecg.txt w l gnuplot> replot ecg2.txt w l ecg.bin が正常に読み込まれていれば,ecg.txt と ecg2.txt は一致 16
17 fwrite による書き込み結果の確認 [xxxxxxxxxxxxxxxxxxxxxxxxxx]% ファイルサイズ (bytes) ecg.bin は,ecg.txt( アスキーデータ ) をバイナリデータに変換しただけですが, アスキーデータ (ecg.txt) に比べ, バイナリデータ (ecg.bin) はかなり小さくなっていることが分かります. ecg2.bin が正常に書き込まれていれば, 元のデータファイル ecg.bin のサイズと同一になります. 17
18 課題 Q の第 14 回のところにある課題用データ (data.bin) をダウンロードする. データファイルdata.binには, 本資料 13ページで扱ったecg.binと同様に数値データがバイナリ形式で保存されている (1 行に羅列 ). データの数は 75 75=5625, データの型 shortである.data.binのデータを, 本講義資料 13ページのプログラムと同様の要領でfreadを用いて読み出して配列 img[i] に格納する. 読み込んだデータは75 点 75 点の画像データなので, 次ページ以降の要領でgnuplotで3 次元表示できる形式のテキストファイル (data.txt) に保存するプログラムを作成して下さい (data.txtのデータの並べ方は, 第 4 回資料 8ページも参考になると思います ). まずは, 本資料 13ページのようにファイルからfreadを用いてバイナリデータを配列 img[i] に格納するところを参考にプログラムを作り始めて下さい. 後は, 配列 img[i] の内容をgnuplotで表示できるようにテキストファイルに保存すればOKです. 18
19 データが並んでいるイメージ img[0] img[1] img[2] img[3] data.bin に入っているデータの構造 i = 0, j = 0 のデータ i = 1, j = 0 のデータ i = 2, j = 0 のデータ i = 73, j = 0 のデータ i = 74, j = 0 のデータ i = 0, j = 1 のデータ i = 1, j = 1 のデータ i = 74, j = 1 のデータ i = 0, j = 2 のデータ i = 74, j = 74 のデータ 画像は点の集合 2 次元画像であれば, 座標 (i, j) の点の色を数値データで表現する. 全部で 個のデータ = j = i 画像 ( 点の集合 )
20 img[0] img[1] img[2] img[3] データが並んでいるイメージ gnuplot で表示させたときのデータの並び i = 0, j = 0 のデータ i = 1, j = 0 のデータ i = 2, j = 0 のデータ i = 73, j = 0 のデータ i = 74, j = 0 のデータ i = 0, j = 1 のデータ i = 1, j = 1 のデータ i = 74, j = 1 のデータ i = 0, j = 2 のデータ i = 74, j = 74 のデータ gnuplot の 3 次元表示で下記のように表示されるようにしたい 波形 j j = 1 j = 2 j = 3 j = 74 j = 75 i 番目 i=1 i=2 i=3 i=74 i=75 各マスには波形 i の j 番目の数値データが色で表示される. 20
21 変換前データファイル data.bin データをファイルに出力する際の並べ方 変換後データファイル ( ファイル名は何でも良い ) i= 0, j= 0 のデータ i= 1, j= 0 のデータ i= 2, j= 0 のデータ i=73, j= 0 のデータ i=74, j= 0 のデータ i= 0, j=1 のデータ i= 1, j=1 のデータ i=74, j=1 のデータ i= 0, j=2 のデータ i=74, j=74 のデータ i j データ 0 0 i= 0, j= 0 のデータ 1 0 i= 1, j= 0 のデータ 2 0 i= 2, j= 0 のデータ 73 0 i=73, j= 0 のデータ 74 0 i=74, j= 0 のデータ 0 1 i= 0, j=1 のデータ 1 1 i= 1, j=1 のデータ 74 1 i=74, j=1 のデータ 0 2 i= 0, j=2 のデータ i=74, j=74 のデータ j( 行 ) の変わり目に空行が必要 j( 行 ) の変わり目に空行が必要 21
22 変換後データファイルを gnuplot で 3 次元表示 [xxx]$ gnuplot gnuplot> set pm3d map gnuplot> splot data.txt 変換後データファイル名が data.txt の場合 並べ替えた結果が正しいかどうかは表示結果を見ればすぐに分かると思います. 22
23 以降, 第 4 回資料より抜粋 ( 参考 ) 23
24 課題 (Q c) 参考 本資料 7 ページで計算した関数 z = sin(x) sin(y) は,x, y, z の 3 次元データであるため, グラフ表示も 3 次元にする必要がある. 本資料 7 ページのプログラムで計算したデータを, 次ページに記す,gnuplot で 3 次元表示するためのフォーマットに並べ替えてアスキー ( テキスト ) ファイルに保存するプログラムを作成して下さい. 前ページのプログラムの計算結果を, 次のページで説明してある形式でファイルに出力する方法を考える, ということです
25 [xxx]$ gnuplot gnuplot> set pm3d gnuplot> splot result.txt z gnuplot で 3 次元表示するためのファイルフォーマット 参考 gnuplot は3 次元表示も可能 3 次元表示に必要なファイルの構造今回は set pm3d map と入力. 点と点の間隔を細かくして滑らかに表示させるなど工夫してみて下さい. 様々な関数を表示できます. x y z x y z の値 y = 0 の場合のデータ y の値が変わるところに空行が必要 y = 1 の場合のデータ 25
26 課題 Q c の解答例 #include <stdio.h> #include <math.h> #define pi #define kizami 12 main() { int i,j; float phase,phase2,result; FILE *fout; } fout=fopen("result.txt","w"); for(i=0;i<kizami;++i){ for(j=0;j<kizami;++j){ phase=2*pi*i/kizami; phase2=2*pi*j/kizami; result=sin(phase)*sin(phase2); fprintf(fout,"%d %d %f n",i,j,result); } fprintf(fout," n"); } fclose(fout); 26
PowerPoint Presentation
工学部 6 7 8 9 10 組 ( 奇数学籍番号 ) 担当 : 長谷川英之 情報処理演習 第 7 回 2010 年 11 月 18 日 1 今回のテーマ 1: ポインタ 変数に値を代入 = 記憶プログラムの記憶領域として使用されるものがメモリ ( パソコンの仕様書における 512 MB RAM などの記述はこのメモリの量 ) RAM は多数のコンデンサの集合体 : 電荷がたまっている (1)/ いない
情報処理演習 B8クラス
予定スケジュール ( 全 15 回 ) 1 1. 終了 プログラミング言語の基礎 2. 終了 演算と型 3. 終了 プログラムの流れの分岐 (if 文,switch 文など ) 4. 終了 プログラムの流れの繰返し (do, while, for 文など ) 5. 終了 中間レポート1 6. 終了 配列 7. 終了 関数 8. 終了 文字列 ( 文字列の配列, 文字列の操作 ) 9. 終了 ポインタ
Taro-ファイル処理(公開版).jtd
ファイル処理 0. 目次 1. はじめに 2. ファイル内容の表示 3. ファイル内容の複写 3. 1 文字単位 3. 2 行単位 4. 書式付き入出力 5. 文字配列への入出力 6. 課題 6. 1 課題 1 ( ファイル圧縮 復元 ) - 1 - 1. はじめに ファイル処理プログラムの形は次のようになる #include main() { FILE *fp1,*fp2; ファイルポインタの宣言
Microsoft PowerPoint - prog04.ppt
プログラミング言語 2 第 04 回 (2007 年 05 月 14 日 ) 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 1 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/language/ にアクセスすると 教材があります 2007 年 05 月 14 日分と書いてある部分が 本日の教材です 本日の内容
Microsoft Word - Cプログラミング演習(10)
第 10 回 (6/25) 3. ファイルとその応用 (3) ファイルの更新 シーケンシャルファイルの更新 シーケンシャルファイルでは, 各レコードが可変長で連続して格納されており, その中の特定のレコードを変更することができない そこで一般的には, マスタファイルからデータを取り出し, 更新処理を行ったあとに新マスタファイルに書き込む 注 ) マスタファイル : 主ファイル, 基本ファイルと呼ばれるファイルで内容は比較的固定的であり,
PowerPoint Presentation
ファイルの入出力 芝浦工業大学情報工学科 青木義満 今回の講義内容 ファイル入出力 ファイルからのデータ読込み ファイルと配列 2 1 ファイルへのデータ書き込み ( 復習 ) ソースファイル名 :fileio1.c データをファイルに書き込み #include int main(void) { ファイルポインタ宣言 int student_id = 100; char name[
ファイル入出力
C プログラミング Ⅱ の基礎 とは ファイルへデータを書き込んだり ( 出力 ), ファイルからデータを読み込んだり ( 入力 ) する C 言語では キーボードからの入力 画面への出力と同じようなコードで 処理を実現できる プログラム 入力 出力 ファイル 出力 入力 2 入出力の基本 ストリーム プログラム上で様々な装置への入出力を行う機構様々な入出力装置を統一的な方法で扱うことができる ハードディスクなどではファイルデータによって入出力が行われる
C プログラミング演習 1( 再 ) 2 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ
C プログラミング演習 1( 再 ) 2 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ 今回のプログラミングの課題 次のステップによって 徐々に難易度の高いプログラムを作成する ( 参照用の番号は よくわかる C 言語 のページ番号 ) 1. キーボード入力された整数 10 個の中から最大のものを答える 2. 整数を要素とする配列 (p.57-59) に初期値を与えておき
C言語講座 ~ファイル入出力編~
C 言語講座 ~ ファイル入出力編 ~ ポインタ使います 例 2 練習問題 3 初めに プログラムを組む上での話と今回の演習について 例えばこの画面の場合 背景の動画の描写 ノーツを流れてくるようにする ボタンを押したら違反亭ライン近くのノーツは消えるようにする処理 曲の難易度ごとに判定を追加とか残りの処理 完成 演習 1 クリア 演習 2 クリア 過程は各自で考えてください 演習 3 クリア ファイルの出入力でこれからやること
PowerPoint プレゼンテーション
シミュレーション基礎 (8) 第 6 章ファイル入出力 7.2 テキストファイルの読み書き ファイルに書き込む : EX70201: X=1:10;Y=[X;X.^2]; Fid=fopen('datal.txt', wt'); fprintf(fid,'%2d%5d n',y); C 言語と同じ手順 : ファイルをオープンするファイルに変数の値を書き込む ( 整数 2 桁, 整数 5 桁, 改行
02: 変数と標準入出力
C プログラミング入門 基幹 7 ( 水 5) 1 10: ファイル入出力 Linux にログインし 以下の講義ページを開いておくこと http://www-it.sci.waseda.ac.jp/teachers/w48369 2/CPR1/ 2016-06-15 今日の内容 2 標準ライブラリ関数によりファイルの出力を行う画像ファイルの生成を例題として 配列の作成を復習する 文字列の扱いを復習する
Microsoft PowerPoint - prog06.ppt
プログラミング言語 2 第 06 回 (2007 年 06 月 11 日 ) 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 1 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/language/ にアクセスすると 教材があります 2007 年 06 月 11 日分と書いてある部分が 本日の教材です 本日の内容
FORTRAN( と C) によるプログラミング 5 ファイル入出力 ここではファイルからデータを読みこんだり ファイルにデータを書き出したりするプログラムを作成してみます はじめに テキスト形式で書かれたデータファイルに書かれているデータを読みこんで配列に代入し 標準出力に書き出すプログラムを作り
FORTRAN( と C) によるプログラミング 5 ファイル入出力 ここではファイルからデータを読みこんだり ファイルにデータを書き出したりするプログラムを作成してみます はじめに テキスト形式で書かれたデータファイルに書かれているデータを読みこんで配列に代入し 標準出力に書き出すプログラムを作ります FORTRAN の場合 OPEN 文でファイルを開いた後 標準入力の場合と同様に READ 文でデータを読みこみます
PowerPoint プレゼンテーション
プログラミング応用演習 第 3 回構造体, ファイル入出力 先週の出席確認へのコメント 暗号を破りたいが 平文の候補が多すぎる 人間の目で確認する代わりに どんなプログラムがあればよいか? 辞書を挙げた人が多かった 正しい着眼です 何億個もの平文候補が想定されるので 形態素解析や品詞判別を挙げた人もいます 辞書に近い回答で悪くはないのですが 平文候補ごとにあまり高機能なものを呼び出すと時間がかかる
memo
数理情報工学演習第一 C プログラミング演習 ( 第 5 回 ) 2015/05/11 DEPARTMENT OF MATHEMATICAL INFORMATICS 1 今日の内容 : プロトタイプ宣言 ヘッダーファイル, プログラムの分割 課題 : 疎行列 2 プロトタイプ宣言 3 C 言語では, 関数や変数は使用する前 ( ソースの上のほう ) に定義されている必要がある. double sub(int
Microsoft PowerPoint - kougi2.ppt
C プログラミング演習 第 2 回 Microsoft Visual Studio.NET を使ってみよう 説明 例題 1. プログラム実行の体験 コンピュータを役に立つ道具として実感する 次ページのプログラムを使って, Microsoft Visual Studio.NETでの C++ ソースファイル編集, ビルド, テスト実行の一連の過程を体験する 例題 1 のプログラムの機能 計算の繰り返し
Microsoft PowerPoint - kougi4.ppt
C の実行モデル 自由落下距離 前回の授業の 例題 1 の復習と重要事項 の確認 地上で物を落とし始めた後の自由落下距離を 求める 重力加速度 g は 9.8 とする 自由落下距離を求めるために, プログラム中に, 計算式 y = ( 9.8 / 2.0 ) * x * x を書く C++ ソースファイルの編集 編集画面 編集中のファイル名 関係するファイルなどが表示される ビルド結果などが表示される画面
Cプログラミング1(再) 第2回
C プログラミング 1( 再 ) 第 2 回 講義では Cプログラミングの基本を学び演習では やや実践的なプログラミングを通して学ぶ 1 前回のレポートから 前回の宿題 数あてゲーム の説明において 次のように書いていたものがいた : これはコンピュータがランダムに設定した数字を人間が当てるゲームである この説明でどこかおかしなところはないだろうか? 2 コンピュータの用語と日常的な用語の違い 物理において
格子点データの解析 1 月平均全球客観解析データの解析 客観解析データや衛星観測データのような格子点データは バイナリ形式のデータファイルに記録されていることが多いです バイナリ形式のデータファイルは テキスト形式の場合とは異なり 直接中身を見ることができません プログラムを書いてデータを読み出して
格子点データの解析 1 月平均全球客観解析データの解析 客観解析データや衛星観測データのような格子点データは バイナリ形式のデータファイルに記録されていることが多いです バイナリ形式のデータファイルは テキスト形式の場合とは異なり 直接中身を見ることができません プログラムを書いてデータを読み出して解析するのが普通です ここでは 全球客観解析データを用いてバイナリ形式のファイルに記録された格子点データの解析について学びたいと思います
PowerPoint プレゼンテーション
2018/10/05 竹島研究室創成課題 第 2 回 C 言語演習 変数と演算 東京工科大学 加納徹 前回の復習 Hello, world! と表示するプログラム 1 #include 2 3 int main(void) { 4 printf("hello, world! n"); 5 return 0; 6 } 2 プログラム実行の流れ 1. 作業ディレクトリへの移動 $ cd
プログラミング及び演習 第1回 講義概容・実行制御
プログラミング及び演習 第 6 回ファイル ( 教科書第 9 章 ) (2014/05/23) 講義担当情報連携統轄本部情報戦略室大学院情報科学研究科メディア科学専攻教授森健策 本日の講義 演習の内容 ファイル第 9 章 講義 演習ホームページ http://www.newves.org/~mori/14programming ところで, 現在までに教科書第 1-8 章を終了 段々難しくなっていると思いますか?
画像ファイルを扱う これまでに学んだ条件分岐, 繰り返し, 配列, ファイル入出力を使って, 画像を扱うプログラムにチャレンジしてみよう
第 14 回 応用 情報処理演習 ( テキスト : 第 10 章 ) 画像ファイルを扱う これまでに学んだ条件分岐, 繰り返し, 配列, ファイル入出力を使って, 画像を扱うプログラムにチャレンジしてみよう 特定色の画素の検出 ( テキスト 134 ページ ) 画像データが保存されているファイルを読み込んで, 特定色の画素の位置を検出するプログラムを作成しなさい 元画像生成画像 ( 結果の画像 )
プログラミング演習 土曜日(Q組)
プログラミング演習 土曜日 (Q 組 ) 主なテーマ 標準入出力とファイル処理 (8 章 ) 1 ストリームの概念 8.1 標準入出力 (C++) C++ では データの入出力を ストリーム という概念で操作する ストリームはデータを入出力処理し また 入出力に伴う 状態 を設定 / 保持する 例 : 現在 ファイルの何文字目を読み書きしているか などの情報 論理デバイス 物理デバイス 入力ストリーム
プログラミング基礎
C プログラミング Ⅱ 演習 2-1(a) BMI による判定 文字列, 身長 height(double 型 ), 体重 weight (double 型 ) をメンバとする構造体 Data を定義し, それぞれのメンバの値をキーボードから入力した後, BMI を計算するプログラムを作成しなさい BMI の計算は関数化すること ( ) [ ] [ ] [ ] BMI = 体重 kg 身長 m 身長
PowerPoint プレゼンテーション
プログラミング応用演習 第 5 回演習 前回までのお話 ポインタ ポインタを用いた文字列処理 構造体 ファイル 再帰的構造体 リスト構造 動的メモリ管理 今日のお題 ポインタやファイルなど これまでの内容の練習 教材 以前 以下に単語を収録したファイルがあることを紹介した : /usr/share/dict/words この中からランダムに単語を取り出したファイルを用意した http://sun.ac.jp/prof/yamagu/2019app/
PowerPoint プレゼンテーション
プログラミング応用演習 第 2 回文字列とポインタ 先週のパズルの解説 答え : 全部 p a 1 図の書き方 : p+1 は式であって その値を格納する記憶場所を考えないので 四角で囲まない 2 p+1 同じものを表すいろいろな書き方をしてみましたが パズル以上の意味はありません プログラム中に書くときは p+1 が短くていいんじゃないかな p+1 は 2 の記憶場所 p[1] は 2 に格納されている値
スライド 1
C# の基本 ~ ファイル読み込み ~ 今回学ぶ事 今回はファイル読み書きに必要 BinaryReader クラスについて記載する ファイル参照ダイアログである OpenFileDialog クラスについても理解を深める また Bitmap クラスを用いた Bitmap ファイルの読み込み方法についても学ぶ フォーム作り まず label picturebox を配置する ツールボックスより左クリックで選択する
Taro-ポインタ変数Ⅰ(公開版).j
0. 目次 1. ポインタ変数と変数 2. ポインタ変数と配列 3. ポインタ変数と構造体 4. ポインタ変数と線形リスト 5. 問題 問題 1 問題 2-1 - 1. ポインタ変数と変数 ポインタ変数には 記憶領域の番地が格納されている 通常の変数にはデータが格納されている 宣言 int *a; float *b; char *c; 意味ポインタ変数 aは 整数型データが保存されている番地を格納している
<4D F736F F D20438CBE8CEA8D758DC F0939A82C282AB2E646F63>
C 言語講座第 2 回 作成 : ハルト 前回の復習基本的に main () の中カッコの中にプログラムを書く また 変数 ( int, float ) はC 言語では main() の中カッコの先頭で宣言する 1 画面へ出力 printf() 2 キーボードから入力 scanf() printf / scanf で整数を表示 / 入力 %d 小数を表示 / 入力 %f 3 整数を扱う int 型を使う
バイオプログラミング第 1 榊原康文 佐藤健吾 慶應義塾大学理工学部生命情報学科
バイオプログラミング第 1 榊原康文 佐藤健吾 慶應義塾大学理工学部生命情報学科 ポインタ変数の扱い方 1 ポインタ変数の宣言 int *p; double *q; 2 ポインタ変数へのアドレスの代入 int *p; と宣言した時,p がポインタ変数 int x; と普通に宣言した変数に対して, p = &x; は x のアドレスのポインタ変数 p への代入 ポインタ変数の扱い方 3 間接参照 (
今回のプログラミングの課題 ( 前回の課題で取り上げた )data.txt の要素をソートして sorted.txt というファイルに書出す ソート (sort) とは : 数の場合 小さいものから大きなもの ( 昇順 ) もしくは 大きなものから小さなもの ( 降順 ) になるよう 並び替えること
C プログラミング演習 1( 再 ) 4 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ 今回のプログラミングの課題 ( 前回の課題で取り上げた )data.txt の要素をソートして sorted.txt というファイルに書出す ソート (sort) とは : 数の場合 小さいものから大きなもの ( 昇順 ) もしくは 大きなものから小さなもの ( 降順
Microsoft PowerPoint - CproNt02.ppt [互換モード]
第 2 章 C プログラムの書き方 CPro:02-01 概要 C プログラムの構成要素は関数 ( プログラム = 関数の集まり ) 関数は, ヘッダと本体からなる 使用する関数は, プログラムの先頭 ( 厳密には, 使用場所より前 ) で型宣言 ( プロトタイプ宣言 ) する 関数は仮引数を用いることができる ( なくてもよい ) 関数には戻り値がある ( なくてもよい void 型 ) コメント
1 C STL(1) C C C libc C C C++ STL(Standard Template Library ) libc libc C++ C STL libc STL iostream Algorithm libc STL string vector l
C/C++ 2007 6 18 1 C STL(1) 2 1.1............................................... 2 1.2 stdio................................................ 3 1.3.......................................... 10 2 11 2.1 sizeof......................................
