広島工大 前回の内容 • はじめてのC • コメント • 関数、main() • 文 情報基礎実習Ⅰ 1 広島工大 今日の内容 • 変数の型 • 入力と出力 情報基礎実習Ⅰ 2 広島工大 C言語の基礎 文(Sentence) 文は宣言文と実行文がある。文と文はセミコロン;で区切る。 #付きの行と関数の定義にはセミコロンは付けない 例:c03.c 予約語 予約語はC言語自身があらかじめ定義しキーワードとして 使うものなので、関数名と変数名として使うことができない。 情報基礎実習Ⅰ 3 広島工大 C言語の基礎 変数の型 C言語では使用する変数はすべて宣言する必要がある。 基本となるデータ型 int, char, float 他 short, long, unsigned, double 各型のデータのサイズはコンパイラに依存する 例:各種の変数の型の占めるサイズをバイト単位で求める。 情報基礎実習Ⅰ 4 広島工大 C言語の基礎 制御文字(エスケープシーケンス) printf(“Hello, welcome to C world.\n”); \0 \b \f \n \r \t \\ \’ \” ナル バックスペース 改ページ 改行 復帰 水平タブ バックスラッシュ コーテーション ダブルコーテーション 情報基礎実習Ⅰ 5 広島工大 入力と出力 • 特殊な場合を除いて入出力は必要である。 • 入出力は標準ライブラリ関数を用いて行う。 よく利用する入出力関数 scanf() --- 入力 printf() --- 出力 使い方はUNIXの場合manコマンドで参照できる。 情報基礎実習Ⅰ 6 広島工大 ヘッダファイル C言語でプログラムを書くとき、標準関数や予め定義したマクロ などを利用した場合、その関数はどのヘッダファイルに含んで いるのかコンパイラに教える必要がある。 例えば、scanf()やprintf()を使っている場合、プログラムの最初 のところで次の文が必要とする。 #include <stdio.h> その理由は、scanf()とprintf()の原型がstdio.hファイルに定義 されている。 情報基礎実習Ⅰ 7 出力関数printf() 広島工大 printf()の書式 printf(char *format,arg_list) これは文字列formatに従って、変数の値を標準出力に出力する 関数である。 例: Printf(“Hello World.\n”); Printf(“a = %d, b = %f\n”,a,b); 情報基礎実習Ⅰ 8 広島工大 入力関数scanf() scanf()の書式 scanf(char *format,arg_list) これは文字列formatに従って標準入力装置からデータを入力し 変数に代入する関数である。 変数に値を代入するためにscanf()関数の引数は変数のアドレス を指定するようになっている。 変数のアドレスは変数名の前に&(アンパサンド)をつけて表す。 例: Scanf(“%d”,&a); Scanf(“%d %d”,&a,&b); 情報基礎実習Ⅰ 9 scanf()とprintf()のformat 書式: 広島工大 %type typeにはd, o, x, X, f, e, c, sなどが指定できる。 一文字 文字列 十進数 十進数 仮数部と指数部 に分ける実数 %f 実数 %x 十六進数 %X 十六進数 %o 八進数 その他 %c %s %d %i %e 36という数字の進数が 分からないと意味は不明 情報基礎実習Ⅰ 10 getchar()とputchar()関数 広島工大 getchar()は標準入力から1文字(ASCII文字)を読み込み、その ASCIコードを値として返す。 戻り値は整数(integer)である。 引数を持たない関数である。 putchar()は1個のint型の引数を標準出力に送る。 例: putchar(c); この文について、 整数cの値をASCIIコードとして、そのコードをもつ文字を出力 情報基礎実習Ⅰ 11 広島工大 マクロ マクロ(macro) #define MAX 101 #define max(x,y) (((x)>(y)) ? (x): (y)) 上記のような#で始まる行はプリプロセッサで処理する。(書き直し 拡張Cソースプログラムを生成する。 ソースコードの中に表れる定型的文字列や一連の式や数字 などを簡単な文字列(マクロ)で定義し、ソースコードが簡潔 で理解しやすくなる。 コードにマクロを使うと、後から数値の変更が容易である。 例:マクロ定義を使ったプログラム例。 情報基礎実習Ⅰ 12
© Copyright 2024 ExpyDoc