C#制御フロー完全ガイド:if、switch、for、whileの実例と解説
フロー制御と条件ステートメント
すべてのモダンプログラミング言語において、フロー制御構造はコードブロックの実行順序を決定します。C#では、if、switch、while、forが最も一般的なメカニズムです。これらのステートメントを効果的に使用する方法を理解することは、クリーンで保守しやすいコードを書くために不可欠です。
このチュートリアルでは、実例と簡潔な解説で各構造を解説します。すべてのコードスニペットはProgram.csファイルに貼り付けて即座に実行可能です。
学習内容:
ifによる条件付き実行switchによる複数分岐選択whileによる反復処理forによる制御付き繰り返し
1) ifステートメント
ifステートメントはブール式を評価します。式がtrueなら1つのコードブロックが実行され、そうでなければ代替ブロックが実行されます。これはロジックを分岐させる最も一般的な方法です。
例:値が10未満かどうかをチェックし、適切なメッセージを出力。

using System;
namespace DemoApplication {
class Program {
static void Main(string[] args) {
int value = 11;
if (value < 10) {
Console.WriteLine("Value is less than 10");
} else {
Console.WriteLine("Value is greater than 10");
}
Console.ReadKey();
}
}
}
コード解説
int value = 11を宣言。value < 10を評価 - 結果はfalse。elseブロックを実行し、"Value is greater than 10"を出力。
プログラム実行結果:
出力:

出力はif条件がfalseと評価されたことを確認します。
2) switchステートメント
複数の離散値をテストする場合、switchはifチェーンよりクリーンな構文を提供します。各caseは異なる分岐を表し、defaultがその他すべての値を処理します。
例:変数を既知の複数定数と比較。

using System;
namespace DemoApplication {
class Program {
static void Main(string[] args) {
int value = 11;
switch (value) {
case 1:
Console.WriteLine("Value is 1");
break;
case 2:
Console.WriteLine("Value is 2");
break;
default:
Console.WriteLine("Value is different");
break;
}
}
}
}
コード解説
int value = 11を設定。switch構造に入る。- 各
caseを順次評価;いずれもマッチせず。 defaultブロックを実行し、"Value is different"を出力。
出力:
出力:

3) whileループ
whileループは、ブール条件がtrueの間、コードブロックを繰り返し実行します。反復回数が事前に不明な場合に最適です。
例:指定上限未満までの数値を出力。

using System;
namespace DemoApplication {
class Program {
static void Main(string[] args) {
int value = 3, i = 0;
while (i < value) {
Console.WriteLine(i);
i++;
}
Console.ReadKey();
}
}
}
コード解説
int value = 3, i = 0を初期化。i < valueがtrueの間、ループ本体を実行。iを出力し、インクリメント。
プログラム実行出力:
出力:

4) forループ
forループは、既知の回数だけブロックを繰り返すコンパクトな形式です。初期化、条件、インクリメントを1行にまとめます。
例:0から2までの数値を出力。

using System;
namespace DemoApplication {
class Program {
static void Main(string[] args) {
for (int i = 0; i < 3; i++) {
Console.WriteLine(i);
}
Console.ReadKey();
}
}
}
コード解説
int i = 0を初期化。i < 3の間継続。- 各反復後に
iをインクリメント。 iの現在値を出力。
出力はwhile例と同一:
出力:

両ループは同じ反復ロジックを示しますが、構文と典型的ユースケースが異なります。
これらの基礎をマスターすれば、より複雑なロジックの構築、堅牢なアプリケーション開発、C#プログラミングのベストプラクティス遵守が可能になります。
C言語
- C# switch 文をマスターする:構文、例、ベストプラクティス
- C# while 文と do-while 文をマスターする:構文、例、ベストプラクティス
- C# for ループをマスターする:構文、フロー、実践例
- C++ forループ完全ガイド:ステップバイステップでマスター
- C++ while/do-whileループ完全ガイド:繰り返し処理をマスターする
- C++ switch-case文完全ガイド:構文、フロー、実践的な計算機例
- C言語forループ完全マスター:構文、仕組み、実践例
- C言語while/do-whileループ完全マスター:実践例付き
- Pythonループ完全ガイド:for、while、break、continue、enumerate
- Python range()関数をマスター:基礎から応用まで
- Javaで回文数を判定する:while文とfor文を使ったアルゴリズム