C언어 for 반복문 쉽게 이해하기

C언어를 초반에 배우다 보면 등장하는 게 바로 for문이다. 처음 보면 괄호 안에 세미콜론이 두 개나 있어서 복잡해 보이지만, 한 번만 이해하면 편리하다. 이번 글에서는 for문이 뭔지, 어떻게 쓰는지 아주 쉽게 설명해보겠다.



1. for문이란?

for문은 정해진 횟수만큼 코드를 반복 실행하는 문법이다. 예를 들어 “1부터 5까지 숫자 출력하기” 같은 일을 자동으로 해주는 거다.

for (초기식; 조건식; 증감식) {
    반복할 코드;
}
  • 초기식: 반복을 시작할 변수 설정
  • 조건식: 반복을 계속할지 확인
  • 증감식: 변수값을 바꾸는 부분

즉, “시작값 → 조건 확인 → 실행 → 증가 → 다시 조건 확인” 흐름이 계속 돈다.

2. 기본 예제: 1부터 5까지 출력하기

#include <stdio.h>

int main(void) {
    for (int i = 1; i <= 5; i++) {
        printf("%d\n", i);
    }
    return 0;
}

출력

1
2
3
4
5

설명: 처음에 i가 1로 시작하고, i <= 5가 참이면 본문을 실행한다. 그 다음 i++로 값이 하나 증가한다. 6이 되면 조건이 거짓이 되어 종료한다.

3. 거꾸로 세기

증감 부분을 i--로 바꾸면 거꾸로 반복할 수도 있다.

for (int i = 5; i >= 1; i--) {
    printf("%d ", i);
}

출력

5 4 3 2 1

4. if문이랑 같이 쓰기

for문 안에 if문을 넣으면 조건에 맞는 값만 골라서 처리할 수 있다. 예를 들어 1부터 10까지 중 짝수만 출력한다.

#include <stdio.h>

int main(void) {
    for (int i = 1; i <= 10; i++) {
        if (i % 2 == 0) {
            printf("%d ", i);
        }
    }
    return 0;
}

출력

2 4 6 8 10

i % 2 == 0은 “i를 2로 나눈 나머지가 0”이라는 뜻. 즉, 짝수만 출력한다.

5. 구구단처럼 중첩하기

for문 안에 또 다른 for문을 넣을 수 있다. 이걸 중첩 for문이라고 한다. 구구단, 별 찍기, 2차원 배열 등에서 자주 쓰인다.

#include <stdio.h>

int main(void) {
    for (int i = 2; i <= 4; i++) {
        for (int j = 1; j <= 3; j++) {
            printf("%d x %d = %d\n", i, j, i * j);
        }
        printf("\n");
    }
    return 0;
}

출력

2 x 1 = 2
2 x 2 = 4
2 x 3 = 6

3 x 1 = 3
3 x 2 = 6
3 x 3 = 9

4 x 1 = 4
4 x 2 = 8
4 x 3 = 12

6. 무한 반복 조심하기

증감식이나 조건을 빼먹으면 프로그램이 멈추지 않는다.

for (int i = 1; i <= 5; ) {
    printf("%d\n", i);
}

이 코드는 i++가 없어서 i가 계속 1이다. 조건이 항상 참이므로 무한 반복이 된다. 증감식과 조건을 항상 확인하자.

마무

 for (초기식; 조건식; 증감식) 세 부분만 이해하면 된다. 증가형/감소형을 자유롭게 바꾸고, 필요한 경우 if나 중첩문으로 응용하면 된다.

이전최근

댓글 쓰기