* switch ~ case 조건문
=> 조건식을 비교하고 해당 조건식이 참이면 종속 문장을 실행, 거짓이면 탈출
switch ~ case의 원형 :
switch ( 비교할 값 )
{
case 해당 값 :
종속 문장 ;
break ;
default :
종속 문장 ;
break ;
}
// break는 해당 문법을 탈출하는 용도로 사용됨 ( 의도적으로 사용하지 않는 경우도 있음 )
// 비교할 값 공간에는 정수, 정수로 변환할 수 있는 값, 정수가 저장된 변수만 작성 가능
// 각 case에 작성되는 값은 반드시 상수로 작성해줘야 함
// if문 보다 까다롭지만 컴퓨터가 이해하기 더 쉬운 조건문으로 실행 속도가 더 빠름
---------------------------------------------------------------------------
ex)
// switch ~ case 원형 예
int num;
printf("입력: ");
scanf("%d", &num);
switch(num)
{
case 1:
printf("num은 1입니다.\n");
break;
case 2:
printf("num은 2입니다.\n");
break;
case 3:
printf("num은 3입니다.\n");
break;
default:
printf("1~3 중 하나를 입력하세요.\n");
break;
}
// 입력된 수가 14보다 큰지 아닌지 출력
int num;
printf("입력: ");
scanf("%d", &num);
switch (num>=14) // 입력된 수가 14보다 크거나 같으면 참으로 1, 거짓이면 0
{
case 1:
printf("14보다 크거나 같은 수");
break;
default:
printf("14보다 작은 수");
break;
}
// 국어, 수학, 영어 점수를 입력받고 평균과 등급을 출력
int ko, ma, en;
double avg;
printf("국어: ");
scanf("%d", &ko);
printf("수학: ");
scanf("%d", &ma);
printf("영어: ");
scanf("%d", &en);
avg = (ko + ma + en) / 3.0;
printf("평균: %.2f\n", avg);
switch ((int)avg / 10)
{
case 10: // break가 없기 때문에 다음 조건식으로 넘어감 (출력은 case9과 같음)
case 9:
printf("등급: A");
break;
case 8:
printf("등급: B");
break;
case 7:
printf("등급: C");
break;
case 6:
printf("등급: D");
break;
default:
printf("등급: F");
break;
}
'Progremming Study > C언어' 카테고리의 다른 글
c언어 기초 _ 반복문 ( while ( )문 ) (0) | 2022.06.21 |
---|---|
c언어 기초 _ 반복문 ( for( )문 ) (0) | 2022.06.21 |
c언어 기초 _ 조건문 ( if ~ else) (0) | 2022.06.20 |
c언어 기초 _ 연산자 ( 삼항, sizeof ) (0) | 2022.06.20 |
c언어 기초 _ 비트 연산자 (0) | 2022.06.17 |