授業/C言語基礎/switch文 のバックアップ(No.2)


条件分岐のところでは、if文の使い方を勉強しました。

ここでは、

if文による場合分け

  int i;

  printf("数字を入力してください:\n");
  scanf("%1d", &i);

  if (i == 0) {
    printf("ゼロ\n");
  } else if (i == 1) {
    printf("一\n");
  } else if (i == 2) {
    printf("二\n");
  } else {
    printf("三以上\n");
  }

switch文による場合分け

if文による場合分けにおいて、if文の条件文が、次の条件を満たすとき、このif文をswitch文に書き換えることができます。

  • 条件式の左辺がすべて同じ
  • 条件式の右辺がすべて整数の定数

switch文は、次の形をしています。

  switch (条件式の左辺) {
  case 定数1:
    処理1
  case 定数2:
    処理2
  ...
  default:
    いずれの場合にも当てはまらないときの処理
  }

switch文は、条件式の左辺を計算し、その値が定数iに等しいときに処理i以後の処理をすべて実行します。 どの定数にも当てはまらない場合には、default: の次に書かれている処理を実行します。

ここで、条件式の左辺の値が定数iに等しいとき、処理i以後の処理がすべて実行されることに注意しましょう。

  int i;

  printf("数字を入力してください:\n");
  scanf("%1d", &i);

  switch (i) {
  case 0:
    printf("ゼロ\n");
    break;
  case 1:
    printf("一\n");
    break;
  case 2:
    printf("二\n");
    break;
  default:
    printf("三以上\n");
  }
トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS