switch(表达式)
{
case 表达式1:语句1
case 表达式2:语句2
.
.
.
case 表达式n: 语句n
default: 语句n+1
}
注意事项:
- “case 常量表达式”只起语句标号作用,并不是在该处进行条件判断
- 在执行swich语句时根据swich后面表达式的值找到匹配的入口标号,就从此标号开始执行下去,不再进行判断
- 如果想在执行完一个case后终止swich语句,需要在该case后加一个break,否则将顺序执行swich内接下来的语句
- 多个case可以共用一组执行语句,如以下代码的14-15行
例子:
#include <stdio.h>
char input[]="SSWILTECH1\1W\1WALLMP1";
void main()
{
int i,c;
for(i=1;(c=input[i])!='\0';i++)
{
switch(c)
{
case 'a':putchar('i');continue;
case '1':break;
case '\1':while((c=input[++i])!='\1'&&c!='\0');
case '9':putchar('S');
case 'E':
case 'L':continue;
default:putchar(c);continue;
}
putchar(' ');
}
putchar('\n');
}
输出:SWICH SWAMP