28.5 반복 횟수가 정해지지 않은 경우
while 반복문과 마찬가지로 do while 반복문도 반복 횟수가 정해지지 않았을 때 주로 사용합니다. 단, while 반복문과는 달리 최소 한 번은 실행된다는 점이 차이가 있습니다.
다음은 do while 반복문 안에서 무작위로 정수를 생성한 뒤 3이 나오면 반복을 끝냅니다.
do_while_random.c
#include <stdio.h> #include <stdlib.h> // srand, rand 함수가 선언된 헤더 파일 #include <time.h> // time 함수가 선언된 헤더 파일 int main() { srand(time(NULL)); // 현재 시간값으로 시드 설정 int i = 0; do { i = rand() % 10; // rand 함수를 사용하여 무작위로 정수를 생성한 뒤 10 미만의 숫자로 만듦 printf("%d\n", i); } while (i != 3); // 3이 아닐 때 계속 반복 return 0; }
실행 결과
1
5
6
3
↑ 무작위 생성이므로 실행할 때마다 달라짐
do 부분에서 최소 한 번은 무작위로 정수를 생성하여 출력합니다. 그다음에 조건식 i != 3에 따라 i가 3이 아니면 계속 반복합니다.