C 기본 문법 – 조건문과 반복문 – 3 – while문

C 기본 문법 – 조건문과 반복문 – 3편: while문 완전 정복

안녕하세요, 열정 넘치는 코딩 학습자 여러분! 😊
이번 시간에는 반복문의 두 번째 주자, 바로 **while문**에 대해 알아보려고 해요.

🧠 while문은 마치 “조건을 계속 체크하며 멈출 때까지 반복하는 탐색자”와 같아요!
정해진 횟수가 아니라, 조건이 만족하는 동안 무한히 반복될 수 있는 유연한 구조랍니다.

for문은 반복 횟수가 명확할 때,
while문언제 멈출지 모를 때 또는 조건이 가장 중요할 때 자주 사용돼요.

그럼 지금부터 친절한 설명과 예시를 통해 while문을 완벽하게 익혀보아요 💪


while문의 기본 구조

while (조건식) {
    반복할 코드;
}

설명:

  • **조건식이 참(0이 아님)**인 동안 계속 반복합니다.
  • 조건식이 **거짓(0)**이 되면 반복을 종료해요.

가장 기본적인 예제

#include <stdio.h>

int main() {
    int i = 1;

    while (i <= 5) {
        printf("%d번째 반복입니다.
", i);
        i++;
    }

    return 0;
}

출력 결과:

1번째 반복입니다.
2번째 반복입니다.
3번째 반복입니다.
4번째 반복입니다.
5번째 반복입니다.

🎯 변수 i가 1부터 5까지 증가하면서 조건을 만족하는 동안 반복됩니다.


while문의 실행 순서

  1. 조건식 검사
  2. 조건이 참이면 코드 블록 실행
  3. 다시 조건식 검사
  4. 조건이 거짓이 될 때까지 반복

💡 조건을 먼저 검사하므로, 한 번도 실행되지 않을 수도 있어요!


무한 반복 예제 (의도적 사용)

while (1) {
    printf("계속 반복 중...
");
}

🛑 이런 코드는 멈추지 않아요! 무한 루프!
게임 루프, 서버 대기 상태 등에서 자주 사용돼요.


사용자 입력 반복 예제

int input = 0;

while (input != 5) {
    printf("5를 입력해야 종료됩니다: ");
    scanf("%d", &input);
}

printf("종료합니다!
");

🎯 사용자가 특정 값을 입력할 때까지 계속 반복되는 구조입니다.
이런 식으로 사용자와의 상호작용에도 많이 쓰여요!


break와 continue와 함께 사용

break: 조건 만족 시 반복 종료

int i = 1;

while (1) {
    if (i > 5) break;
    printf("%d
", i);
    i++;
}

i > 5일 때 루프를 강제로 종료해요.


continue: 특정 조건에서 코드 생략하고 다음 반복

int i = 0;

while (i < 5) {
    i++;
    if (i == 3) continue;
    printf("%d
", i);
}

i가 3일 때는 printf를 건너뛰고 반복만 계속돼요.


실전 예제: 로그인 시도 제한

char password[20];
int attempt = 0;

while (attempt < 3) {
    printf("비밀번호 입력: ");
    scanf("%s", password);

    if (strcmp(password, "1234") == 0) {
        printf("로그인 성공!
");
        break;
    } else {
        printf("비밀번호가 틀렸습니다.
");
        attempt++;
    }
}

if (attempt == 3) {
    printf("3회 이상 실패. 계정 잠김!
");
}

🎯 3번 이상 틀리면 로그인 실패 처리! 실전 느낌이죠?


while문 vs for문

기준 while문 for문
반복 횟수 명확하지 않음 O X
조건만 중요할 때 적합 덜 적합
가독성 단순한 조건 반복에 좋음 반복 제어가 한 줄에 있어 간결
초기식/증감식 블록 외부 작성 for문에 포함됨

do-while문과 비교

do {
    // 실행문
} while (조건식);
항목 while문 do-while문
조건 먼저 검사 O X (조건은 마지막에 검사)
최소 1회 실행 보장 X O
자주 쓰임 중간 특정 상황에서만 사용

✅ while문 요약 정리

요소 설명
조건식 참인 동안 반복
실행 순서 조건 → 실행 → 조건 …
탈출 조건 코드 안에서 변수 변경 필수
무한 루프 while(1)
제어 키워드 break, continue 가능

⚠️ while문 사용 시 주의할 점

주의사항 설명
조건을 바꾸는 코드 누락 무한 루프가 발생할 수 있어요
조건 검사 위치 주의 처음부터 거짓이면 한 번도 실행되지 않음
입력값 잘못 처리 무한 대기 상황 발생 가능
조건식에 실수형 사용 자제 정수형이 더 안전해요

마무리하며 💬

오늘 배운 while문
조건을 기반으로 유동적인 반복을 가능하게 해주는 중요한 도구입니다!

특히 반복 횟수를 정확히 알 수 없거나
사용자 입력, 센서 데이터, 실시간 처리처럼 변화무쌍한 상황에서 매우 유용하게 사용돼요.

🎯 반복의 조건이 핵심일 땐 언제나 while문을 떠올리세요!

다음 시간에는 do-while문을 통해 최소 1회는 실행되는 반복문을 다뤄볼게요.
오늘도 함께 해주셔서 감사합니다! 😊
코딩은 꾸준한 반복을 통해 완성됩니다 💻✨

답글 남기기