[코딩도장] Unit 26
1. switch 사용하기
1. switch 분기문
switch (num1) //num1 : 값을 판단할 변수
{
case 1:
값이 1일 때 실행할 코드
break;
case 2:
값이 2일 때 실행할 코드
break;
default:
아무 case도 해당되지 않을 때 실행할 코드
break;
}
switch 분기문은 항상 case와 같이 사용한다
변수의 값이 case와 일치하면 코드를 실행한다
아무 case 도 해당되지 않으면 default 의 코드를 실행한다 (default 는 생략 가능)
※ case 에 조건식이나 변수는 들어갈 수 없다
case 다음에는 반드시 값(리터럴)이 와야 하며 변수나 조건식은 올 수 없다
코드의 마지막에는 항상 break 을 넣어준다
break 으로 중단하지 않을 시 뒤에 있는 case 가 모두 실행되게 된다
case 를 { } 중괄호로 묶어준다면 case 안에서 변수를 사용할 수 있다
switch (num1) //num1 : 값을 판단할 변수
{
case 1:
값이 1일 때 실행할 코드
break;
case 2:
{
int num2 = 2;
값이 2일 때 실행할 코드
break;
}
default:
아무 case도 해당되지 않을 때 실행할 코드
break;
}
중괄호 안에 선언된 변수 num2 는 case 2: 안에서만 사용 가능하다
switch 에서 판별할 변수는 정수만 가능하다
실수(float, double)는 사용할 수 없다
문자 자료형(char)도 정수 자료형이기 때문에 switch 에서 사용가능하다
2. 심사문제
26.8 음료수 자판기 만들기
표준 입력으로 문자 'f', 'c', 'p' 중 하나가 입력됩니다. 입력된 문자가 'f'라면 "환타", 'c'라면 "콜라", 'p'라면 "포카리스웨트"를 출력하고, 아무 문자에도 해당되지 않으면 "판매하지 않는 메뉴"를 출력하는 프로그램을 만드세요.
정답에는 밑줄 친 부분에 들어갈 코드만 작성해야 합니다.
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
char memu;
scanf("%c", &memu);
switch (memu)
{
______________________
______________________
______________________
______________________
______________________
______________________
______________________
______________________
______________________
______________________
______________________
______________________
}
return 0;
}
정답
case 'f' :
printf("환타\n");
break;
case 'c' :
printf("콜라\n");
break;
case 'p' :
printf("포카리스웨트\n");
break;
default :
printf("판매하지 않는 메뉴");
'Coding > C' 카테고리의 다른 글
[C언어] goto 사용하기 - 코딩도장 (0) | 2023.12.18 |
---|---|
[C언어] 반복문(for, while, do while) - 코딩도장 (0) | 2023.12.17 |
[C언어] 비트 연산자 - 코딩도장 (0) | 2023.12.13 |
[C언어] 삼항 연산자, bool 자료형 - 코딩도장 (0) | 2023.12.11 |
[C언어] 조건문(if, else, else if) - 코딩도장 (0) | 2023.12.10 |