【C言語】if文の使い方まとめ|条件分岐で処理を実行させる方法

今回は「C言語によるif文による条件分岐」について解説します。

C言語のif文による条件分岐とは

if文は特定の条件を満たす場合に処理を実行するようにできます。

if文の書き方

if(条件文){ 処理; }

if()の条件文を満たすときのみ、処理を実行するようにできます。

if文で使える条件文

if文で使える条件文は8つあります。

  1. A == B:AとBが等しい
  2. A != B:AとBが等しくない
  3. A > B:AはBより大きい
  4. A < B:AはBより小さい
  5. A >= B:AはB以上
  6. A <= B:AはB以下
  7. A && B:AかつB
  8. A || B:AまたはB

1つずつ解説していきます。

A == B:AとBが等しい

AとBが等しい場合に処理を実行します。

AとBが等しい場合

if(A == B){ 処理 }

使い方の例

if文の条件を満たす場合に文字を表示させるプログラムの例

AとBが等しい場合

if(A == B){ printf("AとBは等しい\n"); }

AとBが等しい場合の実行結果

AとBは等しい

AとBが等しくない場合の実行結果

(何も表示しない)

A != B:AとBが等しくない

AとBが等しくない場合に処理を実行します。
A == Bと反対の実行結果になります。

AとBが等しくない場合

if(A != B){ 処理 }

使い方の例

if文の条件を満たす場合に文字を表示させるプログラムの例

AとBが等しくない場合

if(A != B){ printf("AとBは等しくない\n"); }

AとBが等しくない場合の実行結果

AとBは等しくない

AとBが等しい場合の実行結果

(何も表示しない)

A > B:AはBより大きい

AがBより大きい場合に処理を実行します。

AはBより大きい場合

if(A > B){ 処理 }

使い方の例

if文の条件を満たす場合に文字を表示させるプログラムの例

AはBより大きい場合

if(A > B){ printf("AはBより大きい\n"); }

AがBより大きい場合の実行結果

AはBより大きい

AがB以下の場合の実行結果

(何も表示しない)

A < B:AはBより小さい

AはBより小さい場合に処理を実行します。

AはBより小さい場合

if(A < B){ 処理 }

使い方の例

if文の条件を満たす場合に文字を表示させるプログラムの例

AはBより小さい場合

if(A < B){ printf("AはBより小さい\n"); }

AがBより小さい場合の実行結果

AはBより小さい

AがB以上の場合の実行結果

(何も表示しない)

A >= B:AはB以上

AがB以上の場合に処理を実行します。

AはB以上

if(A >= B){ 処理 }

使い方の例

if文の条件を満たす場合に文字を表示させるプログラムの例

AはB以上

if(A >= B){ printf("AはB以上\n"); }

AはB以上の場合の実行結果

AはB以上

AがBより小さい場合の実行結果

(何も表示しない)

A <= B:AはB以下

AはB以下の場合に処理を実行します。

AはB以下の場合

if(A <= B){ 処理 }

使い方の例

if文の条件を満たす場合に文字を表示させるプログラムの例

AはB以下の場合

if(A <= B){ printf("AはB以下\n"); }

AはB以下の場合の実行結果

AはBより小さい

AがBより大きい場合の実行結果

(何も表示しない)

A && B:AかつB

AとBの2つの条件を満たす場合に処理を実行します。

AかつBを満たす場合

if(A && B){ 処理 }

使い方の例

if文の条件を満たす場合に文字を表示させるプログラムの例

AかつBを満たす場合

if(A && B){ printf("AかつBを満たす\n"); }

AとBの2つの条件を満たす場合の実行結果

AかつBを満たす

AもしくはBのどちらか一方を満たさない場合
もしくは
両方を満たさない場合の実行結果

(何も表示しない)

A || B:AまたはB

AまたはBのどちらか一方か両方の条件を満たす場合に処理を実行します。

AまたはBのどちらか一方か両方の条件を満たす場合

if(A || B){ 処理 }

使い方の例

if文の条件を満たす場合に文字を表示させるプログラムの例

AまたはBのどちらか一方か両方の条件を満たす場合

if(A || B){ printf("AまたはBのどちらか一方か両方の条件を満たす\n"); }

AまたはBのどちらか一方か両方の条件を満たす場合の実行結果

AまたはBのどちらか一方か両方の条件を満たす

AとBの両方の条件を満たさない場合の実行結果

(何も表示しない)

処理が一行なら波かっこ{ }は省略可能

処理が一行で終わるif文なら波かっこを省略することができます。

if文で波かっこを省略する

if(条件文) 処理;

処理が二行以上で波かっこを省略すると、二行目以降は常に実行されます。

else文とelse if文で複数の条件分岐

if文の条件を満たさなかったときにも処理を実行したいのであれば、
else文とelse if文を使うと便利です。

if文とelse文の組み合わせ

if文だけだと

if文の書き方

if(条件文1){ 処理1; } if(条件文1と反対の条件){ 処理2; }

しかし、else文を使うと

if文の書き方

if(条件文1){ 処理1; }else{ 処理2; }

この場合は、条件文1を満たすと処理1を実行し、満たさない場合は処理2を実行します。

if文とelse if文の組み合わせ

似たような条件がいくつもある場合はelse if文を使うと便利です。

if文の書き方

if(条件文1){ 処理1; }else if(条件文2){ 処理2; }else{ 処理3; }

実行結果は下記のとおりです。

  • 条件文1を満たす→処理1を実行
  • 条件文2を満たす→処理2を実行
  • 条件文1と条件文2をどちらも満たさない→処理3を実行

if文を使うときの注意点

if文とelse文もしくはif文とelse if文をつかうときですが、条件を満たすかどうかの判定は一度しか実行しません。

if文の書き方

if(A==B){ A=C; }else{ 処理1; }

例えば、if文でAとBが等しくて、AにCを代入した場合はelse文の判定はしないので処理1は実行しません。