Computer >> 컴퓨터 >  >> 프로그래밍 >> C 프로그래밍

C 언어 if-else 문 완벽 정리: 문법, 동작 원리, 홀짝 판별 예제

C 언어의 if-else 문은 조건이 참(true)일 때와 거짓(false)일 때 각각 다른 코드 블록을 실행하는 기본적인 조건문입니다. 조건식이 참으로 평가되면 '참 블록(true block)'이 실행되고, 거짓으로 평가되면 '거짓 블록(false block)', 즉 else 블록이 실행됩니다.

if-else 문 기본 문법

if-else 문의 기본 구조는 아래와 같습니다.

if (조건식) {
    // 조건이 참일 때 실행되는 문장들
} else {
    // 조건이 거짓일 때 실행되는 문장들
}
  • 조건식(condition): 참 또는 거짓으로 평가되는 표현식으로, 비교 연산자(==, !=, >, <)나 논리 연산자(&&, ||)를 활용해 작성합니다.
  • 참 블록: 조건식이 참일 때 실행되며, 중괄호 {} 안에는 여러 개의 문장을 작성할 수 있습니다.
  • else 블록: 조건식이 거짓일 때 실행되며, 필요하지 않다면 생략할 수도 있습니다.

if-else 문의 동작 원리

  • 조건식이 이면 프로그램 흐름이 if 블록으로 진입해 해당 연산을 수행한 뒤 블록을 빠져나가고, else 블록은 건너뜁니다.
  • 조건식이 거짓이면 if 블록을 건너뛰고 else 블록으로 진입해 그 안의 문장들을 실행한 뒤 빠져나갑니다.
  • 두 블록 중 단 하나의 블록만 실행되며, 절대로 동시에 실행되지 않습니다.

예제: 홀수·짝수 판별 프로그램

다음은 사용자로부터 정수를 입력받아 if-else 문으로 홀수인지 짝수인지 판별하는 C 프로그램입니다.

#include <stdio.h>

int main(void) {
    int a = 4;

    printf("숫자를 입력하세요: ");
    scanf("%d", &a);

    if (a % 2 == 1) {
        printf("%d는 홀수입니다.\n", a);
    } else {
        printf("%d는 짝수입니다.\n", a);
    }

    return 0;
}

여기서 핵심은 나머지 연산자 %입니다. 어떤 수를 2로 나눈 나머지가 1이면 홀수, 0이면 짝수라는 성질을 이용해 a % 2 == 1이라는 조건식으로 홀수 여부를 검사합니다.

실행 결과

프로그램을 실행하면 입력값에 따라 다음과 같은 출력을 확인할 수 있습니다.

[실행 1]
숫자를 입력하세요: 26
26는 짝수입니다.

[실행 2]
숫자를 입력하세요: 53
53는 홀수입니다.

첫 번째 실행에서 26을 입력하면 26 % 2의 결과가 0이므로 조건식이 거짓이 되어 else 블록이 실행됩니다. 반면 두 번째 실행에서 53을 입력하면 53 % 2의 결과가 1이므로 조건식이 참이 되어 if 블록이 실행되는 것을 확인할 수 있습니다.