본문 바로가기
프로그래밍언어/C언어

조건문을 만드는 방법 2 - switch-case 문

by J코딩 2022. 7. 26.
반응형

이제까지 if와 관련된 조건문을 표현하는 방법에 관하여 알아보았습니다. 지금부터는 switch~case 문을 이용하여 다른 방식으로 조건문을 표현하는 방법에 대하여 배우겠습니다.

 

다음을 가정해 봅시다. 우리 집에는 스위치가 3개 있습니다. 전등을 켜고 싶을 때 1번 스위치를 누르고, 전등을 끄고 싶을 때 2번 스위치를 누르며 3번 스위치는 고장이 났습니다. 정리해 보면,

 

  • 1번 스위치를 누른 경우 전등이 켜짐
  • 2번 스위치를 누른 경우 전등이 꺼짐
  • 3번 스위치를 누른 경우 고장으로 작동 안함

이런 내용을 switch~case 문으로 적용한 예제를 가지고 살펴보겠습니다.

switch~case 문은 9행부터 25행까지이며, 특이한 점은 break와 default 키워드를 사용하고 있습니다. break 키워드는 switch 문을 종료하게 하고, default 키워드는 switch 문으로 전달된 num 값에 해당되는 case 문이 없을 때 기본적으로 수행되는 코드입니다.

9행에서 키보드로부터 입력받은 숫자를 저장한 변수 num의 값을 switch 문에 전달합니다. 전달하는 값으로는 int형 정수나 char형 정수만을 사용합니다. 11부터 13행까지에서 num이 1인 경우 전등이 켜지고 break 문을 수행합니다. break 문은 switch 문을 종료합니다. 15부터 17행까지에서 num이 2인 경우 전등이 꺼지고 break 문을 수행합니다. 19부터 21까지에서 num이 3인 경우 고장을 출력하고 break 문을 수행합니다. 23행에서 num이 1도, 2도, 3도 아닌 경우 수행합니다.

switch 문의 마지막에는 default 문이 있습니다. switch 문으로 전달된 변수 num의 값에 해당하는 case 문이 없을 경우 실행되는 영역으로 switch~case 문을 자세히 보면 if~else 문과 유사합니다. 다음 그림은 지금까지의 설명을 도식화한 것이니 참고하기 바랍니다.

반응형

댓글