• 검색 결과가 없습니다.

C에서는 switch 문을 사용하여 이 문제점을 해결한다

N/A
N/A
Protected

Academic year: 2022

Share "C에서는 switch 문을 사용하여 이 문제점을 해결한다"

Copied!
3
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

주 9

문 switch

□ if 문이 둘 중 하나를 택할 경우에는 이점이 있지만 여러 가지 중 하나를 택할 경우에는 복잡하게 된다, . C에서는 switch 문을 사용하여 이 문제점을 해결한다.

문은 다중 선택 문장이다 는 프로그램의 여러 가지 가능한 실행 경로 중에서 하나를 선택하는데 사용되며 다음과 같이 수행된다

switch . switch .

하나의 변수(variable)가 정수나 문자 상수(constant)들과 비교된다 만일 일치하는 것을 찾으면 일치되는 것과 관련된 문장을 수행한다. , . switch 문의 일 반적인 형식은 다음과 같다.

switch(variable) { case constant1:

statement sequence break;

case constant2:

statement sequence break;

case constant3:

statemenet sequence break;

. . default:

statement sequence break;

}

□ 여기서 default 문은 일치되는 것이 없을 때 수행되며 생략가능하다 일치되는 문장이 없고 . default 문 역시 없으면 아무 것도 수행하지 않는다. 일치하는 것을 찾으면 해당 , case와 관련된 문장들은 break를 만나거나 혹은, default 나 마지막 case의 경우에 switch 문의 끝을 만날 때까지 실행된 다.

(2)

□ 아주 간단한 예로서 다음 프로그램 , 1,2,3,4를 인식할 수 있으며 입력한 수의 영문 이름을 출력한다 즉 를 입력하면 이 프로그램은 . , 2 , two를 출력한 다.

#include "stdio.h"

main() {

int i;

printf("Enter a number between 1 and 4: ");

scanf("%d", &i);

switch(i) { case 1:

printf("one");

break;

case 2:

printf("two");

break;

case 3:

printf("three");

break;

case 4:

printf("four");

break;

default:

printf("unrecognized number");

} }

문은 문과 다른데 문의 조건식에 어떤 형태의 식이라도 올 수 있지만 문은 오직 일치하는 것만을 검사한다 또한 문에는

switch if , if switch . switch int

나 char 형만 사용할 수 있다 예를 들어 실수는 사용할 수 없다. , .

□ case 와 연관된 문장들은 블록이 아니므로 중괄호를 붙이지 않는다.

(3)

□ ANSI C 표준에서는 적어도 257개의 case 문을 허용한다 실제로 사용자는 효율성을 고려하여 훨씬 적은 수의 . case 문을 사용한다 또한 하나의 . 문에 두 개 이상의 상수가 같은 값이 될 수 없다

switch case .

□ switch 문장 안에 또 다른 하나의 switch 문장이 올 수 있다 이것을 중첩된 . switch 문이라 한다 내부와 외부 . switch 문의 case 상수가 같더라도 문 제가 되지 않는다 예를 들어 다음의 코드 단락은 전혀 문제가 되지 않는다. , .

switch(a) { case 1:

switch(b){

case 0: printf("b is false");

case 1: printf("b is true");

} break;

case2:

.

표준에서는 적어도 단계의 중첩된 문을 허용한다

ANSI C 15 switch .

참조

관련 문서

(6) 정리 상가건물임대차보호법과 관련하여 임차상가건물 경매상의 문제점을 정리하면 다음과 같다. 첫째, 상가건물임대차보호법의 적용범위를 사업자등록이

이 에 따라 민간복지자원으로서 자원봉사 활성화를 위한 다양한 시도의 일 방 안으로서 한국형 국가봉사단의 기본 모형을 제시하고, 국가봉사단을 통해

관상동맥우회술을 받은 환자의 시기별 총 기간동안의 평균 수면의 질 양상의 점수는 ± 이었고 회 측정한 수면의 질 양상의 점수는 다음과 같다 관 상동맥우회술 후 일 회

We report a case of T-ALL at initial pre- sentation, which showed lineage switch to B/myeloid MPAL at relapse.. We believe that this is the first such case to

4. 이들은 시행군과 동일한 시간 동안, 동일한 교수에게 전통적인 교수법으로 실습지도를 받았다. 한편 플립러닝 시행군에 대한 자료수집은 다음과 같다. 사전 설문 작성

그 결과, 포장의 단면 축소, 줄눈 간격 확장, 다웰바 설치 여부, 암반층 물성이 콘크리트 슬래브의 한계 응력 (critical stress)에 대한 영향을 검토하여 각 변수

이에 본 연구는 치매환자를 돌보는 가족을 대상으로 온라인 치매가족 교육 프로그램에 대한 요구도를 조사하 여 프로그램 개발을 위한 기초 자료를 제공하고자

또한 공 간적 범위에 따라 외부효과가 다르게 나타날 수 있 음을 고려하여 공간적 범위를 인접, 비인접지역, 동 일 광역경제권역 내˙외 지역 등으로 공간을 구분하