Programska petlja do..while

1. Petlja do..while

1.1. Primjer 1.

Nakon izvođenja programa:

#include <stdio.h>
int main()
{
     int i=1;
     do
     {
           printf("%d ",i);
           i++;
     }while(i<=10);
     return 0;
}

na zaslonu će se ispisati brojevi: 1, 2, 3, 4, 5, 6, 7, 8, 9 i 10 /*odvojeni razmakom jer u naredbi za ispis nije drukčije definirano*/.

 

Stavimo li u prethodnom primjeru početnu vrijednost kontrolne varijable i na 11, program izgleda ovako:


#include <stdio.h>
int main()
{
     int i=11;
     do
     {
           printf("%d ",i);
           i++;
     }while(i<=10);
     return 0;
}
 

Nakon njegova izvođenja, na zaslonu će se ispisati samo broj 11.

Zašto?

Početna vrijednost kontrolne varijable je 11 i ona ne zadovoljava dani uvjet, ali uvjet se provjerava tek na kraju i sve naredbe koje se nalaze ispred provjere uvjeta će se izvršiti. Tek kada se provjeri uvjet, program izlazi iz petlje. Zbog toga treba biti vrlo oprezan pri uporabi petlje s provjerom uvjeta na kraju bloka naredbi.