Forskellen mellem while og do-while loop i C

Nรธgleforskelle mellem while og do-while loop i C

  • While loop kontrollerer betingelsen fรธrst og udfรธrer derefter sรฆtningen/sรฆtningerne, mens do while loop udfรธrer sรฆtningen/sรฆtningerne mindst รฉn gang, derefter kontrolleres betingelsen.
  • Mens slรธjfe er indgangskontrolleret slรธjfe, mens do while er exit kontrolleret slรธjfe.
  • I while-lรธkken behรธver vi ikke tilfรธje et semikolon i slutningen af โ€‹โ€‹en while-betingelse, men vi skal tilfรธje et semikolon i slutningen af โ€‹โ€‹while-betingelsen i do-while-lรธkken.
  • Mens loop-sรฆtning(er) udfรธres nul gange, hvis betingelsen er falsk, mens do-while-sรฆtningen udfรธres mindst รฉn gang.
  • Mens slรธjfe tillader initialisering af tรฆllervariabel fรธr start af en lรธkkes brรธdtekst, mens mens lรธkke tillader initialisering af tรฆllervariabel fรธr og efter start af lรธkketeksten.

Forskellen mellem while og do-while loop

Hvad er loops?

En lรธkke udfรธrer sekvensen af โ€‹โ€‹udsagn mange gange, indtil den angivne betingelse bliver falsk. EN loop bestรฅr af to dele, en krop af en loop og en kontrolerklรฆring. Kontrolsรฆtningen er en kombination af nogle betingelser, der leder lรธkkens krop til at udfรธres, indtil den angivne betingelse bliver falsk. Formรฅlet med lรธkken er at gentage den samme kode et antal gange.

Hvad er While Loop?

En While-lรธkke er den mest ligefremme lรธsningping struktur. Det er et indgangsstyret loop. I et while-loop evalueres en betingelse, fรธr en del af loopen behandles. Hvis en betingelse er sand, udfรธres loopens hoveddel fรธrst.

Efter at en loops brรธdtekst er udfรธrt, gรฅr kontrollen igen tilbage til begyndelsen, og tilstanden kontrolleres. Hvis det er sandt, udfรธres den samme proces, indtil betingelsen bliver falsk. Nรฅr tilstanden bliver falsk, gรฅr kontrollen ud af lรธkken.

Om en while-lรธkke, hvis betingelsen ikke er sand, vil brรธdteksten af โ€‹โ€‹en loop ikke blive udfรธrt, ikke engang รฉn gang.

Hvad er en Do-While Loop?

En Do-while-lรธkke ligner while-lรธkken, bortset fra at betingelsen altid udfรธres efter brรธdteksten i en loop. Det kaldes ogsรฅ en udgangskontrolleret slรธjfe.

I do-while-lรธkken udfรธres en loop altid mindst รฉn gang. Efter at kroppen er henrettet, kontrollerer den tilstanden. Hvis betingelsen er sand, vil den igen udfรธre kroppen af โ€‹โ€‹en lรธkke. Ellers overfรธres styringen ud af slรธjfen.

Syntaks for While-lรธkke i C

Her er en syntaks for While loop i C-programmering:

while (condition) {
statements;
}

I while-lรธkken skal vi skrive en betingelse, der skal evalueres. Udsagnet inden i krรธllede klammeparenteser angiver koden, der skal udfรธres.

Syntaks Do While Loop i C

Her er en syntaks for Do while loop in C programmering:

do {
statements
} while (expression);

I do-while-lรธkken skal vi fรธrst skrive sรฆtningen inden for krรธllede parenteser, som angiver koden, der skal udfรธres. Efter dette skal vi nรฆvne Java, C eller C++ programudtryk, der skal evalueres.

Hvordan mens loop virker?

Mens loop fungerer som fรธlger:

Mens lรธkkearbejde

Forklaring af rutediagram:

Trin 1) Start af while-lรธkke

Trin 2) Testudtrykket eller betingelsen evalueres

Trin 3) Dernรฆst, hvis testudtrykket er sandt, udfรธrer programmet brรธdteksten af โ€‹โ€‹do-while loop

Trin 4) Hvis testudtrykket er falsk, udfรธres programmet udenfor mens loop

Hvordan fungerer Do-While Loop?

Do-while-lรธkken fungerer som fรธlger:

Do-While Loop-arbejde

Forklaring af rutediagram:

Trin 1) Start gรธr-mens-lรธkken

Trin 2) Brรธdteksten af โ€‹โ€‹do-while loop udfรธres

Trin 3) Testudtrykket eller betingelsen evalueres

Trin 4) Hvis testudtrykket er sandt, udfรธrer compileren brรธdteksten af โ€‹โ€‹do-while loop

Trin 5) Dernรฆst, hvis testudtrykket er falsk, udfรธrer compileren sรฆtningerne efter loop-kroppen

Trin 6) Udsagn, der kommer efter lรธkketeksten, udfรธres

Mens vs Do-While Loop: Forskellen mellem dem

Her er en vigtig forskel mellem While og Do While Loop:

Mens Gรธre imens
Den kontrollerer fรธrst betingelsen og udfรธrer derefter sรฆtning(er) Denne lรธkke vil udfรธre sรฆtningen/sรฆtningerne mindst รฉn gang, hvorefter betingelsen kontrolleres.
While-lรธkke tillader initialisering af tรฆllervariabler, fรธr du starter en loops brรธdtekst. Do while loop tillader initialisering af tรฆllervariable fรธr og efter start af en loops brรธdtekst.
Det er en indgangskontrolleret slรธjfe. Det er en udgangskontrolleret slรธjfe.
Vi behรธver ikke at tilfรธje et semikolon i slutningen af โ€‹โ€‹en while-tilstand. Vi skal tilfรธje et semikolon i slutningen af โ€‹โ€‹while-betingelsen.
I tilfรฆlde af en enkelt erklรฆring skal vi tilfรธje parenteser. Brackets er altid nรธdvendige.
I denne lรธkke er tilstanden nรฆvnt i starten af โ€‹โ€‹lรธkken. Slรธjfebetingelsen er angivet, efter at blokken er udfรธrt.
Udsagn(er) kan udfรธres nul gange, hvis betingelsen er falsk. Erklรฆring udfรธres mindst รฉn gang.
Generelt mens loop skrives som:

while (condition) {
Statements; // loop body
}
Gรธr generelt mens loop skrives som:

do{
Statements; //loop body
} while (condition);

Mens Loop Eksempel i C

Fรธlgende program illustrerer mens loop in C programmering med et eksempel:

#include<stdio.h>
#include<conio.h>
int main()
{
int num=1;	//initializing the variable with value 1
while(num<=4)	//while loop with condition
{
printf("%d\n",num);
num++;		//incrementing operation
}
return 0;
}

Output:

1
2
3
4

Ovenstรฅende program illustrerer brugen af โ€‹โ€‹en while-lรธkke. I ovenstรฅende kode har vi udskrevet en rรฆkke tal fra 1 til 4 ved hjรฆlp af en while-lรธkke.

Vi har initialiseret en variabel kaldet num med vรฆrdi 1. Vi skal udskrive fra 1 til 4. Derfor initialiseres variablen med vรฆrdi 1. Hvis vi รธnsker at udskrive fra 0, sรฅ tildel vรฆrdien 0 under initialisering.

Dernรฆst har vi om en while-lรธkke angivet en betingelse (num<=4), hvilket betyder, at lรธkken vil udfรธre kroppen, indtil vรฆrdien af โ€‹โ€‹num bliver 4. Herefter vil lรธkken blive afsluttet, og kontrollen vil falde uden for slรธjfe.

I en lรธkkes krop har vi en printfunktion til at udskrive vores nummer og en trinoperator til at รธge vรฆrdien pr. udfรธrelse af en lรธkke.

En begyndelsesvรฆrdi af num er 1, efter udfรธrelsen bliver den til 2, og under den nรฆste udfรธrelse bliver den til 3. Denne proces fortsรฆtter, indtil vรฆrdien bliver 4, og derefter vil den udskrive serien pรฅ konsollen og afslutte. lรธkken.

Do While Loop Eksempel i C

Fรธlgende program er et Do-while loop eksempel til at udskrive en tabel med nummer 2 i C:

#include<stdio.h>
#include<conio.h>
int main()
{
int num=1;	//initializing the variable with value 1
do	//do-while loop
{
printf("%d\n",2*num);
num++;		//incrementing operation
} while(num<=4);
return 0;
}

Output:

2
4
6
8

I ovenstรฅende eksempel har vi udskrevet en multiplikationstabel med 2 ved hjรฆlp af en do-while loop. Fรธrst har vi initialiseret en variabel 'num' med vรฆrdien 1. Derefter har vi skrevet en do-while loop.

I en lรธkke har vi en printfunktion, der vil udskrive serien ved at gange vรฆrdien af โ€‹โ€‹num med 2. Efter hver stigning vil vรฆrdien af โ€‹โ€‹num stige med 1, og den vil blive printet pรฅ skรฆrmen.

Indledningsvis er vรฆrdien af โ€‹โ€‹num 1. I en body af en loop vil printfunktionen blive udfรธrt pรฅ denne mรฅde: 2*num hvor num=1, derefter 2*1=2.

Derfor vil vรฆrdien 2 blive udskrevet. Dette fortsรฆtter, indtil vรฆrdien af โ€‹โ€‹num bliver 10. Dernรฆst vil lรธkken blive afsluttet, og en sรฆtning, som er umiddelbart efter lรธkken, vil blive udfรธrt. I dette tilfรฆlde vil det returnere 0.

Hvilken skal vi vรฆlge?

Nรฅr vi tjekker en betingelse, hvis den fรธrste iteration er obligatorisk, skal vi bruge while-lรธkken. Den kan ogsรฅ bruges, hvis antallet af iterationer er ukendt eller usikker.

Do while-lรธkke krรฆver hovedsageligt i det tilfรฆlde, hvor vi skal udfรธre lรธkken mindst รฉn gang. Do-while-lรธkken er typisk nรธdvendig i et menudrevet programmeringssprog, hvor den endelige betingelse er baseret pรฅ slutbrugeren.

Opsummer dette indlรฆg med: