【C言語】switch文の使い方 (条件式など)

この記事では、switch文の使い方 (条件式など)について紹介します。

switch文とは

switch文は、多分岐を行うための選択文です。
評価する対象がすべて同じ場合に使います

書式

switch (条件式)
{
  case 定数式1:
  文;

  case 定数式2:
  文2;
  ︙
  case 定数式n:
  文n;

  default:
  文n+1;
}

switch文は、条件式の値と同じ定数式を持つcase以下を”全て”実行します。
どの定数式とも異なる場合は、default以下(文n+1)だけ実行します。

※1. default:と文n+1は省略可能
※2. 条件式と定数式1~nは整数型(int型)にする必要があります。
※3. defaultが2つ書いたり、定数式1~nに同じ値を設定するとエラーになります。

ソースコード

サンプルプログラムのソースコードです。

#include <stdio.h>

int main(void)
{
  int i = 1;

  switch (i)
  {
    case 1:
    printf("iは1です。\n");

    case 2:
    printf("iは2です。\n");
    
    case 3:
    printf("iは3です。\n");
    
    default:
    printf("iは1~3以外です。");
  }
  return 0;
}

実行結果

実行結果です。

iは1です。
iは2です。
iは3です。
iは1~3以外です。

case以下にある”全ての文”でなく、”特定の文”だけを実行したい場合は、break文を使います。(詳細は下記事で解説)
【C言語】switch文とbreak文の使い方

【関連記事】
C言語入門 (サンプルプログラム集)

シェア&フォローお願いします!