switch语句的执行流程图:
我们在使用switch语句的时候,会用到break语句。
我们先看下面的代码:
#include <stdio.h>
int main()
{
int n = 5;
switch (n)
{
case 1:printf("星期一\n");
case 2:printf("星期二\n");
case 3:printf("星期三\n");
case 4:printf("星期四\n");
case 5:printf("星期五\n");
case 6:printf("星期六\n");
case 7:printf("星期日\n");
default:printf("请重新输入:\n");
}
return 0;
}
如果你认为输出的是 星期五 ,那么你就错了。显示的应该是:
这是一个break引起的错误。
一般,我们在用switch语句的时候,每条case语句后面都会跟一个break。
int main()
{
int n = 5;
switch (n)
{
case 1:printf("星期一\n");
break;
case 2:printf("星期二\n");
break;
case 3:printf("星期三\n");
break;
case 4:printf("星期四\n");
break;
case 5:printf("星期五\n");
break;
case 6:printf("星期六\n");
break;
case 7:printf("星期日\n");
break;
default:printf("请重新输入:\n");
break;
}
return 0;
}
如果你想从一个分支跳转到下一个分支,就可以这样做:
int main()
{
int n = 3;
switch (n)
{
case 4:case 3:case 2:case 1:
printf("hello world\n");
break;
case 0:break;
default:break;
}
return 0;
}
注:忘记使用break语句是编程时常犯的错误。虽然有时会故意忽略break以便多个分支共享代码,但通常情况下省略break是因为疏忽。