TITLE:x * (3) if [#i3a5015c] -(by [[K]], 2011.02.14) *** (1) if命令の基本形 [#fe895776] -これから出てくるif命令というのは、次の形で使います。 if (条件式) { 命令 } -条件式というのは、 a == 1 とか b != c とか d > e * 3 とかそういうものです。ここで == は等しいという意味で、 != は等しくないという意味です。 --ここが見えにくいので違うフォントで書きますね。 条件式というのは、 a == 1 とか b != c とか d > e * 3 とかそういうものです。ここで == は等しいという意味で、 != は等しくないという意味です。 --普通の(1個の) = は変数に値を代入するために使っているので、比較のときは使えないのです。 -以上とか以下という書き方もできます。 <= とか >= です。これは =< とか => と書いてはいけません。必ず大小記号を先にしてください。 -そして条件式がもし成立していたら、 { } ではさまれた中身の命令を実行します。成立していないときは、実行しません。 -こんな説明を見てもよく分からないと思うので、まずは実例です。 *** (2) rei0008.c [#fa9d958d] int a; // printf("anataha... 1.boy 2.girl ? "); // scanf("%d", &a); a = inptInt("あなたは... 1.おとこのこ 2.おんなのこ ? "); if (a == 1) { printf("かっこいい!"); } if (a == 2) { printf("かわいい!"); } -このプログラムでは、最初にあなたが男の子か女の子かを聞かれます。それで数字を入力すると、「かっこいい!」とか「かわいい!」といってくれるわけです。1でも2でもない数字を入れたら何も言いません。 *** (3) rei0009.c [#fa9d958d] int a; printf("[ゆけつできる?]\n"); // printf("blood type : 1.O 2.A 3.B 4.AB ? "); // scanf("%d", &a); a = inptInt("けつえきがたは : 1.O 2.A 3.B 4.AB ? "); if (a == 1) { printf("OK : O"); } if (a == 2) { printf("OK : O, A"); } if (a == 3) { printf("OK : O, B"); } if (a == 4) { printf("OK : O, A, B, AB"); } -これは緊急時に輸血できる血液型を教えてくれるプログラムです。最初にタイトルが出ます。そしてあなたの血液型を聞かれます。たとえばA型の場合、O型とA型の血液が輸血可能だと教えてくれます。 --まあそれでも基本的には同じ血液型の血液を使うのが普通ですが。 *** (4) rei0010.c [#c7209481] int a; // printf("nansai? "); // scanf("%d", &a); a = inptInt("なんさいですか? "); if (a == 0) { printf("あかちゃん"); } if (1 <= a && a <= 5) { printf("ようじ"); } if (6 <= a && a <= 19) { printf("こども"); } if (20 <= a && a <= 64) { printf("おとな"); } if (a >= 65) { printf("こうれいしゃ"); } -これは年齢を入れると、赤ちゃん・幼児・子供・大人・高齢者のどれにあたるのかを教えてくれるプログラムです。ここで、 && というのが新出ですよね。これは条件式の中でたまに出てくる記号で、「かつ」という意味です。つまり両方の条件が成立しているかどうかを調べます。どちらか一方しか成立していない場合は、 { } の中を実行しません。 *** (5) rei0011.c [#aee80bc3] int a, b, c, d, e; printf("[げんきチェック]\n"); a = inptInt("さいきんあさに はやおきできますか 1.できる 0.できない ? "); b = inptInt("ごはんはおいしいですか 1.おいしい 0.おいしくない ? "); c = inptInt("しんぱいごとがありますか 1.ない 0.ある ? "); d = inptInt("よくねむれますか 1.ねむれる 0.あまりねむれない ? "); e = a + b + c + d; if (e == 4) { printf("あなたはとてもげんきです"); } if (1 <= e && e <= 2) { printf("あなたはふつうです"); } if (e == 0) { printf("あなたはげんきがありません しんぱいです"); -こんなものも作れます。もう説明しなくても分かりますよね? *** (6) まとめ [#u0aba8a7] -ここまでの命令だけでも、何か役に立つものは作れると思います。いろいろ作ってみると、いい勉強になります。 --たぶん http://www.athuman.com/ha/ta/ みたいな、質問に答えていってそれを集計してメッセージを出すものも、がんばれば作れます。 -ifはとてもよく使う命令なので、慣れておくといいと思います。