今まで、処理の分岐はif文で行ってきましたが、
なんか見栄えがよくないなー
って方のために、switch文をやってみましょう。
まー、ほとんどif文と同じなんですが、 将来やるであろう(ホントか?)ウィンドウズのプログラムでは、 こちらのswitch文をよく使うので、覚えておいて損はないかもしれません。 では早速書き方ですが、次のようになります。
switch( i ){ case 1: あーして; break; case 2: こーして; break; case 3: そーして; break; default: どーして; }となります。 一目見ただけで大体どんな動きをするか想像がつくと思います。 あとで解説しますが、「break」が抜けると ひどいことになります。 では、switchを使った簡単なプログラムを作ってみましょう。
まー、説明するまでもないですね。で、結果が。
![]()
![]()
![]()
最後はちょっと意地悪してアルファベットを 入力しましたが、1,2,3以外とゆー処理をされました。 まるで、if文でいうところの、「else」に相当するふるまいをしています。
「case」の後に記述されるのは数字だけではなく、以下のように文字も指定できます。
結果はわかるでしょう。
switch文を使うとたまに忘れてしまう事があります。 それは「break」です。 上の例でやった程度であれば、「あ、breakが抜けてる」とすぐ気づくんですが、 「case」の中にもまた「switch」を使ったり、「if」を使ったりして、 複雑になった場合なかなか気づきません。 そもそも「break」の意味は{ }を1つ抜けるです。 つまり、switch{ } から抜けるために使います。よってこれがないと、 switch{ }から抜けません。さてどーなるか予想がつきますか? 次のプログラムを見て、結果を予想してください。
C言語のメニューに戻る