C言語の基礎(if文)

スポンサーリンク
C言語

これまでは、決まった動作を行うプログラムをみてきた。これから、条件によってプログラムの流れを変えるための手順をみてみよう。今回は、「if文」である。

読み込んだ数値(整数値)が偶数であるかどうかを表示するプログラムを例に考えてみよう。

ご存知のとおり、偶数とは、

2で割り切れる整数。2、4、6、8など

出典 小学館デジタル大辞泉

このプログラムは、

読み込んだ整数が偶数ならば、「偶数である」と表示する。
//読み込んだ整数が偶数なら、偶数であると表示するプログラム
#include <stdio.h>

int main(void)
{
    int n;
    printf("整数を入力してください:");
    scanf("%d",&n);
    if ( n%2 == 0)
      printf("入力された整数は偶数です。\n");
}

実行結果は下記の通りである。

整数を入力してください:10
入力された整数は偶数です。

if文の基本的な書式は、

if(条件式)
  条件式が成り立つときの処理

if文の条件式「n%2 == 0」は、「nを2で割った剰余が0と等しい」ということ。

%演算子は、剰余を求める。オペランド(演算の対象)は両方とも整数でなければならない。

整数  整数

「剰余が0と等しければ」次の処理を行う。具体的には、printf関数が実行される。

なお、条件式が成り立たないときに別の処理をさせる場合は、「if else」文を使用する。

if(条件式)
  条件式が成り立つときに行われる処理
else
    条件式が成り立たないときに行われる処理 

先ほどのプログラムで、「剰余が0と等しくない」場合の処理を加えたプログラムは以下の通りである。

//読み込んだ整数が偶数か奇数かを表示するプログラム
#include <stdio.h>

int main(void)
{
    int n;
    printf("整数を入力してください:");
    scanf("%d",&n);
    if ( n%2 == 0) 
      printf("入力された整数は偶数です。\n");
    else 
      printf("入力された整数は奇数です。\n");
 
}

実行結果は、下記の通りである。

整数を入力してください:9
入力された整数は奇数です。

なお、分岐が3つ以上になる場合は、「else if 」を組み合わせる。「else if 」はいくつでもつなげられる。

if (条件式1)
  条件式1が成り立つときに行われる処理
else if (条件式2)
  条件式2が成り立つときに行われる処理
else
    条件式がいずれも成り立たないときに行われる処理 

いかがであろうか。この小文でC言語に少しでも興味を持っていただけたら幸いである。

(参考文献)新・明解C言語 入門編 第2版 柴田望洋著(SBクリエイティブ)、基礎C言語 (株)アンク著(インプレス )

コメント

タイトルとURLをコピーしました