C 언어의 반복문은 특정 조건을 만족할 때까지 동일한 작업을 반복적으로 수행할 때 사용됩니다. C 언어에서 사용 가능한 반복문은 다음과 같습니다:
1. for 문
2. while 문
3. do-while 문
1. for 문
for 문은 반복 횟수가 명확할 때 주로 사용합니다. 초기화, 조건 검사, 증감식을 한 줄에 작성할 수 있어 간결합니다.
기본 구조:
for (초기화; 조건; 증감) {
// 반복할 코드
}
예제:
#include <stdio.h>
int main() {
for (int i = 0; i < 5; i++) {
printf("i의 값: %d\n", i);
}
return 0;
}
위 코드의 출력은:
i의 값: 0
i의 값: 1
i의 값: 2
i의 값: 3
i의 값: 4
구조 설명:
초기화 : 반복문이 시작될 때 처음 한 번만 실행됩니다. 보통 카운터 변수(`int i = 0`)를 초기화합니다.
조건 : 반복을 계속할지 여부를 결정하는 조건입니다. 조건이 `참`일 때 반복이 계속됩니다.
증감 : 반복이 끝날 때마다 실행되어 카운터 변수를 증감시킵니다.
2. while 문
while 문은 반복 조건이 참인 동안 계속해서 코드를 실행합니다. 반복 횟수가 정해져 있지 않고, 조건에 따라 반복을 제어할 때 주로 사용합니다.
기본 구조:
while (조건) {
// 반복할 코드
}
예제:
#include <stdio.h>
int main() {
int i = 0;
while (i < 5) {
printf("i의 값: %d\n", i);
i++;
}
return 0;
}
위 코드의 출력은 for 문과 동일합니다.
구조 설명:
조건 : 조건이 참인 동안 반복이 실행됩니다. 조건이 거짓이 되면 반복이 종료됩니다.
코드 블록 : 조건이 참일 때마다 이 코드 블록이 실행됩니다.
반복문 while 사용시 주의할 점
잘못 사용한 예 :
int i = 0;
while( i < 3 )
printf("반복중\n");
i++;
int i = 0;
while( i != 9 )
i += 2;
while( i < 10);
i++;
수정된 예 :
int i = 0;
while( i < 3 )
{
printf("반복중\n");
i++;
}
int i = 0;
while( i < 9 )
i += 2;
while( i < 10)
i++;
3. do-while 문
do-while 문은 조건을 나중에 검사하는 반복문입니다. 최소 한 번은 반드시 실행되어야 할 코드가 있을 때 사용합니다.
기본 구조:
do {
// 반복할 코드
} while (조건);
예제:
#include <stdio.h>
int main() {
int i = 0;
do {
printf("i의 값: %d\n", i);
i++;
} while (i < 5);
return 0;
}
위 코드의 출력 역시 동일합니다.
구조 설명:
코드 블록 : 조건을 검사하기 전에 한 번 실행됩니다.
조건 : 조건이 참이면 다시 반복합니다. 조건이 거짓이 되면 반복이 종료됩니다.
반복문 제어문
반복문을 제어하기 위해 break와 continue를 사용할 수 있습니다.
1. break : 반복문을 즉시 종료합니다.
2. continue : 현재 반복을 건너뛰고, 다음 반복을 시작합니다.
break 예제:
for (int i = 0; i < 10; i++) {
if (i == 5) {
break; // i가 5일 때 반복 종료
}
printf("i의 값: %d\n", i);
}
continue 예제:
for (int i = 0; i < 10; i++) {
if (i == 5) {
continue; // i가 5일 때 이후 코드를 건너뛰고 다음 반복으로
}
printf("i의 값: %d\n", i);
}
요약 :
for 문 : 반복 횟수가 명확할 때 적합합니다.
while 문 : 반복 횟수가 불명확하고, 조건에 따라 반복 여부를 결정할 때 사용합니다.
do-while 문 : 조건에 관계없이 최소 한 번은 실행해야 할 코드가 있을 때 사용합니다.
example 1
example 2
example 3
example 4
example 5
example 6 - game using rand()
example 7
example 8 - Factorial
example 9 - 증감 수식의형태, 무한루프
example 10 - 중첩 반복문
example 10 - break
example 11 - continue
example 12 - to upper case