カテゴリ: C# 更新日: 2025/12/03

C#のwhile文の使い方!条件付きループを基礎から学ぼう

C#のwhile文の使い方!条件付きループを基礎から学ぼう
C#のwhile文の使い方!条件付きループを基礎から学ぼう

先生と生徒の会話形式で理解しよう

生徒

「C#で、同じ処理を繰り返したいときって、どうすればいいんですか?」

先生

「そういう時には、while文を使うと便利です。同じ処理を条件付きで繰り返すことができますよ。」

生徒

「条件付きってどういう意味ですか?」

先生

「指定した条件が「真(true)」の間だけ、処理を繰り返すということです。実際に見てみましょう!」

1. while文とは?

1. while文とは?
1. while文とは?

C#のwhile文とは、「ある条件が満たされている間、何度でも同じ処理を繰り返す」ための繰り返し処理(ループ処理)の一つです。

例えば、「変数の値が5未満の間、繰り返す」といった指定ができます。これにより、手動で同じ命令を何度も書く必要がなくなり、効率的にコードを書くことができます。

「条件付きループ」とも呼ばれ、「条件が満たされている間だけ繰り返す」という点が特徴です。

2. while文の基本構文

2. while文の基本構文
2. while文の基本構文

while文の基本的な書き方は以下のようになります。


while (条件)
{
    // 繰り返したい処理
}

ポイント:条件の部分には「true」か「false」を返す式を書きます。条件が「true」である限り、波かっこ{ }の中の処理が何度も実行されます。

3. 具体的な使用例

3. 具体的な使用例
3. 具体的な使用例

例として、1から5までの数字を画面に表示するプログラムを作ってみましょう。


int number = 1;

while (number <= 5)
{
    Console.WriteLine(number);
    number++;
}

number++というのは「numberを1増やす」という意味です。このようにして、繰り返すたびに変数の値を変化させることで、ループを終了に導きます。

実行結果:


1
2
3
4
5

4. 無限ループに注意!

4. 無限ループに注意!
4. 無限ループに注意!

条件がずっと「true」のままだと、無限ループになってしまいます。例えば、次のコードはずっと1を出力し続けてしまいます。


int x = 1;

while (x <= 5)
{
    Console.WriteLine(x);
    // x を増やしていないので、ずっと x は 1 のまま!
}

このように、ループの中で条件が「false」になるように工夫する必要があります。

5. while文のよくある使い方

5. while文のよくある使い方
5. while文のよくある使い方

while文は、ユーザーの入力を待つ場面や、何かの条件が整うまで繰り返すような場面でよく使われます。以下は、ユーザーが「exit」と入力するまで繰り返す例です。


string input = "";

while (input != "exit")
{
    Console.Write("文字を入力してください(exitで終了):");
    input = Console.ReadLine();
}

!=(ノットイコール)は「〜でない場合」という意味です。Console.ReadLine()はキーボードからの入力を受け取る命令です。

6. do-while文との違い

6. do-while文との違い
6. do-while文との違い

while文とよく似た構文にdo-while文があります。これは「必ず1回は処理を行ってから、条件を確認する」という特徴があります。

以下がその構文です。


int y = 1;

do
{
    Console.WriteLine(y);
    y++;
} while (y <= 5);

while文では最初に条件を確認しますが、do-while文では先に処理が実行される点が違いです。条件が最初からfalseでも、1回は処理されるのが特徴です。

7. ループを途中で止めたいときは?

7. ループを途中で止めたいときは?
7. ループを途中で止めたいときは?

ループの途中で繰り返しをやめたいときにはbreak文を使います。以下の例では、数字が3になった時点でループを終了します。


int z = 1;

while (z <= 5)
{
    if (z == 3)
    {
        break;
    }

    Console.WriteLine(z);
    z++;
}

実行結果:


1
2

このようにbreakを使うことで、ループを任意のタイミングで止めることができます。

8. while文を使いこなそう

8. while文を使いこなそう
8. while文を使いこなそう

ここまでで、C#のwhile文の基本的な使い方と、do-while文との違い、breakによる制御方法までを学びました。

プログラミングにおいて、繰り返し処理は非常によく使われるので、しっかり理解しておくことが大切です。

特に、ループの条件が変わらないと無限ループになってしまうので、条件の設計には注意しましょう。

まとめ

まとめ
まとめ

C#のwhile文は、条件付きで繰り返し処理を行うための基本中の基本とも言える構文です。この記事を通して、「ある条件が真である間、処理を何度でも実行する」という仕組みを具体例と共に学びました。
while文の使い方としては、数値の増加やユーザーの入力待ち、条件成立までの処理ループなどが挙げられます。条件が成り立たない場合は一度も実行されないという特徴もあり、その点がdo-while文との違いになります。
また、無限ループに陥らないように、ループ中で変数を更新したり、終了条件をしっかり設計することが重要です。break文を使えば、任意のタイミングでループを抜けることもでき、柔軟な制御が可能となります。
以下に、ユーザーの入力を「終了」と入力するまで繰り返し処理する例を再掲します。


string input = "";

while (input != "終了")
{
    Console.Write("文字を入力してください(終了で止まります):");
    input = Console.ReadLine();
}

上記のように、条件としてinput != "終了"を指定することで、ユーザーが「終了」と打つまでは何度でも繰り返すことができます。
実際の開発現場でも、ログイン処理、設定の繰り返し確認、バッチ処理など様々な場面でwhile文は使われています。ループ制御を正しく理解することは、バグを防ぎ、効率的なプログラミングの第一歩と言えるでしょう。
条件の書き方ひとつで、プログラムの動作は大きく変わります。そのため、常に「今この条件はいつ真になって、いつ偽になるか?」という視点を持ってコードを書く習慣が大切です。
また、while文に慣れてくると、for文やforeach文との使い分けにも自然と目が向くようになります。

今回紹介した内容をしっかり理解し、実際にコードを書いて体感することで、C#のループ処理に自信が持てるようになります。
まずは簡単なカウント処理や、ユーザー入力を使った繰り返しから始めてみると良いでしょう。
繰り返しの基本を身につけることは、プログラミングの応用にもつながっていきます。

先生と生徒の振り返り会話

生徒

「先生、while文って思ってたより便利なんですね!条件が変われば繰り返しも変えられるってすごいです。」

先生

「その通りです。条件次第でどこまでも柔軟に動かせるのがwhile文の魅力ですよ。」

生徒

「途中で止めたいときにbreakを使うっていうのも覚えました。ちゃんと条件の設計を考えないと、無限ループになるって怖いですね。」

先生

「そうですね。繰り返し処理の本質は「いつ終わるか」をしっかり決めておくことです。それができれば、バグもぐっと減りますよ。」

生徒

do-while文は条件がfalseでも1回は実行されるって覚えておきます!ちょっと違うだけで使い分けができるんですね。」

先生

「その理解は大事ですよ。プログラムは細かい仕様の違いを活かすことで、より正確で効率的に書けるようになります。」

生徒

「ありがとうございます、次はfor文やforeach文も学びたいです!」

先生

「いいですね!while文をマスターした今なら、他のループ文もきっとスムーズに理解できますよ。」

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

C#のwhile文とは何ですか?初心者にもわかるように説明してほしいです。

C#のwhile文は、ある条件がtrue(真)である間、繰り返し処理を実行するための構文です。条件が満たされなくなると自動的にループが終了します。
カテゴリの一覧へ
新着記事
New1
C#
C#のデフォルト引数と名前付き引数の使い方を解説!初心者でも安心のやさしい入門
New2
C#
C#のオブジェクト初期化子を完全ガイド!初心者でもわかる便利な使い方
New3
COBOL
COBOLの帳票出力と編集を完全マスター!条件付き表示で分かりやすい書類を作る方法
New4
COBOL
COBOLの帳票出力を完全攻略!数値項目のカンマ・小数点編集例を徹底解説
人気記事
No.1
Java&Spring記事人気No1
C#
C#のpartialクラスとは?初心者でも理解できるクラス分割の基本
No.2
Java&Spring記事人気No2
C#
C#でJSONファイルを読み書きする方法(JsonSerializer・Newtonsoft.Json)
No.3
Java&Spring記事人気No3
C#
C#のLINQクエリ構文の書き方と基本操作をマスターしよう
No.4
Java&Spring記事人気No4
C#
C#でswitch式を使う方法!C# 8.0以降の新機能を解説
No.5
Java&Spring記事人気No5
COBOL
COBOLの数値データ型「PIC 9」の使い方と注意点をやさしく解説!
No.6
Java&Spring記事人気No6
C#
C#のLINQ(リンク)とは?基本概念とデータ操作を初心者向けに徹底解説!
No.7
Java&Spring記事人気No7
C#
C#のCancellationTokenを使ったキャンセル処理を完全ガイド!非同期処理を安全に止める方法
No.8
Java&Spring記事人気No8
C#
C#の非同期処理とUIスレッドをマスター!WPF/WinFormsでアプリが止まる問題を解決