loops c control statements
Slingor i C # Låt programmet köra ett kodblock flera gånger. Den här självstudien förklarar olika slingor som till exempel slingor, för slingor osv med exempel:
I vår tidigare handledning lärde vi oss olika C # operatörer än vad som kan användas i samband med beslutsutlåtanden för att följa ett nödvändigt exekveringsflöde.
I denna handledning kommer vi att diskutera C # Loop-uttalanden som gör att programmet kan utföra iterativ logik.
=> Se vår ultimata C # -träningsguide här
Vad du kommer att lära dig:
Slingor i C #: En fullständig översikt
Alla uttalanden skrivna i C # exekveras sekventiellt, men det kan finnas ett scenario där programmet måste köra ett visst kodavsnitt flera gånger för att hantera denna typ av situation, C # erbjuder kontrolluttalanden som kan användas för att hantera komplicerade exekveringsflöden .
En slinga gör att programmet kan köra ett kodblock flera gånger genom att följa ett allmänt uttalande i C #. C # erbjuder olika typer av slingor för att hantera olika krav på programmeringskörning.
Kontrolluttalande
Innan vi börjar arbeta med slingor måste vi veta vad ett kontrolluttalande är. Ett kontrollmeddelande gör att slingan kan ändra sin kurs från sin normala sekvens. Programmeringsspråket C # erbjuder följande grundläggande slingkontrolluttalanden.
Fortsätt uttalande
Fortsätt uttalande i C # används av följande skäl:
- Att utföra nästa iteration av slingan medan du hoppar över någon kod däremellan.
Syntaxen för fortsättningsuttalandet är “ Fortsätta;'
Bryta uttalande
Brytuttalande i C # används av följande skäl:
konvertera char * till int c ++
- Det används för att avsluta en slinga så att programmet kan fortsätta med nästa slutsats. I kapslade slingor kan den användas för att stoppa exekveringen av den inre slingan, vilket ger programkontrollen till nästa uttalande efter den aktuella koden.
- Det kan användas för att avsluta ett uttalande i Switch fallet.
Syntaxen för pausuttalandet är “ ha sönder;'
While Loop
While-slingan validerar ett villkor och kör sedan kodblocket så länge som det villkor som definierats under tiden är sant.
Syntax
While(Boolean Condition) { //code block// }
Viktiga tips:
- Det booleska uttalandet valideras innan koden körs.
- Om det booleska uttrycket valideras som sant körs bara koden.
- När kodblocket har körts återgår kontrollen till ett booleskt uttalande för utvärdering.
- Slingan fortsätter att köras så länge det booleska uttrycket utvärderas sant.
- Om det booleska uttrycket utvärderas till falskt hoppas kodblocket över och nästa rad i koden utanför while-slingan körs.
- Se alltid till att uppdatera variabeln som används med ett booleskt uttryck så att den känner igen slutet på slingan vid den förväntade iterationen.
- Om variabeln associerad med while-slingan inte uppdateras eller alltid returnerar ett sant värde blir den en oändlig slinga.
Exempel på en enkel stundslinga:
int a = 0; while (a <5) { Console.WriteLine(“The value of a is :”+a); a++; } Console.WriteLine(“The while block has been executed”);
Kodförklaring
I programmet ovan har vi angett det booleska uttrycket som (a<5) for “while”. It means that the loop will continue to execute the code snippet as long as the value of “a” is less than 5.
I kodblocket skriver vi ut värdet “a” och sedan har vi lagt till stegoperatören. Som vi diskuterade tidigare i vår tidigare handledning används ökningsoperatören för att öka heltalets värde med 1. Så snart värdet “a” skrivs ut på konsolen, kommer kontrollen att passera genom stegoperatören, vilket kommer att öka dess storlek med 1.
Nu kommer kontrollen att flytta för att utvärdera det booleska uttrycket. För det aktuella exemplet, eftersom vi redan har definierat initialvärdet för a som '0', kommer det att ökas med '1'. Så det booleska uttrycket blir (1<5) which will evaluate to “true” and the code block inside the loop will get executed.
När värdet “a” når 5, kommer körningen att sluta eftersom det booleska uttrycket nu kommer att läsa som falskt. När det booleska uttrycket returnerar falskt, kommer kontrollen att finnas loop och kommer att köra nästa kodrad utanför while-blocket.
Om programmet körs blir utmatningen enligt nedan:
Produktion
Värdet på a är: 0
Värdet på a är: 1
Värdet på a är: 2
Värdet på a är: 3
Värdet på a är: 4
While-blocket har utförts
Gör medan Loop
Gör medan slinga liknar stunder med en skillnad, utvärderas tillståndet i slutet av slingan istället för att börja som vi diskuterade i fallet med en stundslinga. Detta ger en unik funktion till den här slingan, d.v.s. den kommer att utföra uttalandet inuti slinggränsen minst en gång.
Medan andra slingor å andra sidan utvärderar det booleska uttrycket i början vilket innebär att om uttrycket är falskt kommer inte loop att köras.
Syntax
do { //code block for execution// } while( Boolean expression );
Viktiga tips:
oracle plsql intervjufrågor för erfarna
- 'Gör medan' fungerar ungefär som en stundslinga. Do-nyckelord placeras i början av kodblocket och stunden placeras efter kodblocket.
- Det booleska uttrycket utvärderas i slutet av slingan istället för början. Om villkoret återkommer som sant fortsätter slingan. Om uttrycket returnerar falskt slutar slingan där själv.
- 'Gör medan' kör kodblocket inom loopgränserna åtminstone en gång.
Exempel på en enkel gör-medan-slinga:
int nmbr = 5; /* do loop starts*/ do { Console.WriteLine('value of nmbr is '+ nmbr); nmbr++; } while (nmbr <10); Console.ReadLine();
Kodförklaring
I koden ovan har vi förklarat ett heltal, 'nmbr' med värde 5. Sedan har vi startat slingan genom att placera nyckelordet 'Gör'. Efter Do och inuti lockarna har vi definierat koden som vi vill utföra. Här skriver vi bara ut värdet på nmbr-heltalet till konsolen. Du kan skriva din egen komplexa kod inom parenteserna.
Som vi kan se, efter att vi har skrivit ut värdet på nmbr, ökar vi det. När kodblocket har behandlats flyttas kontrollen till 'while', där det booleska uttrycket utvärderas. Här, tills nmbr har ett värde mindre än 10, kommer det att fortsätta att itera slingan.
Så om vi kör det här kodavsnittet kan följande utdata observeras:
Produktion
värdet på nmbr är 5
värdet på nmbr är 6
värdet av nmbr är 7
värdet på nmbr är 8
värdet på nmbr är 9
En gång har värdet på nmbr nått 10 (genom att öka med varje iteration). Då kommer while-villkoret att returnera ett falskt värde eftersom det inte längre är mindre än 10. Detta kommer att leda till att kontrollen lämnar 'Do while' -slingan och kontrollen kommer att gå vidare till nästa kodrad.
För Loop
För loop i C # följer en syntax som är helt annorlunda än 'while' -slingan. Villkoret för 'for' -slingan innehåller initialisering och modifiering av tillståndet i själva syntaxen. 'For' -slingan är ganska användbar om du vet det exakta antalet iterationer som du behöver utföra för slingan.
Definitionen inom slingans parentes innehåller tre delar åtskilda från varandra med semikolon. Den första delen är initialiseringen, sedan har vi ett booleskt uttryck följt av iterationslistan.
Syntax
for(initializer; boolean expression; iteration list) { //code block for execution// }
Den första delen av uttrycket är initialiseringsblocket. Detta uttryck används för att initiera heltalsvariabeln. Detta ger värdet i början av slingan.
Den andra delen är det booleska uttrycket som används för att utvärdera det sanna eller falska tillståndet för fortsättningen av slingan precis som under slingan.
Det tredje uttrycket är iterationsdelen. Här kan vi använda inkrementoperatorerna eller dekrementoperatörerna för att öka eller minska värdet på den initialiserade variabeln enligt exekveringskraven.
Viktiga tips:
- För slingor i C # kan programmerarna definiera det exakta antalet iterationer som ska utföras.
- For loop innehåller också initialiserings- och iterationsuttryck tillsammans med det booleska uttrycket för att ge ett villkor för slingan.
- For loop används när vi tydligt vet antalet iteration som krävs av loop.
- Initieringen av variabeln sker i början av slingan.
- Efter initialisering skickas kontrollen till det andra avsnittet för validering av det booleska uttrycket. Det booleska uttrycket kan vara så komplext som du vill, men resultatet ska alltid returnera true eller false som ett värde.
- Efter att det booleska uttrycket har utvärderats som sant, körs kodblocket inom de lockiga hakparenteserna och kontrollen flyttas igen till toppen av slingan och inkrement- eller minskningsoperatören körs.
- Efter att iterationslistan har exekverats flyttas kontrollen igen till det booleska uttrycket för utvärdering och slingan itererar om den returnerar 'true' eller nästa kodrad utanför slingan exekveras om den returnerar falsk.
Exempel på ett enkelt för loop:
/* for loop starts*/ for(int i=0; i<5; i++) { Console.WriteLine('value of i is '+ i); }
Kodförklaring
I ovanstående kod initialiserade vi heltal i som 0. Därefter gav vi det booleska uttrycket för att utvärdera om jag är mindre än 0 och en inkrementoperator.
Initiering sker i början av slingan, sedan utvärderas det booleska tillståndet följt av körning av kodblock inuti lockiga hakparenteser. Kontrollen överförs sedan igen till inkrementoperatören överst, vilket ökar värdet på i med 1 under varje iteration.
Låt oss titta på produktionen för mer tydlighet.
Produktion
värdet på i är 0
värdet på i är 1
värdet på i är 2
värdet på i är 3
värdet på i är 4
För varje slinga
A för varje slinga används när ett program behöver iterera genom innehållet i en lista. Den kan användas för samlingar som matrislistor eller matriser.
Syntax
foreach(item_type iterative_variable in list_type) { //code block for execution// }
”Item_type” i syntaxen är typen av objektet som finns i listan. Till exempel, om vi använder en heltalmatris kommer typen att vara heltal eller int.
'Iterativ_variabel' är ett variabelnamn som du väljer och 'in' är ett nyckelord som används.
'List_type' är listtypen du använder. Till exempel, om vi använder heltal-array kommer list_type att vara int array-namn.
Viktiga tips:
- För varje slinga kör kodblocket mot varje element som finns i den angivna samlingen.
- För varje slinga är skrivskyddad, så det tillåter dig inte att ändra iterationsvariabeln under körning.
- För varje iteration som använder denna slinga hämtar ett nytt värde från listan. Värdet placeras sedan i den skrivskyddade variabeln.
- När alla element i listan har förbrukats under iterationen kommer kontrollen att gå vidare till nästa kodrad.
Exempel på ett enkelt för varje slinga:
hur man skriver ett testplanprov
/* specifies list*/ int() list = {1,2,3,4,5}; /* foreach loop starts*/ foreach (int nmbr in list) { Console.WriteLine('Numbers present in list are '+ nmbr); }
Kodförklaring
Först har vi definierat en array 'lista' i första raden. Sedan har vi använt a för varje slinga för att iterera och skriva ut alla värden i matrisen.
Inuti loop-uttalandet har vi förklarat en variabel av heltalstyp 'nmbr' följt av nyckelordet 'in' som sedan följs av samma i arrayen. Så vad vi menar här är att vi letar efter ett heltal 'nmbr' inuti 'lista'.
Därefter är uttalandet ett enkelt kodblock för att skriva ut alla värden. Vi skriver ut variabeln 'nmbr', och som diskuterats tidigare är den en skrivskyddad variabel och lagrar ett nytt värde med varje iteration.
Låt oss titta på produktionen för bättre förståelse.
Produktion
Siffrorna i listan är 1
Siffrorna i listan är 2
Siffrorna i listan är 3
Siffrorna i listan är 4
Siffrorna i listan är 5
Oändlig loop
En slinga kan fortsätta under en oändlig tid om villkoret som definierar slingan aldrig returnerar ett falskt värde. Vanligtvis för loop eller while loop kan användas för att utföra en oändlig loopoperation.
Oändlig slinga som använder för slinga
Vi kan använda 'for loop' för att utföra en oändlig loopoperation eftersom inget av de tre uttalandena är obligatoriska. Följaktligen, om vi lämnar alla uttalandena tomma, kommer det att skapa en oändlig slinga.
/* for loop starts*/ for (; ;) { Console.WriteLine('infinite loop”); }
Denna slinga fortsätter att skriva ut en 'oändlig slinga' i konsolen under en oändlig tid.
Oändlig slinga med While Loop
While loop kan också användas för att utföra oändlig loopoperation. Vi kan göra det genom att tillhandahålla ett villkor som aldrig kan vara falskt.
Till exempel x> 0 och ökande x varje gång från 1.
/* while loop starts*/ int x = 1; while(x>0) { Console.WriteLine('infinite loop”); x++; }
Detta kommer att fortsätta att skriva ut 'oändlig slinga' till konsolen eftersom värdet på x alltid förblir större än 1. Därför kommer while-villkoret alltid att returnera 'sant' värde och kodblocket inuti medan det fortsätter att köras.
Slutsats
Med slingan kan du upprepa ett kodblock om och om igen. C # programmeringsspråk erbjuder olika uttalanden för att använda en slinga som 'för', 'medan', 'gör medan' och 'för varje'.
While loop kör ett kodblock så länge uttrycket inuti while-blocket är sant. Do While-slingan tillåter användaren att köra ett kodblock minst en gång och sedan fortsätter det att itera tills uttrycket inuti medan det returnerar falskt.
For loop används när vi redan vet hur många gånger vi behöver för att upprepa koden. För varje slinga används för att utföra varje element i en lista / samling med ett givet kodblock.
Normalt körs en slinga tills kontrolluttrycket returnerar true men fortsätt eller bryt uttalande kan användas för att ändra dess exekveringsflöde.
Det är också möjligt att skapa oändliga slingor som använder för eller medan uttalanden för att utföra ett block kod oändligt antal gånger. Dessa kodblock fortsätter att köras eftersom uttrycket som definierar loop-uttalandet alltid kommer att vara sant.
=> Leta efter Easy C # Training Guide här
Rekommenderad läsning
- Python Loops - För, medan, kapslade loopar med exempel
- VBScript Loops: For Loop, Do Loop och While Loop
- Python Control Statements (Python Fortsätt, Break och Pass)
- Loop-konstruktioner i C ++ med exempel
- Unix Shell Loop Typer: Gör While Loop, For Loop, tills Loop i Unix
- Lägga till villkorliga och loopade uttalanden i nyckelordsvy - QTP-handledning # 4
- Unix Shell Scripting Tutorial med exempel
- Skapa Mocks and Spies i Mockito med kodexempel