The medtem ko Loop je vstopno nadzorovana zanka v programskem jeziku C. To zanko je mogoče uporabiti za ponavljanje dela kode, medtem ko dani pogoj ostaja resničen.
Sintaksa
Sintaksa zanke while je naslednja:
while (test expression) { // body consisting of multiple statements }> Primer
Spodnji primer prikazuje, kako uporabiti zanko while v programu C
C
repozitorij maven
// C program to demonstrate while loop> #include> int> main()> {> >// Initialization of loop variable> >int> i = 0;> >// setting test expression as (i <5), means the loop> >// will execute till i is less than 5> >while> (i <5) {> >// loop statements> >printf>(>'techcodeview.com
'>);> >// updating the loop variable> >i++;> >}> >return> 0;> }> |
>
>Izhod
techcodeview.com techcodeview.com techcodeview.com techcodeview.com techcodeview.com>
medtem ko Struktura zanke
The medtem ko zanka deluje tako po zelo strukturiranem pristopu od zgoraj navzdol, ki ga lahko razdelimo na naslednje dele:
- Inicializacija: V tem koraku inicializiramo spremenljivka zanke nekaterim začetna vrednost. Inicializacija ni del sintakse zanke while, vendar je bistvenega pomena, ko v testnem izrazu uporabljamo neko spremenljivko
Pogojni stavek: To je eden najpomembnejših korakov, saj odloča, ali je blok v zanki while koda se bo izvedla. Telo zanke while bo izvedeno, če in samo preskusno stanje definiran v pogojnem stavku je prav.
Telo: To je dejanski niz stavkov, ki se bodo izvajali, dokler podani pogoj ne bo izpolnjen. Na splošno je zaprt v notranjosti { } oklepaji.
Posodobitev: Gre za izraz, ki posodobitve vrednost spremenljivka zanke v vsaki ponovitvi. Prav tako ni del sintakse, ampak jo moramo izrecno definirati v telesu zanke.
Diagram poteka zanke while v C
Delovanje zanke while
Delovanje zanke while lahko razumemo, če pogledamo zgornji diagram poteka:
- 1. KORAK: Ko program prvič pride v zanko, bo ovrednoten testni pogoj.
KORAK 2A: Če je testni pogoj lažno, telo zanke bo preskočeno, program se bo nadaljeval.
KORAK 2B: Če je izraz ovrednoten kot resničen, bo telo zanke izvedeno.
3. KORAK: Po izvedbi telesa bo programski nadzor prešel na 1. KORAK. Ta postopek se bo nadaljeval, dokler testni izraz ne bo resničen.
Neskončno w hile zanka
Neskončna zanka while se ustvari, ko je dani pogoj vedno resničen. Programerji se z njim srečujejo, ko:
- Testni pogoj ni pravilen.
- Izjava o posodobitvi ni prisotna.
Primer
C
stavek bash if
primer binarnega iskalnega drevesa
// C program to demonstrate an infinite while loop> #include> int> main()> {> >// Initialization> >int> gfg1 = 1;> >int> gfg2 = 1;> >// 'gfg1' is the Check/Test statement, which means that> >// the while loop will iterate till the conditions> >// satiate> >while> (gfg1 <10) {> >// 'gfg2' is the body statements> >gfg2 = gfg2 + 1;> >printf>(>'techcodeview.com to Infinity'>);> >}> >// Return statement to tell that everything executed> >// safely> >return> 0;> }> |
>
>
Izhod
techcodeview.com to Infinity techcodeview.com to Infinity techcodeview.com to Infinity .........................>
Kot je razvidno iz zgornjega primera, se bo zanka nadaljevala do neskončnosti, ker bo spremenljivka zanke vedno ostala enaka, kar ima za posledico pogoj, ki je vedno resničen.
Pomembne točke
- Je vstopno nadzorovana zanka.
- Izvaja blok stavkov, dokler pogoji niso izpolnjeni, ko pogoji niso izpolnjeni, se prekine.
- Njegov potek dela je najprej preveri stanje in nato izvrši telo. Torej vrsta vnaprej testirane zanke.
- Ta zanka ima na splošno prednost pred za zanko ko število ponovitev ni znano.