Indlejrede sløjfer i C #: for, while, do-while (med eksempler)

I denne artikel lærer vi om indlejrede sløjfer i C #. Vi lærer at bruge indlejrede til, mens og do-while-sløjfer i et program.

En sløjfe inden for en anden sløjfe kaldes indlejret sløjfe. Sådan ser en indlejret løkke ud:

 Outer-Loop (// body of outer-loop Inner-Loop (// body of inner-loop) ………)) 

Som du kan se, omslutter den ydre sløjfe den indre sløjfe . Den indre sløjfe er en del af den ydre sløjfe og skal starte og slutte inden i kroppen af ​​den ydre sløjfe.

På hver iteration af ydre sløjfe udføres den indre sløjfe fuldstændigt.

Indlejret til løkke

En for loop inde i en anden for loop kaldes indlejret for loop.

For eksempel:

 for (int i = 0; i <5; i ++) (// krop af ydre til løkke for (int j = 0; j <5; j ++) (// krop af indre for løkke) // krop af ydre til løkke ) 

Eksempel 1: Nestet til loop

 using System; namespace Loop ( class NestedForLoop ( public static void Main(string() args) ( int outerLoop = 0, innerLoop = 0; for (int i=1; i<=5; i++) ( outerLoop ++; for (int j=1; j<=5; j++) ( innerLoop++; ) ) Console.WriteLine("Outer Loop runs (0) times", outerLoop); Console.WriteLine("Inner Loop runs (0) times", innerLoop); ) ) ) 

Når vi kører programmet, vil output være:

 Outer Loop løber 5 gange Inner Loop løber 25 gange

I dette program kører den ydre sløjfe 5 gange. Hver gang den ydre sløjfe kører, kører den indvendige sløjfe 5 gange, så den kører 25 gange i alt.

Eksempel 2: Nestet til mønster med loop til udskrivning

 using System; namespace Loop ( class NestedForLoop ( public static void Main(string() args) ( for (int i=1; i<=5; i++) ( for (int j=1; j<=i; j++) ( Console.Write(j + " "); ) Console.WriteLine(); ) ) ) ) 

Når vi kører programmet, vil output være:

 1 1 2 1 2 3 1 2 3 4 1 2 3 4 5

Indlejret mens sløjfe

En mens sløjfe inde i en anden mens sløjfe kaldes indlejret mens sløjfe.

For eksempel:

 while (condition-1) (// body of outer while loop while (condition-2) (// body of inner while loop) // body of outer while loop) 

Eksempel 3: Nestet mens Loop

 using System; namespace Loop ( class NestedWhileLoop ( public static void Main(string() args) ( int i=0; while (i<2) ( int j=0; while (j<2) ( Console.Write("((0),(1)) ", i,j); j++; ) i++; Console.WriteLine(); ) ) ) ) 

Når vi kører programmet, vil output være:

 (0,0) (0,1) (1,0) (1,1)

Indlejret do-while-løkke

En do-while-sløjfe inde i en anden do-while-sløjfe kaldes indlejret do-while-sløjfe.

For eksempel:

 do (// body of outer while loop do (// body of inner while loop) while (condition-2); // body of outer while loop) while (condition-1); 

Eksempel 4: Indlejret do-while-løkke

 using System; namespace Loop ( class NestedWhileLoop ( public static void Main(string() args) ( int i=0; do ( int j=0; do ( Console.Write("((0),(1)) ", i,j); j++; ) while (j<2); i++; Console.WriteLine(); ) while (i<2); ) ) ) 

Når vi kører programmet, vil output være:

 (0,0) (0,1) (1,0) (1,1)

Forskellige indre og ydre indlejrede løkker

Det er ikke obligatorisk at rede samme type løkke. Vi kan sætte en for-loop inde i en while-loop eller en do-while-loop inde i en for-loop.

Eksempel 5: C # Indlejret løkke: Forskellige indre og ydre løkker

 using System; namespace Loop ( class NestedLoop ( public static void Main(string() args) ( int i=1; while (i<=5) ( for (int j=1; j<=i; j++) ( Console.Write(i + " "); ) Console.WriteLine(); i++; ) ) ) ) 

Når vi kører programmet, vil output være:

 1 2 2 3 3 3 4 4 4 4 5 5 5 5 5

I ovenstående program placeres en for-løkke inden for en stund-løkke. Vi kan bruge forskellige typer loop i en loop.

Interessante artikler...