C 条件ステートメント:IF、IF Else、ネストされた IF Else と例
C の条件ステートメントとは
C の条件ステートメント プログラミングは、条件に基づいて決定を下すために使用されます。条件付きステートメントは、ステートメントの周囲に条件がない場合に順次実行されます。ステートメントのブロックに何らかの条件を付けると、条件によって評価された結果に基づいて実行フローが変わる場合があります。このプロセスは「C」では意思決定と呼ばれます。
「C」プログラミングでは、次の 2 つの構造を使用して条件付きステートメントを作成できます:
1.if文
2. if-else 文
プログラムが評価された条件の結果に基づいて実行するステートメントを決定するため、分岐とも呼ばれます。
このチュートリアルでは、次のことを学びます-
- 条件文とは?
- If ステートメント
- 関係演算子
- If-Else ステートメント
- 条件式
- ネストされた If-else ステートメント
- ネストされた Else-if ステートメント
If ステートメント
これは強力な条件ステートメントの 1 つです。 If ステートメントは、プログラムの実行の流れを変更する役割を果たします。 If ステートメントは常に条件と共に使用されます。条件は、If の本体内のステートメントを実行する前に最初に評価されます。 if ステートメントの構文は次のとおりです。
if (condition) instruction;
条件は true または false に評価されます。 True は常にゼロ以外の値で、False はゼロを含む値です。命令は、単一の命令または中括弧 { } で囲まれたコード ブロックです。
次のプログラムは、'C' プログラミングでの if 構造の使用を示しています:
#include<stdio.h> int main() { int num1=1; int num2=2; if(num1<num2) //test-condition { printf("num1 is smaller than num2"); } return 0; }
出力:
num1 is smaller than num2
上記のプログラムは、if 構造を使用して 2 つの数値が等しいかどうかを確認する方法を示しています。
<オール>
関係演算子
C には 6 つの関係演算子があり、これらを使用してブール式を作成し、決定を下して条件をテストし、true または false を返します。
<未満
<=以下
>より大きい
>=以上
==に等しい
!=等しくない
等しいテスト (==) は代入演算子 (=) とは異なることに注意してください。これは、プログラマーがこれらを混同して直面する最も一般的な問題の 1 つであるためです。
例:
int x = 41; x =x+ 1; if (x == 42) { printf("You succeed!");}
出力:
You succeed
ゼロ以外の値に評価される条件は true と見なされることに注意してください。
例:
int present = 1; if (present) printf("There is someone present in the classroom \n");
出力:
There is someone present in the classroom
If-Else ステートメント
if-else is ステートメントは、If の拡張バージョンです。 if-else の一般的な形式は次のとおりです:
if (test-expression) { True block of statements } Else { False block of statements } Statements;
このタイプの構造では、test-expression の値が true の場合、true のステートメント ブロックが実行されます。 test-expression の値が false の場合、ステートメントの false ブロックが実行されます。いずれにせよ、実行後、自動的に If のブロックの外にあるステートメントに制御が移ります。
次のプログラムは、if-else 構文の使用法を示しています。
ある値で変数を初期化し、値が 10 未満か 10 より大きいかを判別するプログラムを作成します。
始めましょう。
#include<stdio.h> int main() { int num=19; if(num<10) { printf("The value is less than 10"); } else { printf("The value is greater than 10"); } return 0; }
出力:
The value is greater than 10
<オール>
「C」プログラミングでは、if-else ステートメントのネストと呼ばれる複数の if-else 構造を相互に使用できます。
条件式
?: を導入することで、if-else ステートメントを表現する別の方法があります。 オペレーター。条件式の ?: 演算子には、if と else に関連付けられたステートメントが 1 つだけあります。
例:
#include <stdio.h> int main() { int y; int x = 2; y = (x >= 6) ? 6 : x;/* This is equivalent to: if (x >= 5) y = 5; else y = x; */ printf("y =%d ",y); return 0;}
出力:
y =2
ネストされた If-else ステートメント
一連の決定が必要な場合は、ネストされた if-else が使用されます。入れ子とは、ある if-else 構造を別の構造内で使用することを意味します。
ネストされた if-else の使用法を説明するプログラムを書きましょう。
#include<stdio.h> int main() { int num=1; if(num<10) { if(num==1) { printf("The value is:%d\n",num); } else { printf("The value is greater than 1"); } } else { printf("The value is greater than 10"); } return 0; }
出力:
The value is:1
上記のプログラムは、数値が 10 より小さいか大きいかをチェックし、ネストされた if-else 構造を使用して結果を出力します。
<オール>
変数の値を変更してみて、プログラムがどのように動作するかを確認してください。
注: ネストされた if-else では、インデントに注意する必要があります。これは、このプロセスに複数の if-else 構造が関与しているため、個々の構造を理解するのが難しくなるためです。適切なインデントにより、プログラムが読みやすくなります。
ネストされた Else-if ステートメント
マルチパスの決定が必要な場合は、ネストされた else-if が使用されます。
「C」プログラミングでelse-ifラダーを構築する方法の一般的な構文は次のとおりです:
if (test - expression 1) { statement1; } else if (test - expression 2) { Statement2; } else if (test - expression 3) { Statement3; } else if (test - expression n) { Statement n; } else { default; } Statement x;
このタイプの構造は、else-if はしごとして知られています。このチェーンは一般的にはしごのように見えるため、else-if はしごとも呼ばれます。テスト式は上から下に評価されます。真のテスト式が見つかった場合は常に、それに関連付けられたステートメントが実行されます。 n 個のテスト式がすべて false になると、デフォルトの else ステートメントが実行されます。
プログラムの助けを借りて実際の作業を見てみましょう.
#include<stdio.h> int main() { int marks=83; if(marks>75){ printf("First class"); } else if(marks>65){ printf("Second class"); } else if(marks>55){ printf("Third class"); } else{ printf("Fourth class"); } return 0; }
出力:
First class
上記のプログラムは、テストで採点された点数に従って成績を出力します。上記のプログラムでは、else-if はしご構造を使用しています。
<オール>
値を変更してみて、出力の変化に注目してください。
まとめ
- 意思決定または分岐ステートメントを使用して、評価された式の結果に基づいて 1 つのパスを選択します。
- プログラムの実行の流れを制御するため、制御ステートメントとも呼ばれます。
- 「C」は、意思決定ステートメントの if、if-else 構造を提供します。
- 複数のパスをテストする必要がある場合は、if-else を相互にネストすることもできます。
- else-if はしごは、式の結果に基づいてさまざまな方法をチェックする必要がある場合に使用されます。
C言語