I denne vejledning lærer du at oprette mens og gøre … mens du sløjfer i C-programmering ved hjælp af eksempler.
Ved programmering bruges sløjfer til at gentage en blok kode, indtil en bestemt betingelse er opfyldt.
C-programmering har tre typer sløjfer.
- til løkke
- mens sløjfe
- gør … mens løkke
I den foregående vejledning lærte vi om for
loop. I denne vejledning lærer vi om while
og do… while
sløjfer.
mens sløjfe
Sløjfens syntaks while
er:
while (testExpression) ( // statements inside the body of the loop )
Hvordan mens loop fungerer?
- Den
while
løkke evaluerer testudtrykket inde i parentesen()
. - Hvis testudtrykket er sandt,
while
udføres udsagn inde i løkken. Derefter evalueres testudtrykket igen. - Processen fortsætter, indtil testudtrykket vurderes til falsk.
- Hvis testudtrykket er forkert, afsluttes (slutter) sløjfen.
Hvis du vil lære mere om testudtryk (når testudtrykket vurderes til sandt og falsk), skal du tjekke relationelle og logiske operatorer.
Flowchart af mens loop
Eksempel 1: mens løkke
// Print numbers from 1 to 5 #include int main() ( int i = 1; while (i <= 5) ( printf("%d", i); ++i; ) return 0; )
Produktion
1 2 3 4 5
Her har vi initialiseret i til 1.
- Når jeg er 1, er testudtrykket
i <= 5
sandt. Derforwhile
udføres sløjfekroppen. Dette udskriver 1 på skærmen, og værdien for i øges til 2. - Nu, jeg er 2, er testudtrykket
i <= 5
igen sandt. Sløjfens kropwhile
udføres igen. Dette udskriver 2 på skærmen, og værdien fori
øges til 3. - Denne proces fortsætter indtil jeg bliver 6. Når jeg er 6, vil testudtrykket
i <= 5
være falsk, og sløjfen afsluttes.
gør … mens løkke
Den do… while
løkke svarer til while
løkken med en vigtig forskel. do… while
Loop- kroppen udføres mindst én gang. Først derefter evalueres testudtrykket.
Sløjfens syntaks do… while
er:
do ( // statements inside the body of the loop ) while (testExpression);
Hvordan fungerer … mens loop fungerer?
- Body of do … mens loop udføres en gang. Først derefter evalueres testudtrykket.
- Hvis testudtrykket er sandt, udføres sløjfekroppen igen, og testudtrykket evalueres.
- Denne proces fortsætter, indtil testudtrykket bliver falsk.
- Hvis testudtrykket er forkert, slutter sløjfen.
Flowchart of do … while Loop
Eksempel 2: gør … mens du løkker
// Program to add numbers until the user enters zero #include int main() ( double number, sum = 0; // the body of the loop is executed at least once do ( printf("Enter a number: "); scanf("%lf", &number); sum += number; ) while(number != 0.0); printf("Sum = %.2lf",sum); return 0; )
Produktion
Indtast et nummer: 1.5 Indtast et nummer: 2.4 Indtast et nummer: -3.4 Indtast et nummer: 4.2 Indtast et tal: 0 Sum = 4.70