switch (式) {
case 値1:
「式」の値が「値1」の場合の処理
break ;
case 値2:
「式」の値が「値2」の場合の処理
break ;
.
.
.
default:
「式」の値が「値1」「値2」…のどれでもない場合の処理
break ;
}
x が 1 なら "True."、0 なら "False."、 それ以外の数字なら "Bad Number." と出力する。
switch (x) {
case 0:
printf("False.\n");
break;
case 1:
printf("True.\n");
break;
default:
printf("Bad Number.\n");
break;
}
case 値1:
値1の場合の処理 /* 値1の場合、まずこちらの処理が実行される */
case 値2:
値2の場合の処理 /* 値1の場合でも、引き続き実行される */
これを利用し、複数の値のどちらかで行なう処理を次のように記述することもできる。
case 値1:
case 値2:
共通の処理
しかし "break ;" を書かないと処理がわかりにくく、誤りになりやすい。