본문 바로가기

카테고리 없음

C의 반복문

C 언어에서 반복문은 특정 블록의 코드를 여러 번 실행할 때 사용됩니다. C에는 세 가지 주요 반복문 구조가 있습니다: for, while, 그리고 do-while. 각 반복문은 다른 상황에 적합하며, 반복 조건과 실행 방식에 따라 선택할 수 있습니다. 아래에서 각 반복문의 구조와 사용 방법을 상세히 설명하겠습니다.

1. for 반복문

for 반복문은 반복 횟수가 정해져 있을 때 사용됩니다. 초기화, 조건 검사, 후처리 작업을 한 곳에서 모두 처리할 수 있습니다.

구조

c
코드 복사
for (초기화; 조건; 후처리) { // 반복 실행할 코드 }
  • 초기화: 반복문이 시작되기 전에 실행됩니다. 보통 반복 변수의 초기값을 설정합니다.
  • 조건: 반복을 계속할 조건을 지정합니다. 조건이 참(true)일 때 반복문이 실행됩니다. 조건이 거짓(false)이 되면 반복문이 종료됩니다.
  • 후처리: 반복문이 한 사이클을 실행한 후에 수행됩니다. 보통 반복 변수를 업데이트합니다.

예제

c
코드 복사
#include <stdio.h> int main() { for (int i = 0; i < 5; i++) { printf("i = %d\n", i); } return 0; }

위의 코드에서는 i가 0부터 4까지 증가하며 "i = [값]"을 출력합니다.

2. while 반복문

while 반복문은 조건이 참인 동안 코드를 반복 실행합니다. 조건 검사 후 코드 블록이 실행됩니다.

구조

c
코드 복사
while (조건) { // 반복 실행할 코드 }
  • 조건: 반복을 계속할 조건을 지정합니다. 조건이 참(true)일 때 반복문이 실행됩니다. 조건이 거짓(false)이 되면 반복문이 종료됩니다.

예제

c
코드 복사
#include <stdio.h> int main() { int i = 0; while (i < 5) { printf("i = %d\n", i); i++; } return 0; }

위의 코드에서는 i가 0부터 4까지 증가하며 "i = [값]"을 출력합니다. i가 5가 되면 반복문이 종료됩니다.

3. do-while 반복문

do-while 반복문은 최소 한 번은 실행된 후 조건을 검사하여 반복을 계속할지 결정합니다. 코드 블록이 항상 먼저 실행되며, 조건이 참일 때 반복을 계속합니다.

구조

c
코드 복사
do { // 반복 실행할 코드 } while (조건);
  • 조건: 반복을 계속할 조건을 지정합니다. 조건이 참(true)일 때 반복문이 계속 실행됩니다. 조건이 거짓(false)이 되면 반복문이 종료됩니다.

예제

c
코드 복사
#include <stdio.h> int main() { int i = 0; do { printf("i = %d\n", i); i++; } while (i < 5); return 0; }

위의 코드에서는 i가 0부터 4까지 증가하며 "i = [값]"을 출력합니다. do-while 반복문은 i가 5가 되어도 반복문이 한 번은 실행됩니다.

4. 반복문 제어

반복문 내에서 특정 조건에 따라 반복을 중단하거나 건너뛰게 할 수 있습니다.

  • break: 반복문을 즉시 종료합니다.

예제

c
코드 복사
#include <stdio.h> int main() { for (int i = 0; i < 10; i++) { if (i == 5) { break; } printf("i = %d\n", i); } return 0; }

위의 코드에서는 i가 5가 되면 반복문이 즉시 종료됩니다.

  • continue: 현재 반복을 종료하고 다음 반복으로 넘어갑니다.

예제

c
코드 복사
#include <stdio.h> int main() { for (int i = 0; i < 10; i++) { if (i % 2 == 0) { continue; } printf("i = %d\n", i); } return 0; }

위의 코드에서는 i가 짝수일 때는 출력하지 않고 다음 반복으로 넘어갑니다. 그래서 홀수만 출력됩니다.

5. 중첩 반복문

반복문 안에 또 다른 반복문을 사용하는 것을 중첩 반복문이라고 합니다.

예제

c
코드 복사
#include <stdio.h> int main() { for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { printf("i = %d, j = %d\n", i, j); } } return 0; }

위의 코드에서는 두 개의 반복문이 중첩되어 i와 j의 모든 조합이 출력됩니다.