logo

do…while Loop v C

Zanke v jeziku C so stavki nadzornega toka, ki se uporabljajo za ponavljanje nekega dela kode, dokler ni izpolnjen dani pogoj. The do-while zanka je eden od treh stavkov zanke v C, drugi pa sta zanka while in for. Uporablja se predvsem za prečkanje nizov, vektorjev in drugih podatkovnih struktur.

Kaj je do…while Loop v C?

The naredi ... medtem ko je v C je stavek zanke, ki se uporablja za ponavljanje nekega dela kode, dokler ni izpolnjen dani pogoj. Je oblika an izhodno nadzorovana zanka ali zanka po testiranju kjer se testni pogoj preveri po izvedbi telesa zanke. Zaradi tega bodo stavki v zanki do…while vedno izvedeni vsaj enkrat, ne glede na pogoj.



Sintaksa do…while Loop v C

 do { // body of do-while loop } while ( condition );>

Kako uporabljati do…while Loop v C

Naslednji primer prikazuje uporabo zanke do…while v programskem jeziku C.

C








// C Program to demonstrate the use of do...while loop> #include> int> main()> {> >// loop variable declaration and initialization> >int> i = 0;> >// do while loop> >do> {> >printf>(>'Geeks '>);> >i++;> >}>while> (i <3);> >return> 0;> }>

>

>

Izhod

Geeks Geeks Geeks>

Kako deluje do…while Loop?

sintaksa zanke do while

Sintaksa Struktura zanke do while

Delovanje zanke do...while je razloženo spodaj:

  1. Ko kontrolnik programa prvič pride do zanke do...while, najprej se izvede telo zanke, nato pa se preveri testni pogoj/izraz , za razliko od drugih zank, kjer se najprej preveri testni pogoj. Zaradi te lastnosti se zanka do…while imenuje tudi zanka z nadzorovanim izhodom ali zanka po testiranju.
  2. Ko je preskusni pogoj ovrednoten kot prav , the krmiljenje programa gre na začetek zanke in telo se izvede še enkrat.
  3. Zgornji postopek se ponavlja, dokler testni pogoj ni resničen.
  4. Ko je preskusni pogoj ovrednoten kot lažno, kontrolniki programa se premaknejo na naslednje stavke po zanki do...while.

Tako kot pri zanki while v C tudi inicializacija in posodabljanje nista del sintakse zanke do…while. To moramo narediti eksplicitno pred in v zanki.

Spodnji diagram poteka prikazuje vizualno predstavitev poteka zanke do…while v C.

C do…while Loop Diagram poteka

diagram poteka zanke do...while v C

Diagram poteka zanke do…while v C

Ugnezdena do…while Loop v C

Kot pri drugih zankah lahko tudi eno zanko do…while ugnezdimo v drugo zanko. To je prikazano z naslednjim programom C.

Primer ugnezdene zanke do…while v C:

C




// C Program to demonstrate the nesting of do...while loop> #include> int> main()> {> >// declaring loop variables> >int> i = 0, j;> >int> count = 0;> >// outer loop starts> >do> {> >j = 0;> >// inner loop starts> >do> {> >printf>(>'%d '>, count++);> >j++;> >}>while> (j <3);> >// inner loop ends> >printf>(>' '>);> >i++;> >}>while> (i <3);> >// outer loop ends> >return> 0;> }>

>

>

Izhod

0 1 2 3 4 5 6 7 8>

Če želite izvedeti več o ugnezdenih zankah v C, glejte ta članek – Ugnezdene zanke v C s primeri

Primeri zanke do…while v C

Primer 1. Program C za prikaz obnašanja zanke do…while, če je pogoj že od začetka napačen.

C


shreya ghoshal



// C Program to demonstrate the do...while loop behaviour> // when the condition is false from the start> #include> #include> int> main()> {> >// declaring a false variable> >bool> condition =>false>;> >do> {> >printf>(>'This is loop body.'>);> >}>while> (condition);>// false condition> >return> 0;> }>

>

>

Izhod

This is loop body.>

Kot lahko vidimo, tudi če je pogoj na začetku napačen, se telo zanke izvede enkrat. To je zato, ker se v zanki do...while pogoj preveri po prehodu skozi telo, tako da ko je krmiljenje na začetku,

  1. Gre skozi telo zanke.
  2. Izvaja vse stavke v telesu.
  3. Preveri pogoj, ki se izkaže za napačnega.
  4. Nato zapusti zanko.

Primer 2. Program C za tiskanje tabele množenja N z uporabo zanke do…while

Naslednji primer prikazuje uporabo zanke do…while za tiskanje tabele množenja N.

C




// C Program to print multiplication table using do...while> // loop> #include> int> main()> {> >int> N = 5, i = 1;> >do> {> >printf>(>'%d x %d = %d '>, N, i, N * i);> >}>while> (i++ <10);> >return> 0;> }>

>

pridobite trenutni datum v javi
>

Izhod

5 x 1 = 5 5 x 2 = 10 5 x 3 = 15 5 x 4 = 20 5 x 5 = 25 5 x 6 = 30 5 x 7 = 35 5 x 8 = 40 5 x 9 = 45 5 x 10 = 50>

Razlika med zanko while in do…while v C

Naslednja tabela navaja pomembne razlike med zanko while in do…while v C.

medtem ko Loop

do…while Loop

Testni pogoj se preveri preden se telo zanke izvede. Preverjen je preskusni pogoj po usmrtitvi telesa.
Ko je pogoj napačen, je telo se ne izvaja niti enkrat. Telo do…while se zanka izvede vsaj enkrat tudi če je pogoj napačen.
Je vrsta vnaprej testirana ali vstopno nadzorovana zanka. Je vrsta naknadno testirana ali izhodno nadzorovana zanka.
Podpičje ni potrebno. Podpičje je obvezno na koncu.

Če želite izvedeti več o teh razlikah, si oglejte ta članek – Razlika med zanko while in do-while v C, C++, Javi

Zaključek

Skratka, uporaba edine izhodno nadzorovane zanke v C, zanke do…while, je prav tako namenjena ponavljanju določenega dela kode, vendar se način delovanja razlikuje od vstopno nadzorovanih zank, kot sta zanka while in for zanka. Uporaben je v primerih, ko moramo vsaj enkrat izvesti stavek znotraj telesa zanke, na primer pri prečkanju krožnih povezanih seznamov.

Pogosta vprašanja o C do…while Loops

1. Koliko vrst zank obstaja v C?

leta: V jeziku C obstajajo 3 vrste zank:

  1. za Loop
  2. medtem ko Loop
  3. do…while Loop

2. Kaj so vhodno nadzorovane ali predhodno testirane zanke?

leta: Vstopno nadzorovane zanke ali predhodno testirane zanke so tiste zanke, v katerih je zanka stanje se preveri pred izvedbo telesa zanke.

3. Kaj so izhodno nadzorovane ali naknadno testirane zanke?

leta: Izhodno nadzorovane zanke ali naknadno testirane zanke so tiste zanke, v katerih programski nadzor pride do telesa zanke, preden preveri stanje zanke .

4. Katera zanka se bo zagotovo izvedla vsaj enkrat?

leta: The do…while zanka je zajamčeno, da bo vsaj enkrat izvedel stavke v telesu zanke, saj gre za vrsto izhodno nadzorovane zanke.

5. Ali lahko preskočimo oklepaje v sintaksi zanke C do…while, če je v telesu le en stavek?

Odgovor: Ne. , v sintaksi C do…while ne moremo preskočiti oklepajev, tudi če obstaja samo en stavek, za razliko od zanke while in for.

6. Kako ustvariti neskončno zanko v C z uporabo zanke do…while?

leta: V C lahko ustvarimo neskončno zanko tako, da podamo a pogoj, ki bo vedno resničen kot pogoj zanke. Spodnji program prikazuje, kako to storiti:

C




// C Program to create a infinite loop using do...while loop> // in C> #include> int> main()> {> >// infinite loop> >do> {> >printf>(>'gfg '>);> >}>while> (1);>// always 1 ~ true> >return> 0;> }>

>

>

Izhod

gfg gfg gfg gfg gfg gfg gfg .... (infinite)>

Povezani članki: