【C#超入門】反復処理for、foreach、while、do~while文を学ぶ

C# 反復処理

今回はC#の反復処理について学んでいきます。

目次

反復処理の種類

C#の反復処理は代表として4つあります。

それぞれ反復した処理ができますが目的や機能が異なります。

反復処理
  • for文
  • foreach文
  • while文
  • do~while文

それぞれについて解説していきます。

for文

for文はn回分繰り返し処理を行う場合に使います。

書き方としては以下のようになります。

for(初期化式; 条件式; 更新式)
{
  反復を行いたい文
}

繰り返しの変数nを初期化してあげて、条件式の範囲であれば繰り返し処理を行います。

サンプルコード

using System;

class WhileSample
{
  static void Main()
  {
    // 1~9までを表示
    for (int index = 1; index <= 9; index++) // xを1~9まで、1ずつ増やして繰り返し
    {
      Console.Write(index);
    }
  }
}

実行結果

1
2
3
4
5
6
7
8
9

foreach文

foreach文は最も頻繁に使用する文で、配列の要素全てにアクセスすることが可能です。

foreach(変数宣言 in 配列名)
{
  繰り返したい文 // 配列中の各要素に対して1回ずつ処理が行われる。
}

実際に配列を作って全ての要素が読み込まれるか確認してみましょう。

サンプルコード

using System;

namespace ForeachTest
{
    class Program
    {
        static void Main(string[] args)
        {
            string[] color = new string[]{ "Red", "Blue", "White", "Yellow"};

            // 配列の要素全てにアクセス
            foreach(var item in color)
            {
                Console.WriteLine(item);
            }
        }
    }
}

実行結果

Red
Blue
White
Yellow

while文

while文はひたすら同じ処理を反復したいときに使います。

以下の表に条件式が真であれば永久に処理を繰り返せるのが特徴です。

while(条件式)
{
  繰り返したい文 // 条件式が真の間繰り返される
}

また、ループを途中で抜けたい場合には、 break を、 ループの先頭に戻りたい場合は continue を使用します。

以下に break と continue の書式を示します。

breakを使った書き方

while(true) // 条件式が常に true なので、永久ループになる。
{
  // 何らかの処理

  break;

  // break よりも後ろの処理は実行されない。
}
// break 文が実行されると処理がここに移る。

continueを使った書き方

while(true) // continue 文が実行されると条件式の判定から処理をやり直す。
{
  // 何らかの処理

  continue;

  // continue よりも後ろの処理は実行されない。
}

do~while文

do-while 文は while 文と似たような書き方をします。

英文法だとwhileは後ろにあるのが通常のようで、必ず1回処理を行った後、条件式に合っているか確認を行うのがdo-while文になります。

サンプルコード

using System;

namespace DoWhileTest
{
    class program
    {
        static void Main(string[] args)
        {
            int n;

            do
            {
                // 数値を入力する
                Console.Write("1~10のいずれかの数値を入力してください : ");
                n = int.Parse(Console.ReadLine());
            }
            while (n < 1 || n > 10); // nの値が1~10の範囲に入るまで繰り返し

            Console.Write("あなたの入力した数値は{0}です", n);
        }
    }
}

実行結果

1~5のいずれかの数値を入力してください : 10
1~5のいずれかの数値を入力してください : -1
1~5のいずれかの数値を入力してください : 4
あなたの入力した数値は4です
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

都内の精密機器を作っている会社に勤務している14年目のエンジニアです。趣味は美味しいものを食べることとゴルフ。プログラムについて今まで学んだことをわかりやすく発信するサイトを目指しています。

コメント

コメントする

目次
閉じる