C言語応用 プログラムの分かれ道 if文・その1 もしも・・・ならば~ if文 if (式) 文 ; 文 式は非0 式の評価 何もしない 式は0 if文の流れ Ex) if (a>b) printf(“aはbより大きい\n”); 式の値と評価 評価 5 2 x + y 4 8 x < y 7 1 式は、原則としてその値を評価することができる。 参考プログラム http://www.center.nitech.ac.jp/~sfukui/ouyou/list3-1.c 関係演算子と等価演算子 関係演算子 < > <= >= 左オペランドが右オペランドより小さければ1、そうでなければ0 左オペランドが右オペランドより大きければ1、そうでなければ0 左オペランドが右オペランド以下であれば1、そうでなければ0 左オペランドが右オペランド以上であれば1、そうでなければ0 等価演算子 = = 左オペランドと右オペランドが等しければ1、そうでなければ0 ! = 左オペランドと右オペランドが等しくなければ1、そうでなければ0 if文・その2 もしも・・・ならば~そうでなければ~ if文その2 if (式) 文1 else 文 2 ; 式は非0 文1 式の評価 式は0 文2 if文の流れ Ex) if (a>b) printf(“aはbより大きいです。\n”); else printf(“aはb以下です。\n”); 複文 文とは1つの命令文のことである if文に続く文は1つの命令文である。 Ex) printf(), scanf(),・・・ if文に続く文が1つではない場合は 複文を使う {文;文;文;} {}で囲うことで1つの文とみなすことができる。 多重分岐 if文による多重分岐 if (a==0) printf(“0です。\n”); else 文1 文1 if (a==1) printf(“1です。\n”); 文2 else if (a==2) 文2 printf(“2です。\n”); else printf(“0,1,2以外です。\n”); switch文 switch文による多重分岐 switch (式) 文 switch (a) { case 1 : 文1 ; 文2 ; break; case 2 : 文3 ; case 5 : 文4 ; break; case 6 : case 7 : 文5 ; default : 文6 ; } aを評価 1の場合 2の場合 5の場合 6,7の場合 それ以外 文1 文2 文3 文4 文5 文6 キーワード キーワードとは C言語では、if や else のような語句には、特別な意 味がある。このような語句のことをキーワードと呼び、 変数名などとして利用することはできない。 auto do goto signed unsigned break double if sizeof void case else int static volatile char enum long struct while const extern regist switch C言語のキーワード continue float return typedef default for short union 識別子 識別子とは プログラマが使う変数にも命名の規則がある。 変数名や関数名などの名前のことを識別子と呼ぶ。 ○最初の文字は必ず英字であること。 ただし、ここでの英字とは、アルファベットだけでなく下線( _ )も含む。 ○2文字目以降は英字でも数字でもよい。 ○大文字と小文字は区別される。 演習 List3-1.c および List3-2.c を実行して結果を確か めよ。 2つの整数a,bを読み込んで、bがaの約数であれ ば「bはaの約数です。」と表示するプログラムを 作成せよ。 ヒント:bがaの約数であるとき、aをbで割った剰余は0となる。 List3-3.cのプログラムをswitch文を用いて書き直 せ。
© Copyright 2024 ExpyDoc