조건식을 비교하면서 참일 경우 종속 문장을 실행시키고 변화식을 거쳐 조건식을 또 다시 비교하는 문법이다.
for(), while(), do ~ while() 3가지가 존재한다.
for()문의 기본 원형:
for (초기식; 조건식; 변화식)
{
종속 문장;
}
초기식 -> 조건식 -> 종속 문장 -> 변화식 -> 조건식 -> 종속 문장 -> 변화식 -> ... 순으로 진행된다.
for문에서 무한루프를 사용하고 싶을 때는 초기식, 조건식, 변화식을 생략하면 된다. ex) for (;;)
for문에서 종속 문장이 한 줄일 때는 {} 생략 가능하다.
// Hello world를 10번 출력하는 for문
for (int i = 0; i < 10; i++)
{
printf("Hello world!\n");
}
// 무한루프
for (;;)
printf("Hello world!\n");
// A부터 Z까지 출력하는 for문
for (char i = 'A'; i <= 'Z'; i++)
{
printf("%c ", i);
}
while()문의 원형:
초기식;
while (조건식)
{
종속 문장 및 변화식;
}
while() 문에서 초기식은 while문 바깥에 존재해야 하고, 변화식은 종속 문장과 같이 존재한다. while()문에서 무한루프를 사용할 때는 조건식에 1을 작성
해 주면 된다. while()문에서 종속 문장이 한 줄일 때는 {}(중괄호)를 생략해줄 수 있다. 하지만 종속 문장에 변화식이 같이 작성되기 때문에 중괄호를 생략하는 경우는 거의 없다.
do ~ while()문의 원형:
초기식;
do
{
종속 문장 및 변화식;
} while (조건식);
do ~ while()문은 while문과 전체적으로 비슷하지만 **종속 문장을 최소 한 번은 실행**
시킨다는 특징을 갖고 있다. do ~ while()문에서 무한루프를 사용하고 싶을 때는 while문과 마찬가지로 조건식에 1을 작성해 주면 된다.
// Hello world를 10번 출력하는 while문
int i = 0;
while (i < 10)
{
printf("Hello world!\n");
i++;
}
// while의 무한루프
while (1) // 무한루프 생성
printf("Hello world!\n");
// do while문 -> 조건식이 거짓이어도 종속 문장을 최소 한 번은 실행시킨다!
int i = 7;
do
{
printf("Hello world!\n");
i++;
} while (i < 5); // 출력 결과: Hello world