스위치 계산서
이것은 방법 결정의 다 또 다른 모양이다. 그것은 잘 구축되고, 그러나 단지 곳에 특별한 경우에 사용될 수 있다;
- 단지 1개의 가변만 저 가변의 가치에, 모든 분지 달려 있어야 한다 시험된다. 가변은 완전한 유형이어야 한다. (int, 길고, 짧은 또는 숯).
- 가변의 각 가능한 가치는 단 하나 분지를 통제할 수 있다. 마지막은, 모두를 의 과태 분지 선택으로 모든 특기하지 않는 상자를 덫을 놓는 사용될지도 모른다 붙잡는다.
아래에 들어진 예는 것을 명백하게 할 것이다. 이것은 막연한 묘사로 정수를 개조하는 기능이다. 확실히 작 때 우리가 양지 측정에서서만 염려하는 곳에 유용하다.
estimate(number)
int number;
/* Estimate a number as none, one, two, several, many */
{ switch(number) {
case 0 :
printf("None\n");
break;
case 1 :
printf("One\n");
break;
case 2 :
printf("Two\n");
break;
case 3 :
case 4 :
case 5 :
printf("Several\n");
break;
default :
printf("Many\n");
break;
}
}
각 재미있는 케이스는 대응 활동으로 목록으로 만들어진다. 틈 계산서는 스위치를 남겨두어서 수행에서 더 이상의 계산서를 방지한다. 사례에는 3와 사례 4에는 따르기 틈이 없기 때문에, 수의 몇몇 가치를 위한 동일한 활동 허용에 계속한다.
과 스위치 구조물이 프로그래머가 다수 시행가능한 행동에게서 선택을 만들 것을 허용하는 경우에 둘 다. 저희가 보기를 보게 하십시오:
#include <stdio.h>
int main()
{
int num;
for (num = 3 ; num < 13 ; num = num + 1)
{
switch (num)
{
case 3 :
printf("The value is three\n");
break;
case 4 :
printf("The value is four\n");
break;
case 5 :
case 6 :
case 7 :
case 8 :
printf("The value is between 5 and 8\n");
break;
case 11 :
printf("The value is eleven\n");
break;
default :
printf("It is one of the undefined values\n");
break;
} /* end of switch */
} /* end of for loop */
return 0;
}
프로그램의 산출은 일 것이다
The value is three
The value is four
The value is between 5 and 8
The value is between 5 and 8
The value is between 5 and 8
The value is between 5 and 8
It is one of the undefined values
It is one of the undefined values
The value is eleven
It is one of the undefined values |
|