C#プログラムの条件分岐(switch文)
今回のC#プログラミング学習も、条件分岐を学びます。
すでにif文については学習したので、今回はswitch文について学習します。
プログラムのダウンロード
まずは今回学習していくためのプログラムをダウンロードしましょう。
ここをクリックして「Sample.zip」ファイルをダウンロードしてください。
ZIP形式になっているので、ダウンロードしたら、マウスの右クリックで「すべて解凍」を選びます。
すると、Sampleプロジェクトが展開されます。
プログラムファイルを開く
Sampleプロジェクトの中に「Sample.sln」ファイルがあるので、このファイルを開くとVisualStudioのVisualC#が立ち上がります。
ソリューションエクスプローラから「Program.cs」を開くと、以下のようなプログラムが表示されます。
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Sample { class Program { static void Main(string[] args) { // 数値を入力 Console.Write("1から3の整数を入力:"); int iNumber = int.Parse( Console.ReadLine() ); switch ( iNumber ) { case 1: Console.Write("one"); // iNumberが1だった場合の処理 break; case 2: Console.Write("two"); // iNumberが2だった場合の処理 break; case 3: Console.Write("three"); // iNumberが3だった場合の処理 break; default: Console.Write("不適切な値です"); // それ以外の値が入力された場合の処理 break; } Console.ReadLine(); } } }
プログラムのビルド
F7キーを押すとプログラムのビルドが行われ、実行ファイルが作成されます。
プログラムの実行
F5キーを押すとプログラムが実行されます。
まずは「1から3の整数を入力:」と表示されるので、「2」などの数値を入力しEnterキーを押します。
すると入力した値に応じたメッセージが表示されます。
例えば、「2」と入力しEnterキーを押すと、「two」と表示されるのでEnterキーを押すとプログラムが終了します。
プログラム解説
それでは今回学習するC#プログラムを見てみましょう。
プログラムの流れ
プログラムが起動すると、「1から3の整数を入力:」と表示されます。
「1」を入力してEnterキーを押したら「one」が、「2」を入力してEnterキーを押したら「two」が、「3」を入力してEnterキーを押したら「three」が表示されます。
そしてそれ以外の数値だった場合には、「不適切な値です」と表示されます。
条件分岐
今回の条件分岐はswitch文を学習します。
サンプルプログラムでは以下の部分です。
switch ( iNumber ) { case 1: Console.Write("one"); // iNumberが1だった場合の処理 break; case 2: Console.Write("two"); // iNumberが2だった場合の処理 break; case 3: Console.Write("three"); // iNumberが3だった場合の処理 break; default: Console.Write("不適切な値です"); // それ以外の値が入力された場合の処理 break; }
switch文の基本的な書き方はこんな感じです。
まずは「switch ( iNumber )」とすることで、変数「iNumber」の値に対して各処理が行われることを指定します。
switch文の中は「{」から「}」で囲まれた部分です。
そして変数「iNumber」の各値については、「case」から「break」までがひとつの単位になっています。
なので、変数「iNumber」が「1」のときは…。
case 1: Console.Write("one"); // iNumberが1だった場合の処理 break;
この部分が実行されます。
変数「iNumber」が「2」のときは…。
case 2: Console.Write("two"); // iNumberが2だった場合の処理 break;
この部分が実行されます。
変数「iNumber」が「3」のときは…。
case 3: Console.Write("three"); // iNumberが3だった場合の処理 break;
この部分が実行されます。
そして、変数「iNumber」の値がそれ以外だったときは…。
default: Console.Write("不適切な値です"); // それ以外の値が入力された場合の処理 break;
この部分が実行されるわけです。
switch文は一見難しそうですが、このように分解してしまえば簡単ですよね。