Switch Case 문은 주어진 표현식을 평가하고 평가된 값(특정 조건과 일치)을 기반으로 연관된 문을 실행합니다. 기본적으로 다양한 조건(케이스)에 따라 다양한 작업을 수행하는 데 사용됩니다.
- Switch Case 문은 선택 제어 메커니즘을 따르며 값으로 실행 제어를 변경할 수 있습니다.
- 그들은 긴 대체품입니다 if 문 변수를 여러 정수 값과 비교합니다.
- switch 문은 다중 방향 분기 문입니다. 표현식의 값을 기반으로 코드의 다른 부분에 실행을 전달하는 쉬운 방법을 제공합니다.
C에서는 여러 조건 중 하나의 조건을 실행하는 데 스위치 케이스 문을 사용합니다. if-else-if 사다리와 유사합니다.
배열 슬라이싱 자바
switch 문은 조건 기반 케이스와 기본 케이스로 구성됩니다.
C의 switch 문의 구문
switch(expression) { case value1 : statement_1; break; case value2 : statement_2; break; . . . case value_n : statement_n; break; default: default_statement; }>C에서 스위치 케이스 문을 사용하는 방법은 무엇입니까?
프로그램에서 스위치 케이스를 사용하기 전에 스위치 문의 몇 가지 규칙을 알아야 합니다.
Switch Case 문의 규칙
다음은 switch 문을 사용할 때 따라야 할 몇 가지 규칙입니다.
- switch 문에서는 케이스 값 의 것이어야합니다 숯 그리고 정수 유형.
- 하나 또는 N개의 사례가 있을 수 있습니다.
- 케이스의 값은 다음과 같아야 합니다. 고유한 .
- Case의 각 문에는 break 문이 있을 수 있습니다. 선택사항입니다.
- 기본 명령문도 선택 사항입니다.
예
씨 // C program to Demonstrate returning of day based numeric // value #include int main() { // switch variable int var = 1; // switch statement switch (var) { case 1: printf('Case 1 is Matched.'); break; case 2: printf('Case 2 is Matched.'); break; case 3: printf('Case 3 is Matched.'); break; default: printf('Default case is Matched.'); break; } return 0; }> 산출
Case 1 is Matched.>
스위치 문은 어떻게 작동합니까?
C에서 스위치 문의 작동 방식은 다음과 같습니다.
- 1 단계: 스위치 변수가 평가됩니다.
- 2 단계: 평가된 값은 현재의 모든 사례와 일치됩니다.
- 3A단계: 일치하는 케이스 값이 발견되면 연관된 코드가 실행됩니다.
- 3B단계: 일치하는 코드가 없으면 기본 케이스가 실행됩니다.
- 4A단계: 케이스에 break 키워드가 있으면 프로그램 제어가 스위치 문에서 중단됩니다.
- 4B단계: break 키워드가 없으면 일치하는 사례 뒤의 모든 사례가 실행됩니다.
- 5단계: switch 문 뒤의 문이 실행됩니다.
또한 순서도를 사용하여 C에서 스위치 문의 작동을 이해할 수 있습니다.
Switch 문의 흐름도

C의 스위치 문의 흐름도
스위치 케이스 파손
이 키워드는 스위치 블록 내에서 실행을 중지하는 데 사용됩니다. 스위치 블록을 종료하고 빠져나오는 데 도움이 됩니다. break 문에 도달하면 스위치가 종료되고 제어 흐름은 스위치 문 다음 줄로 이동합니다.
그만큼 break 문은 선택 사항입니다. . 생략하면 다음 케이스로 실행이 계속됩니다. 제어 흐름은 중단에 도달할 때까지 후속 사례로 이어집니다.
파손되지 않은 스위치 케이스의 예
씨 // C Program to demonstrate the behaviour of switch case // without break #include int main() { int var = 2; // switch case without break switch (var) { case 1: printf('Case 1 is executed.
'); case 2: printf('Case 2 is executed.
'); case 3: printf('Case 3 is executed.'); case 4: printf('Case 4 is executed.'); } return 0; }> 산출
Case 2 is executed. Case 3 is executed.Case 4 is executed.>
스위치 케이스의 기본값
기본 키워드는 세트를 지정하는 데 사용됩니다. 대소문자가 일치하지 않는 경우 실행할 명령문 .
그것은 선택 과목 스위치 케이스에서 default 키워드를 사용합니다. Switch Case문에 default문이 없어도 문제없이 실행됩니다.
Switch Case 문에 대한 중요한 사항
1. 스위치 표현식은 다음과 같아야 합니다. 상수 값
switch 문에 제공된 표현식이 상수 값을 생성하지 않으면 유효하지 않습니다. 스위치 케이스에 대한 유효한 표현은 다음과 같습니다.
윈도우7은 언제 나왔나요?
// Constant expressions allowed switch(1+2+23) switch(1*2+3%4) // Variable expression are allowed provided // they are assigned with fixed values switch(a*b+c*d) switch(a+b+c)>
2. 표현식 값은 int 또는 char 유형이어야 합니다.
switch 문은 정수 또는 문자 값만 평가할 수 있습니다. 따라서 스위치 표현식은 int 또는 char 유형의 값만 반환해야 합니다.
3. 케이스 값은 고유해야 합니다.
C 스위치 문에서는 중복된 Case 값이 허용되지 않습니다.
3. 스위치 문의 중첩
스위치 문의 중첩이 허용됩니다. , 이는 다른 스위치 내에 스위치 문을 가질 수 있음을 의미합니다. 그러나 중첩된 스위치 문은 프로그램을 더 복잡하고 읽기 어렵게 만들기 때문에 피해야 합니다.
4. 기본 블록은 어디에나 배치할 수 있습니다.
배치에 관계없이 기본 케이스는 다른 케이스 조건이 충족되지 않는 경우에만 실행됩니다. 따라서 시작, 중간 또는 끝 부분에 배치해도 핵심 논리는 변경되지 않습니다.
C의 switch 문의 예
예제 1: C 스위치 케이스를 사용하여 요일을 인쇄하는 프로그램.
씨 // C program to print the day using switch #include // Driver Code int main() { int day = 2; printf('The day with number %d is ', day); switch (day) { case 1: printf('Monday'); break; case 2: printf('Tuesday'); break; case 3: printf('Wednesday'); break; case 4: printf('Thursday'); break; case 5: printf('Friday'); break; case 6: printf('Saturday'); break; case 7: printf('Sunday'); break; default: printf('Invalid Input'); break; } return 0; }> 산출
The day with number 2 is Tuesday>
예 2: C에서 스위치 케이스를 사용하는 간단한 계산기
씨 // C Program to create a simple calculator using switch // statement #include #include // driver code int main() { // switch variable char choice; // operands int x, y; while (1) { printf('Enter the Operator (+,-,*,/)
Enter x to ' 'exit
'); scanf(' %c', &choice); // for exit if (choice == 'x') { exit(0); } printf('Enter the two numbers: '); scanf('%d %d', &x, &y); // switch case with operation for each operator switch (choice) { case '+': printf('%d + %d = %d
', x, y, x + y); break; case '-': printf('%d - %d = %d
', x, y, x - y); break; case '*': printf('%d * %d = %d
', x, y, x * y); break; case '/': printf('%d / %d = %d
', x, y, x / y); break; default: printf('Invalid Operator Input
'); } } return 0; }>
산출
Enter the operator (+, -, *, /) Enter x to exit + Enter the two numbers: 100 + 200 100 + 200 = 300>
C 스위치 설명의 장점
- if else if보다 읽기 쉽습니다.
- 다양한 조건에 대한 디버깅 및 유지 관리가 더 쉽습니다.
- 실행 속도가 빨라집니다.
C 스위치 문의 단점
- Switch Case는 int 또는 char 유형만 평가할 수 있습니다.
- 논리식은 지원되지 않습니다.
- 모든 경우에 중단을 추가해야 한다는 점을 명심해야 합니다.
결론
이번 글에서는 C 프로그래밍의 스위치 문과 이를 사용하는 방법에 대해 논의했습니다. 이는 자체 장점과 단점이 있는 if-else-if 사다리와 같은 조건문입니다. 평가할 조건의 수가 많을 때 주로 선호됩니다.
C 스위치 설명에 대한 FAQ
1. C에서 스위치 케이스는 무엇입니까?
Switch Case 문은 스위치 변수를 정의한 다음 스위치 변수의 값에 따라 다른 코드를 실행할 수 있는 흐름 제어 문입니다. if else if 사다리의 대안입니다.
2. C의 스위치 문의 경우는 무엇입니까?
case 키워드는 스위치 문에서 다양한 사례와 관련 코드를 정의하는 데 사용됩니다.
3. 스위치 케이스의 파손은 어떤 역할을 합니까?
break 키워드는 일치하는 사례를 실행한 후 스위치 블록을 종료하는 데 사용됩니다.
4. C에서 스위치와 사다리의 차이점은 무엇입니까?
다음은 주요 내용이다 C 스위치와 C의 차이점 if else if ladder :
스위치 Java에서 json에 대한 객체 | 만약 그렇지 않다면 |
|---|---|
| 스위치 변수의 값에 따라 다양한 케이스를 실행합니다. | 지정된 조건에 따라 다양한 블록을 실행합니다. |
| int 또는 char 유형 표현식만 평가할 수 있습니다. | 모든 유형의 표현식을 평가할 수 있습니다. |
| 많은 수의 조건을 더 빠르고 쉽게 읽을 수 있습니다. | 조건이 많으면 지저분해질 수 있습니다. |
읽어야 할 내용:
- C의 스위치 케이스에 대한 흥미로운 사실
- if 또는 Switch를 사용하지 않고 개별 숫자를 단어로 인쇄