4장 해설
1분 퀴즈
1. ②
해설_ else 문은 앞의 모든 조건이 거짓일 때 실행되며 최대 1번만 정의할 수 있습니다.
2. ④
해설_ if 문은 서로 독립적으로 동작하므로 빵과 커피에 대해 각각 조건을 확인한 후 참이면 if 문 안 코드를 실행합니다.
3. ②
4. ③
해설_ i는 0부터 4까지 반복하며 값을 출력하는데, i가 3일 때는 continue 문 때문에 바로 다음 반복으로 넘어가므로 3은 출력하지 않습니다.
5. ④
해설_ rand() % 31을 하면 0 이상 31 미만인 난수가 나오는데, 여기에 1을 더해 1 이상 32 미만(31 이하)에서 난수를 뽑을 수 있습니다.
6. ④
해설_ n이 2이므로 case 2에 해당하는 문장이 실행됩니다. 그런데 case 문을 탈출하기 위한 break 문이 없으므로 다음 줄에 있는 case 3에 해당하는 문장도 함께 실행됩니다.
셀프체크
#include <stdio.h>
int main(void) {
int coffee_count = 0; // 커피 수량(값을 바꿔 실습하기)
int sandwich_count = 0; // 샌드위치 수량(값을 바꿔 실습하기)
int total_price = 0; // 총 금액
// 샌드위치와 커피 모두 구매 시 샌드위치 6,000원, 커피 3,500원(할인가)으로 계산
if (sandwich_count > 0 && coffee_count > 0) {
total_price = (sandwich_count * 6000) + (coffee_count * 3500);
} else { // 그 외의 경우 샌드위치 6,000원, 커피 4,500원으로 계산
total_price = (sandwich_count * 6000) + (coffee_count * 4500);
}
printf("주문하신 메뉴의 총 금액은 %d원입니다.\n", total_price); // 결과 출력
return 0;
}