next up previous contents
Next: goto文とラベル Up: C言語プログラミング中級編1 - 制御文- Previous: break文とcontinue文   Contents

switch文

switch文は条件により多分岐する命令である。一方、if文は真偽に応じた2分岐命令である。 switch文の一般的な書式は、下記のようなものである。


switch( 条件式 ){
case const1: 条件式の値がconst1に一致したとき実行する文
break;
case const2: 条件式の値がconst2に一致したとき実行する文
break;
case const3: 条件式の値がconst3に一致したとき実行する文
break;
case constn: 条件式の値がconstnに一致したとき実行する文
break;
default: 各caseに当てはまらなかったときに実行する文
break;
}

通常は1つのcase文の実行の終わりには、break文をつけて、switch文の外に 脱出するようにする。しかし、複数のcase文に対してまとめて 実行する内容がある場合には、そのまとまりに対して1つのbreak文を指定する。 すなわち、下記のようにする。この例では、const1, const2に一致したときに同じ内容の 処理を行うことになる。


switch( 条件式 ){
case const1:
case const2: 条件式の値がconst1, const2に一致したとき実行する文
break;
case constn: 条件式の値がconstnに一致したとき実行する文
break;
default: 各caseに当てはまらなかったときに実行する文
break;
}

switch文のフローチャートを図4.6に示す。

Figure 4.6: switch文のフローチャート
\begin{figure}
\begin{center}
\epsfile{file=fig4_6.eps,height=4cm}
\end{center}\end{figure}



kojima hirohisa
2001-03-05