do ... while Döngüsü
Bu deyimin while deyiminden farkı, koşulun döngü sonunda sınanmasıdır. Yani koşul sınanmadan döngüye girilir ve döngü kümesi en az bir kez yürütülür. Koşul olumsuz ise döngüden sonraki satıra geçilir. Bu deyimin kullanımı Program 7.2 de gösterilmiştir. Genel yazım biçimi:
do{
...
döngüdeki deyimler;
...
}while(koşul);
do-while döngüsü
01:
02:
03:
04:
05:
06:
07:
08:
09:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
/* 07prg02.c: do-while yapısı */
#include <stdio.h>
main()
{
int sayi;
do
{
printf("Bir sayi girin : ");
scanf("%d",&sayi);
printf("iki kati : %d\n",2*sayi);
}while( sayi>0 ); /* koşul */
puts("Döngü sona erdi.");
return 0;
}
ÇIKTI
Bir sayi girin : 1
iki kati : 2
Bir sayi girin : 3
iki kati : 6
Bir sayi girin : 4
iki kati : 8
Bir sayi girin : -3
iki kati : -6
Cevrim sona erdi.
15. satırdaki koşul olumlu olduğu sürece (sayi>0 olduğu sürece), klavyeden yeni bir değer 12. satırda okunur. Aksi takdirde (sayi<=0 ise) çevrimin sona erdiğine dair mesajla program sonlanır.