loop constructs c with examples
Et dybtgående kig på sløjfer i C ++ sammen med dens typer.
I tillæg til Beslutningskonstruktioner som vi har set i vores sidste vejledning, kan der opstå nogle situationer, hvor vi gentagne gange er nødt til at udføre en blok med udsagn.
En sådan situation kræver, at vi har en betingelse, der kontrollerer, om kodeblokken skal udføres eller ej. Dette gøres ved hjælp af loopkonstruktioner i programmeringen. C ++ har også forskellige sløjfekonstruktioner, der giver os mulighed for at udføre en blok kode gentagne gange, eller indtil en betingelse er sand. I denne vejledning vil vi udforske disse loopkonstruktioner i C ++ i detaljer.
Foreslået læsning => C ++ træningsvejledning til alle
Hvad du vil lære:
Sløjfer i C ++
For Loop
Konstruktionen, der udfører udsagn gentagne gange, er 'for' -sløjfen.
Den generelle syntaks for for loop er:
for(initialization; condition; increment) { Statement block; }
Den generelle syntaks for for loop viser, at den består af tre dele. Initialiseringsudtrykket består af de indledende værdier, der er indstillet til loop-variablen. Betingelsesudtrykket giver den betingelse, der er markeret for at afslutte sløjfen. Inkrementeringsdelen bruges til at øge loop-variablen efter hver iteration.
Oprindeligt begynder 'for' -sløjfen udførelse med initialisering af loop-variablen. Derefter tester den tilstanden. Hvis værdien af løkkevariablen opfylder betingelsen, udfører den sætningsblokken.
Når sætningsblok udføres, øges loop-variablen i henhold til den angivne stigning, og den næste iteration startes. På denne måde fuldender sløjfen gentagelserne, indtil betingelsen er opfyldt. Derefter afsluttes 'for' -sløjfen.
Dette er rutediagrammet for 'for' -løkkekonstruktionen.
Lad os se et eksempel på 'for' -sløjfe i C ++ nedenfor.
#include #include using namespace std; int main() { cout<<'Printing 2's multiples less than 20'< Produktion:
generelt findes de fleste fejl (mangler) i hvilke to testperioder?
Udskrivning af 2'er multipler mindre end 20
i = 2 i = 4 i = 6 i = 8 i = 10 i = 12 i = 14 i = 16 i = 18 i = 20
Her udskriver vi 2'ernes multipla op til 20 ved hjælp af en 'for' -sløjfe. Bemærk, at det er praktisk at bruge, når vi på forhånd kender antallet af gentagelser.
Mens Loop
C ++ giver endnu en loopkonstruktion, der giver os mulighed for at udføre et sæt udsagn på en gentagende måde. Dette er 'while' loop.
Den generelle syntaks for 'while' loop er:
while(condition) { Statement_block; }
En 'while' løkke gentager et sæt udsagn, så længe betingelsen er sand. Så inden starten af hver iteration evalueres tilstanden. Hvis det er opfyldt, er statement_block inde i loop. Ellers er sløjfen afsluttet.
Nedenfor er der vist flowdiagrammet for 'while' -sløjfen.

Nedenfor er et eksempel på et program til demonstration under loop:
#include #include using namespace std; int main() { cout<<'Printing 2's multiples less than 20'< Produktion:
Udskrivning af 2'er multipler mindre end 20
i = 2 i = 4 i = 6 i = 8 i = 10 i = 12 i = 14 i = 16 i = 18 i = 20
For at forenkle konceptet har vi ændret det samme program, der blev brugt til at demonstrere “for” -sløjfen. Her i modsætning til for loop specificerer vi startværdien af loop-variablen uden for while-loop. Derefter begynder vi while-sløjfen, hvor vi specificerer tilstanden.
Inde i løkken forøger vi løkkevariablen. Koden inde i 'while' -sløjfen udføres, så længe betingelsen er opfyldt.
Når vi ikke er sikre på det nøjagtige antal iterationer, som koden vil blive udført for, går vi til 'while' -sløjfen.
prøve testsager til webapplikation
Gør Mens Loop
Den næste sløjfe i C ++ er 'do-while' -sløjfen. I tilfælde af 'while' -sløjfe kontrollerer vi tilstanden først og udfører derefter iterationen. I tilfælde af 'do-while' -sløjfe udfører vi iteration først, og derefter vurderer vi tilstanden for at fortsætte med sløjfen.
Den generelle syntaks for 'do-while' -sløjfen er:
do{ … … }while(condition);
Flowdiagrammet for Do While Loop:

Som vist i flowdiagrammet begynder 'do-while'-sløjfen med sætningsblokken. Den udføres først, og derefter kontrolleres tilstanden. Hvis betingelsen er sand, udføres sætningsblokken gentagne gange, indtil betingelsen bliver falsk.
Lad os forstå dette ved hjælp af et eksempel.
#include #include using namespace std; int main() { cout<<'Printing 2's multiples less than 20'< Produktion:
Udskrivning af 2'er multipler mindre end 20
i = 2 i = 4 i = 6 i = 8 i = 10 i = 12 i = 14 i = 16 i = 18 i = 20
Vi har ændret det samme eksempel som de foregående sløjfer. Bemærk, at betingelsen kontrolleres i slutningen, efter at sætningsblokken er udført. Dette sikrer, at sløjfen udføres mindst en gang, inden den afsluttes.
Bryde og fortsætte udsagn
Når vi har brug for at gå ud af loop / sætningsblokken uden at udfylde den, eller hvis vi skal springe iteration over, så bruger vi to specielle udsagn, dvs. bryde og fortsætte.
'Break' -erklæringen for C ++ bruges til at bryde og gå ud af sløjfen eller sætningsblokken. 'Break' -erklæringen afslutter straks sløjfen eller udsagnet blokerer det øjeblik, det opstår.
Dette er nødvendigt, når vi pludselig ønsker at forlade en bestemt konstruktion uanset testtilstanden.
Tilsvarende, hvis vi vil springe over en bestemt erklæring eller hoppe til den næste iteration uden at udfylde den aktuelle iteration, så bruger vi 'fortsæt' -erklæringen. Med andre ord bruges 'fortsæt' til at fortsætte strømmen af programmet til næste trin.
Nedenfor er flowdiagrammet for Break and Continue-udsagn
Pause

Blive ved

Lad os se et eksempel på brug af pause og fortsæt udsagn i koden.
java videregive array til metode ved henvisning
#include #include using namespace std; int main() { cout<<'Printing 2's multiples less than 20'< 20) break; } }
Produktion:
Udskrivning af 2'er multipler mindre end 20
i = 2 i = 4 i = 6 i = 8 i = 10 i = 12 i = 14 i = 16 i = 18 i = 20
Endnu en gang har vi taget det samme eksempel på udskrivning af 2-multipla op til 20. I dette tilfælde har vi initialiseret løkkevariablen til nul. Derefter bruger vi en uendelig mens løkke og inde i løkken, springer vi over den første iteration ved hjælp af fortsæt-udsagnet.
Dernæst bruger vi break-sætningen til at gå ud af loop i det øjeblik loop-variablen bliver større end 20.
Endnu en situation, hvor vi bruger pause-erklæringen, er i tilfælde af switch-erklæringen. Vi har allerede set switch-erklæringen.
Når udtrykket matcher ethvert tilfælde af switch-sætningen, udføres koden for den pågældende, og derefter overføres kontrollen til de sager, der følger den matchede sag. Efter denne matchning af sagen udføres alle efterfølgende sager også, inden switch-erklæringen afsluttes. Dette resulterer i den fejlagtige output.
For at forhindre, at de efterfølgende sager udføres, introducerer vi pauseopgørelsen i slutningen af hver sag. Dette gør den kontrollerede afslutning ud af switch-sætningen, når den matchende sag er fundet, og koden er udført.
Uendelig løkke
En uendelig løkke kaldes også en endeløs løkke. En uendelig sløjfe opstår, når sløjfebetingelsen altid evalueres til sand. Som et resultat udføres det på ubestemt tid.
For eksempelfor (;;) vil resultere i en uendelig 'for' -sløjfe.
Mens (;) eller while (1) vil resultere i mens loop udføres på ubestemt tid.
Uendelige sløjfer bør ikke tilskyndes til programmering, men hvis behovet overhovedet opstår, skal vi være i stand til at bryde ud af sløjfen ved hjælp af en afsluttende tilstand inde i sløjfen.
Uendelige sløjfer resulterer i en fejl. Vi skal være forsigtige, når vi bruger loopkonstruktionerne i C ++.
- 'For' sløjfer skal bruges, når vi på forhånd kender antallet af gentagelser.
- Mens loop skal bruges, når vi kender sløjfens afsluttende tilstand.
- Do-while-sløjfen skal bruges, når vi ønsker, at sløjfen skal udføres mindst én gang.
Konklusion
Med dette afslutter vi denne tutorial om sløjfer i C ++.
I vores næste tutorials vil vi diskutere arrays og strenge i detaljer efterfulgt af funktioner i C ++.
=> Besøg her for den komplette C ++ tutorials liste.
Anbefalet læsning
- Unix Shell Loop-typer: Gør mens Loop, For Loop, indtil Loop i Unix
- Unix Shell Scripting Tutorial med eksempler
- Brug af Switch Case i Unix Shell Scripting: Case-esac-erklæring
- VBScript Loops: For Loop, Do Loop og While Loop
- Beslutningskonstruktioner i C ++
- Python DateTime-tutorial med eksempler
- Klip kommando i Unix med eksempler
- Funktioner til dato og tid i C ++ med eksempler