Tässä artikkelissa opitaan sisäkkäisistä silmukoista C #: ssä. Opimme käyttämään sisäkkäisiä silmukoita, kun ja do-while -silmukoita ohjelmassa.
Toisen silmukan sisäistä silmukkaa kutsutaan sisäkkäisiksi silmukoiksi. Näin sisäkkäinen silmukka näyttää:
Ulkosilmukka (// ulomman silmukan runko Sisempi silmukka (// sisäisen silmukan runko)………)
Kuten näette, ulompi silmukka sulkee sisemmän silmukan . Sisempi silmukka on osa ulompaa silmukkaa, ja sen on aloitettava ja lopetettava ulomman silmukan rungossa.
Jokaisella ulomman silmukan iteraatiolla sisäinen silmukka suoritetaan kokonaan.
Sisäkkäin silmukalle
A-silmukkaa toisen silmukan sisällä kutsutaan sisäkkäiseksi silmukaksi.
Esimerkiksi:
for (int i = 0; i <5; i ++) (// silmukan ulkokehä silmukkaa varten (int j = 0; j <5; j ++) (// sisäosan kehä silmukalle) // ulomman keho silmukalle )
Esimerkki 1: Sisäkkäin silmukalle
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); ) ) )
Kun suoritamme ohjelmaa, tulos on:
Ulkoinen silmukka kulkee 5 kertaa Sisäinen silmukka kulkee 25 kertaa
Tässä ohjelmassa ulompi silmukka kulkee 5 kertaa. Joka kerta, kun ulompi silmukka kulkee, sisempi silmukka kulkee viisi kertaa, jolloin se kulkee yhteensä 25 kertaa.
Esimerkki 2: Sisäkkäin silmukan tulostamista varten
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(); ) ) ) )
Kun suoritamme ohjelmaa, tulos on:
1 1 2 1 2 3 1 2 3 4 1 2 3 4 5
Sisäkkäin silmukan aikana
Hetkellinen silmukka toisen taas sisällä, kun taas silmukkaa kutsutaan sisäkkäiseksi silmukaksi.
Esimerkiksi:
while (ehto-1) (// ulomman silmukan runko taas (ehto-2) (// sisäisen silmukan runko) // ulomman silmukan runko)
Esimerkki 3: Sisäkkäin silmukan aikana
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(); ) ) ) )
Kun suoritamme ohjelmaa, tulos on:
(0,0) (0,1) (1,0) (1,1)
Sisäkkäinen do-while -silmukka
Toisen do-while -silmukan sisällä olevaa do-while -silmukkaa kutsutaan sisäkkäisiksi do-while -silmukiksi.
Esimerkiksi:
do (// ulomman kun taas silmukan runko do (// rungon sisäisen silmukan runko) while (ehto-2); // ulomman silmukan runko) (
Esimerkki 4: Sisäkkäinen do-while-silmukka
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); ) ) )
Kun suoritamme ohjelmaa, tulos on:
(0,0) (0,1) (1,0) (1,1)
Erilaiset sisemmät ja ulkoiset sisäkkäiset silmukat
Saman tyyppisten silmukoiden pesiminen ei ole pakollista. Voimme laittaa for-silmukan while-silmukan sisään tai do-while-silmukan for-silmukan sisään.
Esimerkki 5: C # sisäkkäinen silmukka: Erilaiset sisä- ja ulkosilmukat
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++; ) ) ) )
Kun suoritamme ohjelmaa, tulos on:
1 2 2 3 3 3 4 4 4 4 5 5 5 5 5
Edellä olevassa ohjelmassa for for -silmukka sijoitetaan while-silmukkaan. Voimme käyttää erityyppisiä silmukoita silmukan sisällä.