Cプログラミング
 Computer >> コンピューター >  >> プログラミング >> Cプログラミング

C言語のif-else文とは?基本構文から動作原理まで実例付きで徹底解説

if-else文は、条件が「真(true)」の場合と「偽(false)」の場合の両方に対応できる条件分岐構文です。条件式がtrueと評価されたときには「trueブロック」が実行され、falseと評価されたときには「falseブロック(elseブロック)」が実行されます。

基本構文

if-else文は以下のような形式で記述します。

if (condition){
   True block statement(s)
}else{
   False block statement(s)
}

「condition」には比較演算子や論理演算子を使った条件式を記述し、その評価結果に応じて実行されるブロックが切り替わります。

if-else文の動作の仕組み

  • 条件がtrueの場合:プログラムはif直後のtrueブロックに入り、ブロック内の処理を実行した後、そのブロックを抜けて次の処理へ進みます。このときelseブロックは完全にスキップされます。

  • 条件がfalseの場合:プログラムはelseブロック(falseブロック)に入り、そちらの処理を実行した後、ブロックを抜けます。

つまり、どちらか一方のブロックだけが必ず実行され、両方が同時に実行されることはありません。

サンプルコード

以下は、入力された整数が奇数か偶数かを判定するCプログラムです。2で割った余り(剰余)が1であれば奇数、それ以外であれば偶数と判断しています。

#include<stdio.h>
void main (){
   int a=4;
   printf("Enter the value of a: \n");
   scanf("%d",&a);
   if(a%2==1){
      printf("a is odd number \n");
   }else{
      printf("a is even number");
   }
}

実行結果

このプログラムを実行すると、入力値によって以下のような出力が得られます。

Run 1: Enter the value of a: 26
a is even number
Run 2: Enter the value of a: 53
a is odd number

1回目の実行では26を入力したため「26 % 2 == 0」となり、条件がfalseと評価されてelseブロック内の「a is even number(偶数)」が出力されています。2回目の実行では53を入力したため「53 % 2 == 1」となり、条件がtrueと評価されて「a is odd number(奇数)」が出力されました。このようにif-else文を使うことで、条件に応じた柔軟な分岐処理を簡潔に実装できます。

  1. C言語のネストされたif-else文をわかりやすく解説!構文と実例付き

    ネストされたif-else文とは?「ネストされたif(入れ子のif)」とは、if文またはelse文の中に、さらに別のif文が含まれている構造のことを指します。つまり、ある条件分岐の処理ブロック内に、別の条件判断を組み込むことで、より複雑な条件判定を実現できるのです。この仕組みを使うことで、「複数の条件が同時に成り立つかどうか」「段階的な条件チェック」などを、柔軟にプログラムへ組み込むことが可能になります。基本構文ネストされたif-else文の基本的な書き方は以下の通りです。if (condition1){ if (condition2) stmt1; else

  2. C言語の単純if文(simple if)をわかりやすく解説

    はじめにC言語における「if」キーワードは、論理条件が真(true)と評価された場合にのみ、特定の一連のステートメントを実行するために使用される、最も基本的な条件分岐です。本記事では、単純if文(simple if)の構文、動作の仕組み、そして具体的なサンプルコードを通じてその基本を解説します。構文単純if文の構文は以下の通りです。if (condition) { Statement(s); }単純if文の動作ifブロック内のステートメントは、条件が真(true)の場合にのみ実行され、偽(false)の場合は一切実行されません。条件が真のときに実行したいステートメントが1つだけである場