이번에 배우는 switch문은 if~else문과 유사합니다.
그래서 if문을 switch문으로 대체할 수도 있지요. 하지만 if~else문에 비해 제한적입니다.
예제를 먼저보고 스스로 분석을 해봅시다. 우리는 이 정도 코드를 분석할 수 있는 능력이 되었으니까요.

실행 결과 1
실행 결과 2

무슨 예제인지는 다들 아시겠죠?
그럼 이제 설명을 해보겠습니다.

그림에서 보이듯이 switch를 통해 전달된 num의 값에 따라 각 case안의 내용을 처리하고 있습니다.
각 케이스 뒤에 있는 숫자는 num을 통해 전달된 값입니다.
그래서 꼭 1부터 시작하지 않아도 되고 꼭 정수여야 할 필요는 없습니다.
그리고 각 case끝에는 세미콜론(;)이 아닌 콜론(:)이므로 이 점 유의하셔야 합니다.
그리고 모든 case의 경우가 아닌 경우에는 default영역이 실행 됩니다. if~else if~else 중 else와 유사하죠.
중간에 끼어있는 break문은 뭘까요?
break문을 사용하지 않으면 다음과 같이 됩니다.


이해가 되시죠? break문이 없으면 해당 case문 부터 밑 영역까지 쭉 실행됩니다.
그래서 각 case 끝에는 break문을 붙혀주어야 합니다.
다음 챕터에서는 함수에 대해 배웁니다.
다음 강의 때 뵙겠습니다.
'C언어 강의' 카테고리의 다른 글
(C언어 강의) Chapter -17 조건문 if~else (1) | 2016.09.01 |
---|---|
(C언어 강의) Chapter -16 조건문 if~else (0) | 2016.08.26 |
(C언어 강의) Chapter -15 조건문 if (0) | 2016.08.22 |
(C언어 강의) Chapter -14 반복명령을 위한 키워드 (for) (0) | 2016.08.10 |
(C언어 강의) Chapter -13 반복명령을 위한 키워드 (do~while) (0) | 2016.08.03 |