#include<stdio.h>
main()
{
int c;
printf("1~4중에 하나의 숫자를 입력해주세요 : ");
scanf("%d",&c);
switch(c)
{
case 1: printf("You selected number 1\n");
case 2: printf("You selected number 2\n");
case 3: printf("You selected number 3\n");
case 4: printf("You selected number 4\n");
default : printf("You selected other number\n");
}
}
---------------------------------------------------------------------------------
*위의 소스는 오류가 있는 소스 입니다.^^*
*아래에서 설명하면서 고쳐 나가도록하죠*
1.switch 문
switch문은 다중결저의 하나로서 수식이 상수값에 일치하는지를 알아보고
그에 따른 쪾으로 분류하여 실행하는 것입니다.
switch문의 문법은
switch(수식)
{
case 상수 : 문장
case 상수 : 문장
.... //case를 사용한 문장 구성을 얼마든지 할수 있음.
default : 문장
}
>각 경우에서 상수나 상수수식은 정수값을 가져야한다.
(그 외에 ASCII 값에 해당하는 숫자를 ' '에 넣어서 사용할수 있다.)
(그 외는 작동하지 않거나 오류를 토해낸다.)
자, 이젠 위의 소스의 오류를 찾아보자.
일단 컴파일을 하여 실행 시키면 다음의 결과를 얻을수 있을 것이다.
이는 switch문이 욕먹는 이유이면서도 나름 장점이기도하다.
따라서, swich문을 제대로 사용하기위에서는
제어의 흐름을 막아주는 명령어들이 필요하다.
이 명령어들로는 break와 continue, exit(number)가 있을 것이다.
그에 대한것은 아래를 선택해서 보기 바란다.
break, continue, exit(number)에 대한 설명보기(클릭!!)
---------------------------------------------------------------------------------위의 소스를 고쳐보면...
#include<stdio.h>
main()
{
int c;
printf("1~4중에 하나의 숫자를 입력해주세요 : ");
scanf("%d",&c);
switch(c)
{
case 1: printf("You selected number 1\n");
break;
case 2: printf("You selected number 2\n");
break;
case 3: printf("You selected number 3\n");
break;
case 4: printf("You selected number 4\n");
break;
default : printf("You selected other number\n");
}
}