Beágyazott hurkok a C #: for, while, do-while alatt (példákkal)

Ebben a cikkben megismerjük a C # beágyazott hurkait. Megtanuljuk használni a beágyazott, míg és a do-while ciklusokat egy programban.

Egy másik hurokban lévő hurokot egymásba ágyazottnak nevezzük. Így néz ki egy beágyazott hurok:

 Külső hurok (// külső hurok teste Belső hurok (// belső hurok teste)………) 

Mint látható, a külső hurok befogja a belső hurkot . A belső hurok a külső hurok része, és a külső hurok testén belül kell kezdődnie és befejeznie.

A külső hurok minden iterációján a belső hurok teljesen végrehajtásra kerül.

Beágyazva hurokhoz

A hurok belsejében lévő A for ciklust egymásba ágyazottnak nevezzük.

Például:

 for (int i = 0; i <5; i ++) (// hurok külső teste (int j = 0; j <5; j ++) (// belső test hurok számára) // külső hurok hurok számára ) 

1. példa: Beágyazva a hurokba

 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); ) ) ) 

A program futtatásakor a kimenet a következő lesz:

 A külső hurok ötször fut A belső hurok 25-ször fut

Ebben a programban a külső hurok ötször fut. Minden alkalommal, amikor a külső hurok fut, a belső hurok ötször fut, így összesen 25-ször fut.

2. példa: Beágyazva a hurok nyomtatásához

 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(); ) ) ) ) 

A program futtatásakor a kimenet a következő lesz:

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

Beágyazott, míg hurok

Egy while ciklust egy másik while-ban, míg a loop-ot egymásba ágyazottnak hívják.

Például:

 while (feltétel-1) (// külső, míg a hurok teste, míg (feltétel-2) (// a belső, míg a hurok teste) // a külső, míg a hurok teste 

3. példa: Hurok közben beágyazva

 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(); ) ) ) ) 

A program futtatásakor a kimenet a következő lesz:

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

Beágyazott do-while hurok

Egy másik do-while hurok belsejében lévő do-while ciklust beágyazott do-while ciklusnak nevezzük.

Például:

 do (// a külső, míg a hurok teste do (// a belső, míg a hurok teste) while (feltétel-2); // a külső, míg a hurok teste a while (feltétel-1); 

4. példa: Beágyazott do-while hurok

 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); ) ) ) 

A program futtatásakor a kimenet a következő lesz:

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

Különböző belső és külső beágyazott hurkok

Nem kötelező azonos típusú hurok fészkelése. Helyezhetünk egy for ciklust egy while hurokba vagy egy do-while ciklust egy for ciklusba.

5. példa: C # beágyazott hurok: Különböző belső és külső hurkok

 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++; ) ) ) ) 

A program futtatásakor a kimenet a következő lesz:

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

A fenti programban egy for ciklust egy while ciklusba helyezünk. Különböző típusú hurkokat használhatunk a hurkon belül.

érdekes cikkek...