728x90
C언어의 조건문에는 if~else문 이외에도 switch~case문이 있습니다. switch문을 사용하면 여러 개의 값 중에서 변수가 어떤 값을 가지고 있는지 검사할 수 있습니다. 실행경로가 여러 개인 경우는 if~else문 보다 switch문을 사용하는 것이 효율성이 있습니다.
1. switch문의 주요 요소
- switch~case문의 제어식은 항상 정수 수식이어야 합니다.
- int a=10;
- switch(a)
- default 문이 마지막에 있기 때문에 break문 생략가능하지만, 위치가 변경될 수 있으므로 default문에도 break문을 넣어줍니다.
2. switch case 기초예시
- 등급계산하는 기초예시
#include<stdio.h>
int main(void)
{
int grade;
printf("당신의 등급을 1~5중 입력하세요. \n");
scanf("%d", &grade); //등급을 키보드로 입력함
printf("당신의 등급은 % d등급입니다. \n", grade);
switch (grade){
case 1: //1을 입력했을 때 실행합니다. : 표시
printf("정말 잘했습니다. 매우 우수합니다. \n");
break; // 실행하고 멈춤 ; 표시
case 2:
printf("매우 잘했습니다. 우수합니다. \n");
break;
case 3:
printf("잘했습니다. \n");
break;
case 4:
printf("조금 만 더 노력하면 좋겠습니다. \n");
break;
case 5:
printf("노력이 필요합니다. \n");
break;
defalut://1~5번 사이 이외의 정수값 입력 시 실행
printf("노력이 많이 필요합니다.\n");
}
return 0;
}
- 연산을 만드는 기초예시
#include<stdio.h>
int main(void)
{
chr arithmetic;
int a, b, z;
printf("원하는 수식을 입력해 보세요 +, -, *, / 중 선택하기 \n");
scanf("%c", &arithmetic); //수식을 문자로 입력함
printf("연산할 정수값 두 개를 입력하세요! \n");
printf(">>");
scanf("%d", &a);
scanf("%d", &b);
switch(arithmetic)
{
case '+': //문자입력할 때 작은따옴표를 입력함 ' '
z=a+b;
break;
case '-':
z=a-b;
break;
case '*':
z=a*b;
break;
case '/': //나눗셈
z=a/b;
break;
case '%': //나머지값
z=a%b;
break;
default: //그 외 연산을 입력하면 실행
printf("잘못 입력하셨습니다. 다시 입력하세요 \n");
}
printf("% d %c %d = %d \n", a, arithmetic, b, z);
return 0;
}
감사합니다
'프로그램' 카테고리의 다른 글
[C언어]배열의 선언과 배열을 이용한 기초예시 9강 (180) | 2024.09.12 |
---|---|
[C언어]반복문 for문 구조와 기초예시 8강 (172) | 2024.09.07 |
[C언어]관계, 논리연산자와 조건문(if~else) 기초예시 6강 (226) | 2024.08.27 |
[C언어]다양한 연산자의 사용법과 우선순위 기초예시 5강 (199) | 2024.08.24 |
[C언어] 표준입력 scanf 기초예시 4강 (229) | 2024.08.21 |