더북(TheBook)

checkCollection()함수의 역할은 2가지입니다. 먼저 현재까지 보유한 고양이 목록을 출력하고 5마리 다 모았는지 확인합니다. 먼저 현재까지 보유한 고양이 목록을 출력하는 부분을 작성합니다.

printf()문으로 보유한 고양이 목록을 안내하는 문구를 출력합니다.

모든 상자에 고양이가 있는지 확인하므로 for 문을 사용해 상자 수(5)만큼 반복해서 확인합니다.

상자에 고양이가 있을 때와 없을 때 수행할 내용이 달라지므로 if-else 문으로 작성합니다. collection[i] 값이 0이면 상자에 고양이가 없으므로 ‘(빈 상자)’라고 출력합니다. 이때 실행결과에서 문자열을 10칸 간격으로 출력하도록 서식 지정자를 %10s로 설정합니다.

collection[i] 값이 0이 아니면 상자에 고양이가 있다는 뜻이므로 else 문으로 가서 cats[i].name 값, 즉 고양이 이름을 출력합니다. 서식 지정자는 마찬가지로 %10s입니다.

반복문이 끝나면 구분하는 선을 출력합니다.

9.5 프로젝트.c

int checkCollection() {
    printf("\n\n=== 보유한 고양이 목록이에요. ===\n\n"); --- ➊ 안내 문구
    for (int i = 0; i < 5; i++) { -------------------------- ➋ 상자 수만큼 반복
        if (collection[i] == 0) { -------------------------- ➌ 고양이 없음
            printf("%10s", "(빈 상자)");
        } else { ------------------------------------------- ➍ 고양이 있음
            printf("%10s", cats[i].name);
        }
    }
    printf("\n==================================================\n\n");
    -------------------------------------------------------- ➎ 구분선 출력
}
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.