第16章

第16章 SWITCH文で処理分岐

今まで、処理の分岐は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言語のメニューに戻る

TOPに戻る