V tem članku bomo spoznali ugnezdene zanke v C #. Naučili se bomo uporabljati ugnezdene zanke, medtem ko in do-while v programu.
Zanka znotraj druge zanke se imenuje ugnezdena zanka. Takole je videti ugnezdena zanka:
Zunanja zanka (// telo notranje zanke (// telo notranje zanke)………)
Kot lahko vidite, zunanja zanka zapira notranjo zanko . Notranja zanka je del zunanje zanke in se mora začeti in končati znotraj telesa zunanje zanke.
Na vsaki ponovitvi zunanje zanke se notranja zanka izvede v celoti.
Vgnezdeno za zanko
Zanka for znotraj druge zanke for se imenuje ugnezdena zanka for.
Na primer:
for (int i = 0; i <5; i ++) (// telo zunanje for zanke za (int j = 0; j <5; j ++) (// telo notranje for zanke) // telo zunanje zanke )
Primer 1: ugnezdeni za zanko
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); ) ) )
Ko zaženemo program, bo rezultat:
Zunanja zanka teče 5-krat Notranja zanka deluje 25-krat
V tem programu se zunanja zanka izvaja petkrat. Vsakič, ko se zunanja zanka zažene, se notranja zanka izvede petkrat, tako da se izvaja 25-krat.
2. primer: ugnezdeni za vzorec zanke za tiskanje
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(); ) ) ) )
Ko zaženemo program, bo rezultat:
1 1 2 1 2 3 1 2 3 4 1 2 3 4 5
Vgnezdena zanka while
Zanka while znotraj druge zanke while se imenuje ugnezdena zanka while.
Na primer:
while (stanje-1) (// telo zunanje zanke while, medtem ko (stanje-2) (// telo notranje zanke while) // telo zunanje zanke while)
Primer 3: Gnezdo, medtem ko zanka
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(); ) ) ) )
Ko zaženemo program, bo rezultat:
(0,0) (0,1) (1,0) (1,1)
Vgnezdena zanka do-while
Zanka do-while znotraj druge do-while zanke se imenuje ugnezdena do-while zanka.
Na primer:
do (// telo zunanje zanke while do (// telo notranje zanke while) while (stanje-2); // telo zunanje zanke while) while (stanje-1);
Primer 4: Vgnezdena do-while zanka
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); ) ) )
Ko zaženemo program, bo rezultat:
(0,0) (0,1) (1,0) (1,1)
Različne notranje in zunanje ugnezdene zanke
Ni obvezno gnezditi iste vrste zanke. Zanko for lahko vstavimo v zanko while ali vmesno zanko znotraj zanke for.
Primer 5: C # ugnezdena zanka: različne notranje in zunanje zanke
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++; ) ) ) )
Ko zaženemo program, bo rezultat:
1 2 2 3 3 3 4 4 4 4 5 5 5 5 5
V zgornjem programu je zanka for umeščena v zanko while. V zanki lahko uporabimo različne vrste zank.