C 언어에서 스위치의 사용법은 무엇입니까?

coldplay.xixi
풀어 주다: 2020-07-27 13:08:04
원래의
41378명이 탐색했습니다.

C 언어에서 스위치 사용법은 다음과 같습니다. 1. 스위치 뒤의 괄호 안의 [표현식]은 ANSI 표준에 따라 모든 유형이 허용됩니다. 2. 표현식의 값이 상수 표현식의 값과 같은 경우 특정 경우 이후에는 이 경우 다음에 오는 명령문을 실행하고, 그렇지 않으면 기본값에 따르는 명령문을 실행합니다.

C 언어에서 스위치의 사용법은 무엇입니까?

C 언어에서 스위치 사용법은 다음과 같습니다.

기능: 스위치 문은 다중 분기 선택 문입니다. if 문에는 두 가지만 있습니다. 가지를 선택해야 하지만 실제 문제에서는 다가지 선택이 자주 사용됩니다. 예를 들어 학생 성취도 분류(90은 'A' 등으로 나뉘며, 80~89는 'B' 등으로 나누어집니다.) 90은 'C' 등으로 나누어집니다....) 물론 이것들은 모두 중첩된 if 문으로 처리할 수 있지만 분기가 많으면 중첩된 if 문 레이어가 많아져 프로그램이 길어집니다. C 언어는 다중 분기 선택을 직접 처리하는 스위치 문을 제공합니다. 이는 PASCAL 언어의 CASE 문과 동일합니다.

Form: switch (expression)

{
case 常量表达式 1:语句 1
case 常量表达式 2:语句 2
.
.
.
case 常量表达式 n:语句 n
default:语句 n+1
}
로그인 후 복사

예를 들어, 시험 점수 수준에 따라 백분율 세그먼트를 인쇄하려면 스위치 문을 사용할 수 있습니다:

switch(grade)
{
case 'A':printf("85-100\n");
case 'B':printf("70-84\n");
case 'C':printf("60-69\n");
case &#39;D&#39;:printf("<60\n");
default:printf("error\n");
}
로그인 후 복사

지침:

(1) 스위치 뒤의 괄호 안의 "표현식"은 ANSI 표준에 따라 모든 유형이 허용됩니다.

(2) 표현식의 값이 케이스 뒤에 있는 상수 표현식의 값과 같을 때, 모든 케이스의 상수 표현식의 값이 표현식과 일치하지 않으면 다음 케이스 명령문이 실행됩니다. 이후에는 default가 실행됩니다.

(3) 각 경우의 상수 표현식의 값은 서로 달라야 합니다. 그렇지 않으면 충돌하는 현상이 발생합니다(동일한 표현식 값에 대해 두 개 이상의 실행 계획이 있음).

(4) 각 경우에 기본값이 나타나는 순서는 실행 결과에 영향을 미치지 않습니다. 예를 들어 "default: ..."가 먼저 나타날 수 있고 그 다음 "case 'D': ...", 그 다음 "case 'A': ..."가 나타날 수 있습니다.

(5) 사례 실행 후 "case 상수 표현식"은 명령문 레이블 역할만 하며, 거기서 조건 판단을 수행하지 않습니다. 입력 라벨은 추가 판단 없이 이 라벨에서 실행됩니다. 예를 들어 위의 예에서 grade 값이 'A'와 같으면

85-100
70-84
60-69
<60
error
로그인 후 복사

가 계속 출력됩니다. 따라서 Case 분기를 실행한 후에는 프로세스가 스위치 구조 밖으로 점프합니다. 즉, 스위치 문의 실행이 종료됩니다.

이 목적을 달성하려면 위의 스위치 구조를 다음과 같이 다시 작성할 수 있습니다. :

switch(grade)
{
case &#39;A&#39;:printf("85-100\n"); break;
case &#39;B&#39;:printf("70-84\n"); break;
case &#39;C&#39;:printf("60-69\n"); break;
case &#39;D&#39;:printf("<60\n"); break;
default:printf("error\n");
}
로그인 후 복사

마지막 분기(기본값)에는 break 문이 필요하지 않습니다. 값이 'B'인 경우 "70-84"만 출력됩니다.

케이스 뒤에 실행 문이 두 개 이상 있습니다. , 중괄호로 묶을 필요는 없으며 이 경우 이후의 모든 실행 문은 자동으로 순차적으로 실행됩니다. 물론 중괄호를 추가할 수도 있습니다.

(6) 여러 사례가 실행 문 집합을 공유할 수 있습니다. 예:

case &#39;A&#39;:
case &#39;B&#39;:
case &#39;C&#39;: printf(">60\n");break;
.
.
로그인 후 복사

grade 값이 'A', 'B' 또는 'C'인 경우 동일한 명령문 세트가 실행됩니다.

관련 학습 권장 사항: C 비디오 튜토리얼

위 내용은 C 언어에서 스위치의 사용법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿