2013-10-01から1ヶ月間の記事一覧

20131031【C言語】構造体のサイズを調べる

お題 構造体のサイズを調べる プログラム概要 定義した構造体のサイズを表示する ソース #include <stdio.h> struct s_type { int i; char ch; int *p; double d; } s; int main(void) { printf("s_type size is %d bytes.\n", sizeof(struct s_type)); return 0; } </stdio.h>…

20131030【C言語】構造体を利用する

お題 構造体を利用する プログラム概要 構造体のメンバに標準入力で値を入力し、 最後にまとめて表示する ソース #include <stdio.h> struct s_type { int i; char ch; double d; char str[81]; } s; int main(void) { printf("Please input integer: "); scanf("%d",</stdio.h>…

20131029【C言語】配列をfwriteでファイルに書き出し、freadで配列に読み込む

お題 配列をfwriteでファイルに書き出し、freadで配列に読み込む プログラム概要 配列を1-20で初期化し、ファイルに書き出す。 そのファイルを読み込み、配列に読み込み、それを標準出力する ソース #include <stdio.h> #include <stdlib.h> int main(void) { FILE *fp; int num</stdlib.h></stdio.h>…

20131028【C言語】fprintfでファイルに出力する

お題 fprintfでファイルに出力する プログラム概要 ファイルを開き、そこにfprintfで出力する ソース #include <stdio.h> #include <stdlib.h> int main(void) { FILE *fp; /* Open File */ if *1 == NULL) { fprintf(stderr, "Cannot open file.\n"); exit(1); } fprintf(fp, "</stdlib.h></stdio.h>…

20131027【C言語】完全なエラーチェックをしながらファイルをコピーする

お題 完全なエラーチェックをしながらファイルをコピーする プログラム概要 コマンドライン引数でインプットファイルとアウトプットファイルを指定し、 インプットファイルからアウトプットファイルにコピーする。 その際、完全なエラーチェックを行う ソー…

20131026【C言語】タブを空白に変換しながらファイルをコピーする

お題 タブを空白に変換しながらファイルをコピーする プログラム概要 コマンドライン引数で受け取ったファイル名をインプット、アウトプットファイルとして、インプットファイルからアウトプットファイルにコピーする。 この際、タブ文字が含まれていた場合…

20131025【C言語】ファイルから特定の位置の数字を読み込む

お題 ファイルから特定の位置の数字を読み込む プログラム概要 ファイルを読み込み数字をユーザに入力させて、 その順番の値を表示する。 (ファイルの中身は、11 22 33のようになっており、バイナリファイルとする。) ソース #include <stdio.h> #include <stdlib.h> int main</stdlib.h></stdio.h>…

20131024【C言語】ランダムな数をファイルに書き込み

お題 ランダムな数をファイルに書き込む プログラム概要 ランダムな数をファイルに書き込みそれを読み込んで表示する ソース #include <stdio.h> #include <stdlib.h> int main(void) { FILE *fp; int i, num; /* Open File */ if *1 == NULL) { fprintf(stderr, "Cannot open r</stdlib.h></stdio.h>…

20131023【C言語】ファイルを一行ずつ確認しながらよみこむ

お題 ファイルを一行ずつ確認しながらよみこむ プログラム概要 ファイルを読み込み一行ずつ表示する その際、表示するかどうかを問い合わせる ソース #include <stdio.h> #include <stdlib.h> #include <ctype.h> int main(int argc, char *argv[]) { FILE *fp; char str[80]; char ch; /</ctype.h></stdlib.h></stdio.h>…

20131022【C言語】標準入出力だけでファイルをコピーする

お題 標準入出力だけでファイルをコピーする プログラム概要 リダイレクトで入力されたファイルをリダイレクトで別ファイルに出力する ソース #include <stdio.h> #include <stdlib.h> int main(void) { char ch; while(!feof(stdin)) { scanf("%c", &ch); if (feof(stdin)) bre</stdlib.h></stdio.h>…

20131021【C言語】fgetsを使う

お題 fgetsを使う プログラム概要 文字列入力を求め、入力のあった文字列の改行を削除して、 それを画面に表示する ソース #include <stdio.h> #include <string.h> int main(void) { char str[10]; int i; printf("Please input string: "); fgets(str, 10 ,stdin); /* Remove </string.h></stdio.h>…

20131020【C言語】ファイルを削除する

お題 ファイルを削除する プログラム概要 ファイルを削除する。削除するファイルを問い合わせる。 ファイルが存在しない場合はエラーを表示する。 ソース #include <stdio.h> #include <stdlib.h> #include <ctype.h> int main(void) { FILE *fp; char fname[80]; char ch; printf("Pleas</ctype.h></stdlib.h></stdio.h>…

20131019【C言語】remame関数を使う

お題 rename関数を使う プログラム概要 myfile.txtをyourfile.txtにファイル名を変更する ソース #include <stdio.h> int main(void) { if (rename("myfile.txt", "yourfile.txt")) fprintf(stderr, "File copy error happend.\n"); else fprintf(stderr, "Successful</stdio.h>…

20131018【C言語】rewindを使う

お題 rewindを使う プログラム概要 コマンドライン引数で指定されたファイルの中身を一度表示し、 rewindで先頭に戻って、再度表示する ソース #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { FILE *fp; char ch; /* Check arguments */ if (argc </stdlib.h></stdio.h>…

20131017【C言語】指定した数字をファイルから探す

お題 指定した数字をファイルから探す プログラム概要 コマンドライン引数でファイルと数字を指定し、 ファイルから数字を探して何バイト目か表示する ソース #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { FILE *fp; unsigned char ch, val; /* </stdlib.h></stdio.h>…

20131017【C言語】ファイルの中身を1byteおきに表示する

お題 ファイルの中身を1byteおきに表示する ソース #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { FILE *fp; char ch; long l; if (argc != 2) { fprintf(stderr, "Usage: <Program Name> <File> <Name>.\n"); exit(1); } if *1 == NULL) { fprintf(stderr, "Cannot open fi</name></file></program></stdlib.h></stdio.h>…

20131015【C言語】ftellを使う

お題 ftellを使う プログラム処理概要 コマンドライン引数でインプットファイルとアウトプットファイルを指定 これら2つのファイルを開く インプットファイルの終端に移動する 終端から先頭に向って逆にアウトプットファイルにコピーする ファイルを閉じる …

20131014【C言語】fwriteでファイルに書き出す

お題 fwirteでファイルに書き出す ソース #include <stdio.h>#include <stdlib.h> int main(int argc, char *argv[]){ FILE *fp1, *fp2; int count = 0; double d; char ch, uch; /* Open values file */ if *1 == NULL) { fprintf(stderr, "Error while opening values file.\n</stdlib.h></stdio.h>…

20131013【C言語】配列の中身を一度に書き込む

お題 配列の中身を一度にファイルに書き込む プログラム概要 10個の要素を持つ浮動小数点型の配列を用意し、 fwriteを使って一度でファイルに書き込む。 その後、そのファイルを読み込んで 一度で配列に読み込み、配列の要素を画面に表示する。 ソース #incl…

20131012【C言語】freadとfwriteを使う part2

お題 freadとfwriteを使う プログラム処理概要 10個の配列要素をファイルに書き込み、 再び読み込んで標準出力する。 ソース #include <stdio.h>#include <stdlib.h> int main(int argc, char *argv[]){ FILE *fp; int i; double d[10] = { 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, </stdlib.h></stdio.h>…

20131011【C言語】freadとfwriteを使う

お題 freadとfwriteを使う プログラム概要 100をmyfileにバイナリで書き出し、 myfileを読み込んで内容を標準出力する。 ソース #include <stdio.h>#include <stdlib.h> int main(int argc, char *argv[]){ FILE *fp; int i; /* Open for write */ if *1 == NULL) { fprintf(std</stdlib.h></stdio.h>…

20131010【C言語】ファイルをコピーする

お題 ファイルをコピーする プログラム処理概要 コマンドライン引数でコピー元ファイルとコピー先ファイルを指定し、 ファイルをコピーする ソース #include <stdio.h>#include <stdlib.h> int main(int argc, char *argv[]){ FILE *fp1, *fp2; char str[80]; /* Check arg coun</stdlib.h></stdio.h>…

20131009【C言語】行数を指定してテキストファイルの内容を画面に表示する

お題 行数を指定してテキストファイルの内容を画面に表示する プログラム処理概要 コマンドライン引数でセットされたファイル名を読み込み 指定された行数(23行)だけ表示する。 23行表示した後は、続けて表示するか確認する。 'n'が入力された場合は、処理…

20131008【C言語】電話帳アプリを作る

お題 電話帳アプリを作る ソース #include <stdio.h>#include <string.h>#include <stdlib.h> char names[100][40];char numbers[100][40]; int loc = 0; void enter(void);void load(void);void save(void);void find(void); int main(void){ int choice; char str[2]; do { printf("1. I</stdlib.h></string.h></stdio.h>…

20131007【C言語】fprintfとfscanfを使う

お題 fprintfとfscanfを使う。 プログラム処理概要 コマンドラインで指定されたファイルに固定値を書き込み、 そのファイルを読み込んで画面に表示する。 ソース #include <stdio.h>#include <stdlib.h>#include <string.h> int main(int argc, char *argv[]){ FILE *fp; double ld; int d</string.h></stdlib.h></stdio.h>…

20131006【C言語】fputsとfgetsを使う

お題 fputsとfgetsを使う プログラムは入力された行を読み込んで、 ファイルに書き込んで、ファイルの中身を表示する。 ソース #include <stdio.h>#include <stdlib.h>#include <string.h> int main(int argc, char *argv[]){ FILE *fp; char str[80]; /* Check arg count */ if (argc != </string.h></stdlib.h></stdio.h>…

20131005【C言語】ファイルの中身を交換する

お題 ファイルの中身を交換する ソース #include <stdio.h>#include <stdlib.h> int main(int argc, char *argv[]){ FILE *fp1, *fp2, *fptemp; char ch; /* Check arg count */ if (argc != 3) { fprintf(stderr, "Usage: <Program Name> <File1> <File2>.\n"); exit(1); } /* Open File1 for read */ if *1</file2></file1></program></stdlib.h></stdio.h>…

20131004【C言語】ファイルのバイト数を調べる

お題 ファイルのバイト数を調べる ソース #include <stdio.h>#include <stdlib.h> int main(int argc, char *argv[]){ FILE *fp; char ch; long l = 0; /* Check arg count */ if (argc != 2) { fprintf(stderr, "Usage: <Program Name> < File Name>.\n"); exit(1); } /* Open Input File */ </program></stdlib.h></stdio.h>…

20131003【C言語】ファイルの中身が同じであることを確認する

お題 ファイルの中身が同じであることを確認する。 2つのファイルをコマンドライン引数で入力し、比較する。 ソース #include <stdio.h>#include <stdlib.h> int main(int argc, char *argv[]){ FILE *fp1, *fp2; char ch1, ch2, same; unsigned long l; /* Validate argc count</stdlib.h></stdio.h>…

20131002【C言語】ferrorとfeofでファイルエラー検知を行う

お題 ferrorとfeofでファイルエラー検知を行う ファイルをコピーするプログラムを作成する (コマンドライン引数でコピー元ファイルとコピー先ファイルを指定する) ソース /* This program copies file */#include <stdio.h>#include <stdlib.h> int main(int argc, char *argv</stdlib.h></stdio.h>…