C言語の単純if文(simple if)をわかりやすく解説
はじめに
C言語における「if」キーワードは、論理条件が真(true)と評価された場合にのみ、特定の一連のステートメントを実行するために使用される、最も基本的な条件分岐です。本記事では、単純if文(simple if)の構文、動作の仕組み、そして具体的なサンプルコードを通じてその基本を解説します。
構文
単純if文の構文は以下の通りです。
if (condition) {
Statement(s);
}
単純if文の動作
ifブロック内のステートメントは、条件が真(true)の場合にのみ実行され、偽(false)の場合は一切実行されません。
条件が真のときに実行したいステートメントが1つだけである場合は、波括弧({})を省略することも可能です。ただし、一般的にはステートメントが1つであっても波括弧は省略しないことが推奨されます。可読性や保守性が向上し、後からコードを追加する際のミスを防ぐことにつながるためです。
逆に、条件が真のときに複数のステートメントを実行したい場合は、波括弧({})が必須となります。
サンプルプログラム
以下は、if文を使って入力された数値が奇数かどうかを判定するCプログラムの例です。
#include <stdio.h>
int main(void) {
int a = 4;
printf("Enter the value of a: ");
scanf("%d", &a);
if (a % 2 == 1) {
printf("a is odd number\n");
}
return 0;
}実行結果
入力する値によって、プログラムの出力は次のように変わります。
実行例1: Enter the value of a: 56 (何も出力されない) 実行例2: Enter the value of a: 33 a is odd number
実行例1では、56を2で割った余りが0になるため、条件式「a % 2 == 1」は偽(false)と評価され、ifブロック内のステートメントはスキップされます。一方、実行例2では33が奇数であるため条件が真となり、メッセージが出力されます。このように、単純if文は「条件が成り立つときだけ処理を行いたい」という場面で活用される、C言語プログラミングの基礎となる制御構造です。
-
C言語のネストされたif-else文をわかりやすく解説!構文と実例付き
ネストされたif-else文とは?「ネストされたif(入れ子のif)」とは、if文またはelse文の中に、さらに別のif文が含まれている構造のことを指します。つまり、ある条件分岐の処理ブロック内に、別の条件判断を組み込むことで、より複雑な条件判定を実現できるのです。この仕組みを使うことで、「複数の条件が同時に成り立つかどうか」「段階的な条件チェック」などを、柔軟にプログラムへ組み込むことが可能になります。基本構文ネストされたif-else文の基本的な書き方は以下の通りです。if (condition1){ if (condition2) stmt1; else
-
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」には比較演算子や論理演算子を使った条件式を記述し、その