【C#入門】繰り返しの流れを途中で変える処理について分かりやすいサンプルコードで徹底解説①

今回は繰り返しの流れを途中で変える処理について紹介します。
繰り返しの途中で、「ここで処理を終わらせたい」という場合には、ループから抜け出すことも可能です。
C#には、繰り返し制御を補助する3つのジャンプ文が用意されています。
今回はbreak文とcontinue文について紹介します。

break文

break文は、switch文でも使われますが、
繰り返しを特定の条件で中断してループから脱出するときにも使われます。

break文を使った例を示してみましょう。
このプログラムは、 数値を10回入力して合計を求めますが、負数が入力されたらループを中断します。

breakの実行結果

break文を多重ループの中で使用する場合には、
そのbreak文が含まれるループのループに抜け出すだけなので注意してください。
多重ループから抜け出すには、そのたびにbreak文を使うか、次回紹介するgoto文を使います。

continue文

それ以降の文をスキップし、次のループ処理を行うには、continue文を使います。
特定の入力値を受け付けたくない場合などに用いると便利です。

次のコードは1000を入力値で5回割る処理を行うものですが、
0で割るゼロ除算を避けるため、割る数に0を入力したらcontinue文で割り算の処理をスキップし、
再入力させるようになっています。

continue(for文使用)の実行結果

同じ内容をforではなく、whileで書いてみると
で書いてみるとどうなるでしょうか。

continue(while文使用)の実行結果

for文で書いたコードは、0を入力した場合も含めて5回繰り返しました。
けれども、while文では、0を入力した場合は含めずに5回繰り返しています。
forループ中のcontinueではカウンタ変数の更新に戻りますが、
whileとdo-whileでは、continueでただちにループの先頭に戻るので、このような違いが出てくるのです。

Writer
壷井

壷井

株式会社flyhawkの壷井です。フライテックメディア事業部でのメディア運営・ライター業務なども担当。愛機はMac Book AirとThinkPad。好きな言語:swift、JS系(Node.js等)。好きなサーバー:AWS。受託開発やプログラミングスクールの運営をしております。ご気軽にお問い合わせください。

最新の案件情報

フリーランスエンジニアの案件探し