C 조건문 switch
C 언어의 switch 문은 하나의 값에 따라 여러 경우 중 하나를 선택할 때 사용한다.
if ~ else if 문을 대신할 수 있으며, 조건이 명확한 값 비교일 때 가독성이 좋다.
🔹 switch 문의 기본 구조
switch (값)
{
case 값1:
실행문;
break;
case 값2:
실행문;
break;
default:
실행문;
}
🔹 switch 동작 방식
1. switch의 값과 case 값을 비교
2. 일치하는 case를 찾으면 실행
3. break를 만나면 switch 종료
🔹 기본 사용 예제
int num = 2;
switch (num)
{
case 1:
printf("1번\n");
break;
case 2:
printf("2번\n");
break;
case 3:
printf("3번\n");
break;
default:
printf("해당 없음\n");
}
🔹 break의 중요성
break가 없으면 아래 case까지 계속 실행(fall-through) 된다.
switch (num)
{
case 1:
printf("1\n");
case 2:
printf("2\n");
}
num이 1이면 1과 2가 모두 출력됨
🔹 default 문
default:
printf("일치하는 case 없음\n");
🔹 switch 사용 시 조건
switch 값은 정수형(char 포함) 만 가능
실수형 X
범위 조건 X
switch (score) // O
switch (ch) // O
switch (3.14) // X
🔹 switch가 적합한 경우
#include <stdio.h>
int main(void)
{
char grade = 'B';
switch (grade)
{
case 'A':
printf("우수\n");
break;
case 'B':
printf("보통\n");
break;
case 'C':
printf("노력 필요\n");
break;
default:
printf("재평가\n");
}
return 0;
}