【警告】 自分の席の周りにゴミを散乱させて、めちゃくちゃ汚くして帰っていった者がいますが、常識的なマナーに照らして到底許されることではないです。当然減点しますし、繰り返せば点がなくなります。
gcc ソースファイル名.c -o 実行ファイル名
./実行ファイル名
できたソースファイルは、以下のページから自分の番号のページを開いてアップロードしてください。C言語のソースファイルのみを提出すればいいです(a.outはいらない)。ファイルはいくつでも添付できます。紛らわしくないファイル名をつけてからアップロードしてください。
まず試しに、上で作成した「Hello world!」と表示するプログラムを、アップロードしてみてください。
キーボードから10個の整数を読み込んだ後、平均以上の数値と平均未満の数値に分けて表示するプログラムを作りなさい。
前回作成したLaTeXファイルの文書ファイルを開き、中身を読み出して、画面に表示するプログラムを作成しなさい。標準ライブラリ関数 fopen, fclose, getc, putchar を用いなさい。
コマンドラインで与えられた文字列を、標準ライブラリ関数 toupper を用いてすべて大文字に変換した後、画面に表示するプログラムを作成しなさい。(全部大文字に変換するecho)
./upecho I am a boy. I AM A BOY.
【コマンドライン引数】 プログラム実行時のコマンドラインの引数は、メインの引数として取得することができる。
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]); }
整数が1つ書き込まれたファイルをあらかじめ作っておく。コマンドの引数にそのファイル名を与えてコマンドラインから起動すると、引数で指定したファイルから整数を読み出して画面に表示するプログラムを作成しなさい.
以下に示すような動作をするプログラム「counter.c」を作成しなさい。その際、カッコ内の指定の関数を使用すること。
プログラムをコンパイルして動かし、きちんと動作することを確認してください。このプログラムは先の回で利用するので(たぶん)、分かるように保存しておいてください。
./counter 1 ./conter 2 ...以下続く...
課題5.のカウンタプログラムを改良して、コマンドオプションによって作動する以下のような機能を付け加えなさい。できるところまで機能を付け加えなさい。
./counter -k 一五 ./counter -n 15 ./counter -5 00016 ./counter -K 十七 ./counter -n -k 一七 ./counter -k -5 〇〇〇一八
課題2と同様なプログラムを、UNIXのシステムコール open, close, read, write を用いて作成しなさい。
以下に示すような動作をするプログラムを作成しなさい。
コピー元ファイル名? hogehoge.c コピー先ファイル名? fugafuga.c
cp hogehoge.c fugafuga.c
sin(0°)からsin(360°)までの値を、1°刻みで画面に表示するプログラムを作成しなさい。そのとき、出力を「popen」関数で起動した「more」コマンドに渡すことで1画面ずつ表示するようにしなさい。popen で more コマンドを起動し、そのファイルポインタに fprintf で出力を書き込めばよい。
UNIXの環境変数をすべて取得して表示するプログラムを作成しなさい。以下のコマンドと同じ出力結果になればよい。環境変数とは何か調べなさい。
printenv
上の課題をできるところまでやって、提出してください。
早々に全部終わってしまった人は、私に申し出てください。早すぎる場合には、課題を作ります(苦笑)。