工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Industrial programming >> C言語

C のループ:For、While、Do While ステートメントのループ [例]

C のループとは?

C のループ ステートメント 条件が偽になるまで一連のステートメントを何度も実行します。 C のループは、ループ本体と制御ステートメントの 2 つの部分で構成されます。制御ステートメントは、指定された条件が false になるまでループの本体を実行するように指示するいくつかの条件の組み合わせです。 C ループの目的は、同じコードを何度も繰り返すことです。

このチュートリアルでは、次のことを学びます-

C のループの種類

プログラム内の制御ステートメントの位置に応じて、C のループ ステートメントは次の 2 つのタイプに分類されます。

1.入場制御ループ

2.制御ループを終了

C のエントリ制御ループでは、 ループの本体を実行する前に条件がチェックされます。事前チェック ループとも呼ばれます。

終了制御ループ内 、ループの本体を実行した後に条件がチェックされます。ポスト チェック ループとも呼ばれます。

制御条件を明確に定義して指定する必要があります。そうしないと、ループが無限に実行されてしまいます。実行を止めずにステートメントを何度も処理するループを無限ループと呼びます .無限ループは「無限ループ」とも呼ばれます 」以下は、無限ループの特徴の一部です:

1. 終了条件が指定されていません。

2. 指定された条件が満たされない。

指定された条件は、ループ本体を実行するかどうかを決定します。

「C」プログラミング言語は、3 種類のループ構造を提供します:

1. while ループ

2. do-while ループ

3. for ループ

Sr.番号 ループ タイプ 説明 1.LoopIn while ループ中、ループの本体を処理する前に条件が評価されます。条件が true の場合にのみ、ループの本体が実行されます。2.Do-While ループ do…while ループでは、条件は常にループの本体の後に実行されます。終了制御ループとも呼ばれます。3.For ループ for ループでは、初期値が 1 回だけ実行され、各反復後に条件がテストされ、カウンターが固定値と比較され、false が返されたときに for ループが停止します。 .

C の while ループ

while ループは、最も単純なループ構造です。 C プログラミング言語の while ループ構文は次のとおりです。

C の While ループの構文:

while (condition) {
             statements;
}

これは、入力制御ループです。 while ループでは、ループの本体を処理する前に条件が評価されます。条件が真の場合にのみ、ループの本体が実行されます。ループの本体が実行された後、再び先頭に戻り、条件が真かどうかをチェックし、条件が偽になるまで同じ処理を実行します。条件が false になると、コントロールはループから抜けます。

ループを抜けると、制御はループ直後のステートメントに移ります。ループの本体には、複数のステートメントを含めることができます。ステートメントが 1 つしかない場合、中括弧は必須ではありません。本文に 1 つのステートメントがある場合でも、中括弧を使用することをお勧めします。

while ループでは、条件が真でない場合、ループの本体は一度も実行されません。後で説明する do while ループでは異なります。

次のプログラムは、C プログラミング例の while ループを示しています:

#include<stdio.h>
#include<conio.h>
int main()
{
	int num=1;	//initializing the variable
	while(num<=10)	//while loop with condition
	{
		printf("%d\n",num);
		num++;		//incrementing operation
	}
	return 0;
}

出力:

1
2
3
4
5
6
7
8
9
10

上記のプログラムは、while ループの使用法を示しています。上記のプログラムでは、while ループを使用して 1 から 10 までの一連の数字を出力しました。

<センター>

<図>

C プログラミングの While ループ

<オール>
  • num という変数を値 1 で初期化しました。1 から 10 まで出力するので、変数は値 1 で初期化されます。0 から出力したい場合は、初期化中に値 0 を割り当てます。
  • リ>
  • while ループでは、条件 (num<=10) を指定しました。これは、ループが num の値が 10 になるまで本体を実行することを意味します。その後、ループは終了し、制御は外側に落ちます。ループ。
  • ループの本体には、数値を出力する印刷関数と、ループの実行ごとに値をインクリメントするインクリメント操作があります。 num の初期値は 1 で、実行後に 2 になり、次の実行時に 3 になります。このプロセスは、値が 10 になるまで続き、コンソールにシリーズを出力してループを終了します。 .
  • \n は書式設定の目的で使用されます。つまり、値は新しい行に出力されます。

    C の Do-While ループ

    C の do…while ループは while ループに似ていますが、条件が常にループ本体の後に実行される点が異なります。これは終了制御ループとも呼ばれます。

    C プログラミング言語の do while ループの構文は次のとおりです。

    C の Do-While ループの構文:

     do {
      statements
    } while (expression);

    while ループで見たように、条件が true の場合にのみ本体が実行されます。場合によっては、条件が false であっても、ループの本体を少なくとも 1 回実行する必要があります。このタイプの操作は、do-while ループを使用して実現できます。

    do-while ループでは、ループの本体は常に少なくとも 1 回実行されます。本体が実行された後、状態がチェックされます。条件が true の場合、ループの本体が再度実行されます。それ以外の場合、制御はループの外に移されます。

    while ループと同様に、制御がループを抜けると、ループ直後のステートメントが実行されます。

    while ループと do-while ループの決定的な違いは、while ループでは while が最初に書かれていることです。 do-while ループでは、最後に while 条件を記述し、セミコロン (;) で終了します。

    次の C のループ プログラムは、do-while ループの動作を示しています。

    以下は、番号 2 のテーブルを出力する C の例の do-while ループです:

    #include<stdio.h>
    #include<conio.h>
    int main()
    {
    	int num=1;	//initializing the variable
    	do	//do-while loop 
    	{
    		printf("%d\n",2*num);
    		num++;		//incrementing operation
    	}while(num<=10);
    	return 0;
    }
    

    出力:

    2
    4
    6
    8
    10
    12
    14
    16
    18
    20
    

    上記の例では、do-while ループを使用して 2 の乗算表を出力しました。プログラムがシリーズを印刷する方法を見てみましょう。

    <センター>

    <図>

    C プログラミングにおける Do-While ループ

    <オール>
  • まず、変数「num」を値 1 で初期化しました。次に、do-while ループを記述しました。
  • ループには、num の値に 2 を掛けて系列を出力する print 関数があります。
  • インクリメントごとに num の値が 1 ずつ増加し、画面に出力されます。
  • 最初、num の値は 1 です。ループの本体では、次のように印刷関数が実行されます。 .これは num の値が 10 になるまで続きます。その後、ループは終了し、ループの直後にあるステートメントが実行されます。この場合、0 を返します。
  • C の for ループ

    for ループは、「C」プログラミングにおけるより効率的なループ構造です。 C の for ループ構文の一般的な構造は次のとおりです。

    C の For ループの構文:

    for (initial value; condition; incrementation or decrementation ) 
    {
      statements;
    }
    
    • for ループの初期値は 1 回だけ実行されます。
    • 条件は、反復ごとにカウンタをテストして固定値と比較し、false が返されたときに for ループを停止するブール式です。
    • インクリメント/デクリメントは、カウンターを設定値だけ増加 (または減少) させます。

    次のプログラムは、C プログラミング例の for ループを示しています:

    #include<stdio.h>
    int main()
    {
    	int number;
    	for(number=1;number<=10;number++)	//for loop to print 1-10 numbers
    	{
    		printf("%d\n",number);		//to print the number
    	}
    	return 0;
    }
    

    出力:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    

    上記のプログラムは、for ループを使用して 1 から 10 までの数列を出力します。

    <センター>

    <図>

    C プログラミングの for ループ

    <オール>
  • 値を格納する int データ型の変数を宣言しました。
  • for ループの初期化部分で、変数番号に値 1 を代入しました。条件部分では、条件を指定してから増分部分を指定しました。
  • ループの本体には、コンソールの新しい行に数字を表示する印刷関数があります。 number には値 1 が格納されています。最初の繰り返しの後、値がインクリメントされて 2 になります。変数 number の値は 2 になります。条件が再チェックされ、条件が true であるため、ループが実行されます。画面に2つ印刷されます。このループは、変数の値が 10 になるまで実行を続けます。その後、ループは終了し、一連の 1 から 10 が画面に出力されます。
  • C では、for ループの各部分にコンマで区切られた複数の式を含めることができます。

    例:

    for (x = 0, y = num; x < y; i++, y--) { 
      statements; 
    }
    

    また、セミコロンを追加することで、初期値の式、条件、および/またはインクリメントをスキップできます。

    例:

    int i=0;
    int max = 10;
    for (; i < max; i++) {
      printf("%d\n", i);
    }
    

    ループは、外側のループと内側のループがある場所にもネストできることに注意してください。外側のループの反復ごとに、内側のループはそのサイクル全体を繰り返します。

    C プログラミングでネストされた for ループを使用して乗算表を出力する、for ループに複数の条件がある次の例を考えてみましょう:

    #include <stdio.h>
    int main() {
    int i, j;
    int table = 2;
    int max = 5;
    for (i = 1; i <= table; i++) { // outer loop
      for (j = 0; j <= max; j++) { // inner loop
        printf("%d x %d = %d\n", i, j, i*j);
      }
      printf("\n"); /* blank line between tables */
    }}

    出力:

    1 x 0 = 0
    1 x 1 = 1
    1 x 2 = 2
    1 x 3 = 3
    1 x 4 = 4
    1 x 5 = 5
    
    2 x 0 = 0
    2 x 1 = 2
    2 x 2 = 4
    2 x 3 = 6
    2 x 4 = 8
    2 x 5 = 10
    

    for ループのネストは、任意のレベルまで行うことができます。ネストされたループは、コードを読みやすくするために適切にインデントする必要があります。 「C」の一部のバージョンでは、ネストが最大 15 ループに制限されていますが、それ以上のループを提供するバージョンもあります。

    ネストされたループは、主に配列アプリケーションで使用されます。これについては、以降のチュートリアルで説明します。

    C の Break ステートメント

    break ステートメントは、主に switch ステートメントで使用されます。ループをすぐに停止する場合にも役立ちます。

    while ループを終了するためのブレークを導入する次のプログラムを検討します:

    #include <stdio.h>
    int main() {
    int num = 5;
    while (num > 0) {
      if (num == 3)
        break;
      printf("%d\n", num);
      num--;
    }}
    

    出力:

    5
    4
    

    C言語のContinueステートメント

    次の繰り返しにスキップしたいが、ループにとどまりたい場合は、continue ステートメントを使用する必要があります。

    例:

    #include <stdio.h>
    int main() {
    int nb = 7;
    while (nb > 0) {
      nb--;
      if (nb == 5)
        continue;
     printf("%d\n", nb);
    }}
    

    出力:

    6
    4
    3
    2
    1
    

    したがって、値 5 はスキップされます。

    選択するループは?

    ループの選択は、プログラマーにとって常に困難な作業です。ループを選択するには、次の手順を実行します。

    • 問題を分析し、事前テストまたは事後テストのループが必要かどうかを確認します。
    • 事前テストが必要な場合は、while または for ループを使用してください。
    • 事後テストが必要な場合は、do-while ループを使用します。

    まとめ

    • C でループを定義する:ループは、どのプログラミング言語でも重要な概念の 1 つです。 C 言語のループは、条件ステートメントを使用して実装されます。
    • C のループ制御ステートメントのブロックは、条件が false になるまで何度も実行されます。
    • C プログラミングのループには、開始制御と終了制御の 2 種類があります。
    • C のさまざまなループ制御命令を挙げてください。C プログラミングでは、1) while 2) do-while と 3) for ループ制御命令が提供されます。
    • for および while ループ C プログラミングは、C 言語の入力制御ループです。
    • Do-while は C の終了制御ループです。

    C言語

    1. C# while と do...while ループ
    2. C# for ループ
    3. C# foreach ループ
    4. C++ for ループ
    5. C++ while および do...while ループ
    6. 自動化とプロセス制御ループのトラブルシューティングを行うためのより良い方法
    7. while と do-while の違い:例で説明
    8. forループを使用したJAVAプログラムのアームストロング数
    9. while &for ループを使用した Java の回文数プログラム
    10. Python の For &While ループ:列挙、中断、継続ステートメント
    11. SINUMERIK 840D プログラミング WHILE ループの使用法