基础模版: switch(int型变量) { case 整型常量: 执行语句; }
#include <stdio.h>
int main()
{
int x = 0;
/*scanf("%d", &x);*/
scanf("%d", &x);
switch (x)
{
case 1:
printf("执行1\n");
case 2:
printf("执行2\n");
case 3:
printf("执行3\n");
case 4:
printf("执行4\n");
case 5:
printf("执行5\n");
}
return 0;
}
搭配break语句实现指哪跳哪:
#include <stdio.h>
int main()
{
int x = 0;
/*scanf("%d", &x);*/
scanf("%d", &x);
switch (x)
{
case 1:
printf("执行1\n");
break;
case 2:
printf("执行2\n");
break;
case 3:
printf("执行3\n");
printf("执行3\n");
//对照项
case 4:
printf("执行4\n");
break;
case 5:
printf("执行5\n");
break;
}
return 0;
}
由此可看出:
break 可跳出 switch,没有 break 语句程序会往下继续执行 case语句。
#include <stdio.h>
int main()
{
int x = 0;
/*scanf("%d", &x);*/
scanf("%d", &x);
switch (x)
{
case 1:
printf("执行1\n");
break;
case 2:
printf("执行2\n");
break;
case 3:
printf("执行3\n");
break;
case 4:
printf("执行4\n");
//break;
//对照项
case 5:
printf("执行5\n");
break;
default:
printf("erro");
printf("erro");
break;
}
return 0;
}
可见添加 default 语句可以处理异常case。
#include <stdio.h>
int main()
{
int x = 0;
/*scanf("%d", &x);*/
scanf("%d", &x);
switch (x)
{
case 1:
printf("执行1\n");
break;
case 2:
printf("执行2\n");
break;
case 3:
switch (2)
{
case 1:
printf("haha\n");
break;
case 2:
printf("jjj\n");
break;
}
case 4:
printf("执行4\n");
//break;
case 5:
printf("执行5\n");
break;
}
return 0;
}
由此可见:
switch语句 可嵌套使用;
break 语句只能跳出自己所在的 switch语句;
最后一个 case语句5 可以不加 break ,但最好加上,防止后续添加 case 时忘加。