switch语句的通常形式:
switch(整形表达式)
{
case 常量表达式1: 语句1;
case 常量表达式2: 语句2;
…
case 常量表达式n: 语句n;
default: 语句n+1;spa
}code
switch主要须要注意的方面有两个:blog
一、从哪进:表达式的值与case后的值相同则进入,case顺序不影响结果it
二、从哪出:遇到break或整个switch结束(break之前是为了灵活,如今是累赘)io
与if语句的不一样:class
If语句中若判断为真则只执行这个判断后的语句,执行完就跳出if语句,不会执行其余if语句;循环
而switch语句不会在执行判断为真后的语句以后跳出循环,而是继续执行后面全部case语句。im
在每一case语句以后增长break语句,使每一次执行以后都可跳出switch语句,从而避免输出不该有的结果。img
一个没有加break的例子:di
#include
int main()
{
for(int i=1; i<=4; i++)
{
switch(i%2)
{
case 0:
printf("0\n");
case 1:
printf("1\n");
}
}
}
输出结果为:
最后:
一、case后的常量表达式不能相同;
二、case后的语句能够有多个且不用花括号括起来;
三、case和default子句的前后顺序能够前后变更,default子句能够省略不用;