C If ... Else
条件と If ステートメント
C が数学からの通常の論理条件をサポートしていることはすでに学習しました。
- 未満:
a < b
- 以下:
a <= b
- より大きい:
a > b
- 以上:
a >= b
- に等しい
a == b
- 等しくない:
a != b
これらの条件を使用して、さまざまな決定に対してさまざまなアクションを実行できます。
C には、次の条件ステートメントがあります。
- 指定した条件が
trueの場合に実行するコードのブロックを指定するには、ifを使用します。 - 同じ条件が
falseの場合に実行するコード ブロックを指定するには、elseを使用します。 - 最初の条件が
falseであるかどうかをテストする新しい条件を指定するには、else ifを使用します. switchを使用して、実行するコードの多くの代替ブロックを指定します.
if ステートメント
if ステートメントを使用して、条件が true の場合に実行されるコード ブロックを指定します。
構文
if (<em>condition</em>) {
<em>// block of code to be executed if the condition is true</em>
}
if は小文字であることに注意してください。 大文字 (If または IF) を使用するとエラーが発生します。
true の場合、テキストを出力します。
変数をテストすることもできます。
例の説明
上の例では、2 つの変数 x と y を使用して、x が y より大きいかどうかをテストします (> 演算子を使用)。 x は 20、y は 18 で、20 が 18 より大きいことがわかっているため、「x は y より大きい」と画面に出力します。
else ステートメント
else ステートメントを使用して、条件が false の場合に実行されるコード ブロックを指定します。
構文
if (<em>condition</em>) {
<em>// block of code to be executed if the condition is true</em>
} else {
<em>// block of code to be executed if the condition is false</em>
}
例
int time = 20;
if (time < 18) {
printf("Good day.");
} else {
printf("Good evening.");
}
// Outputs "Good evening."
例の説明
上の例では、時間 (20) が 18 より大きいため、条件は false になります。 このため、else 条件に進み、「こんばんは」を画面に出力します。 時間が 18 未満の場合、プログラムは「こんにちは」と出力します。
else if ステートメント
最初の条件が false の場合は、else if ステートメントを使用して新しい条件を指定します。
.
構文
if (<em>condition1</em>) {
<em>// block of code to be executed if condition1 is true</em>
} else if (<em>condition2</em>) {
<em>// block of code to be executed if the condition1 is false and condition2 is true</em>
} else {
<em>// block of code to be executed if the condition1 is false and condition2 is false</em>
}
例
int time = 22;
if (time < 10) {
printf("Good morning.");
} else if (time < 20) {
printf("Good day.");
} else {
printf("Good evening.");
}
// Outputs "Good evening."
例の説明
上の例では、時間 (22) が 10 より大きいため、最初の条件は false になります。 else if ステートメントの次の条件も false なので、condition1 とcondition2 が両方とも false であるため、else 条件に進み、「Good evening(こんばんは)」と画面に出力します。
ただし、時刻が 14 時の場合、プログラムは「Good day(こんにちは)」と出力します。
もう一つの例
この例は、if..else を使用して数値が正か負かを確認する方法を示しています。
例
int myNum = 10; // Is this a positive or negative number?
if (myNum > 0) {
printf("The value is a positive number.");
} else if (myNum < 0) {
printf("The value is a negative number.");
} else {
printf("The value is 0.");
}