이번 편의 목표: 조건에 따라 연체료를 다르게 계산하고, 메뉴 번호에 따라 동작을 나눕니다.

조건이 참일 때만 실행할 문장은 if에 넣습니다. 같은 값에 따라 갈래가 여러 개면 switch가 읽기 쉽습니다.

C
#include <stdio.h>

int main(void) {
    int late_days = 4;
    int fee = 0;
    int menu = 1;

    if (late_days <= 0) {
        fee = 0;
    } else if (late_days <= 3) {
        fee = late_days * 100;
    } else {
        fee = late_days * 150;
    }

    switch (menu) {
    case 1:
        printf("목록을 보여 줍니다.\n");
        break;
    case 2:
        printf("책을 등록합니다.\n");
        break;
    default:
        printf("없는 메뉴입니다.\n");
        break;
    }
    printf("%d\n", fee);
    return 0;
}

4일은 3일을 넘으므로 하루 150원으로 계산해 600입니다. menu가 1이면 목록 문장이 출력됩니다. case 끝의 break는 다음 case로 내려가지 않게 막습니다. break가 없으면 아래 문장까지 이어서 실행됩니다.

비교에는 ==, !=, <, >, <=, >=를 씁니다. 조건 안에 =를 넣으면 비교가 아니라 대입이 됩니다.

직접 해 보기

late_days를 2로 바꿔 연체료가 200이 되는지 확인하세요. menu를 9로 바꾸면 default 문장이 나와야 합니다.

해설

2일은 3일 이하이므로 2 곱하기 100인 200입니다. 1과 2가 아닌 메뉴 번호는 default로 갑니다.