V tomto článku sa dozvieme o vnorených slučkách v C #. Naučíme sa v programe používať vnorené slučky for, while a do-while.
Smyčka v rámci inej slučky sa nazýva vnorená slučka. Takto vyzerá vnorená slučka:
Vonkajšia slučka (// telo vonkajšej slučky Vnútorná slučka (// telo vnútornej slučky) ………)
Ako vidíte, vonkajšia slučka obklopuje vnútornú slučku . Vnútorná slučka je súčasťou vonkajšej slučky a musí začínať a končiť v tele vonkajšej slučky.
Pri každej iterácii vonkajšej slučky sa vnútorná slučka vykoná úplne.
Vnorené pre slučku
Smyčka for vo vnútri inej slučky for sa nazýva vnorená slučka for.
Napríklad:
for (int i = 0; i <5; i ++) (// telo vonkajšej slučky for pre (int j = 0; j <5; j ++) (// telo vnútornej slučky for)) // telo vonkajšej slučky for )
Príklad 1: Vnorené pre slučku
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); ) ) )
Keď spustíme program, výstup bude:
Vonkajšia slučka sa spúšťa 5-krát Vnútorná slučka sa spúšťa 25-krát
V tomto programe vonkajšia slučka beží päťkrát. Zakaždým, keď beží vonkajšia slučka, vnútorná slučka beží 5-krát, takže beží 25-krát.
Príklad 2: Vnorené pre slučku, aby sa vytlačil vzor
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(); ) ) ) )
Keď spustíme program, výstup bude:
1 1 2 1 2 3 1 2 3 4 1 2 3 4 5
Vnorená slučka while
Smyčka while vo vnútri inej while slučky sa nazýva vnorená while slučka.
Napríklad:
while (condition-1) (// telo vonkajšej while slučky while (condition-2) (// telo vnútornej while smyčky) // telo vonkajšej while smyčky)
Príklad 3: Vnorené do cyklu 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(); ) ) ) )
Keď spustíme program, výstup bude:
(0,0) (0,1) (1,0) (1,1)
Vnorená slučka do-while
Slučka do-while vo vnútri inej slučky do-while sa nazýva vnorená slučka do-while.
Napríklad:
do (// telo vonkajšej while slučky do (// telo vnútornej while smyčky) while (podmienka-2); // telo vonkajšej while slučky) while (podmienka-1);
Príklad 4: Vnorená slučka do-while
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); ) ) )
Keď spustíme program, výstup bude:
(0,0) (0,1) (1,0) (1,1)
Rôzne vnútorné a vonkajšie vnorené slučky
Vnorenie rovnakého typu slučky nie je povinné. Do cyklu while môžeme vložiť cyklus for alebo do cyklu for cyklus do-while.
Príklad 5: C # vnorená slučka: Rôzne vnútorné a vonkajšie slučky
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++; ) ) ) )
Keď spustíme program, výstup bude:
1 2 2 3 3 3 4 4 4 4 5 5 5 5 5
Vo vyššie uvedenom programe je cyklus for umiestnený v rámci cyklu while. Vo vnútri slučky môžeme použiť rôzne typy slučiek.