C语言翁恺-第五节--switch case&break&continue

本文详细解释了switch-case结构的工作原理,包括控制表达式的类型限制,case后的语句执行逻辑,break和continue在switch和循环中的应用。特别强调了在嵌套循环和多层switch中的使用规则。
摘要由CSDN通过智能技术生成

switch-case

switch(type){

 case 1:                    

   printf("你好");       

   break;

 case2:

   printf("早上好");

   break;

 case3:

   printf("晚上好");

   break;

case 4:

   printf("再见");

  break;

default://不等于上面4种情况则等于default的值,default:默认的

   printf("啊,什么啊")

}

switch(控制表达式){   //只能是整数型结果

  case常量:              //常量可以是常数,也可以是常数的表达式

           语句....;

  case常量:

           语句....;

  default:

          语句.....;

case后面的常量表达式只能是:

1.枚举常量  2.数值常量  3.字符常量   4.常变量    

 

switch后面的表达式允许是任何类型,但VC中只允许为int或char类型

break:在执行完分支中的最后一条语句后,如果后面没有break,就会顺序执行到下面的case里去,直到遇到一个break,或者switch结束为止。

 

case 1;case 2;case 3;default是程序的入口 ,  从入口开始执行,直到break结束

如果break注释掉则进入下一个入口(case) 。

执行完一个case语句后,流程控制转移到下一个case语句继续执行,“case”常量表达式只起到语句标号的作用,并不是在该处进行条件判断。在执行switch语句时,根据Switch()表达式的值找到与之匹配的case子句,就从此case子句开始执行不再进行判断。

 

switch(i)
{

 case 1:语句1;
  
 case 2:语句2;
   
 default:语句3;
 
 case 3:语句4;


}

当i==1时,从case1开始往下一个不落的执行

当i==2时,从case2开始往下一个不落的执行

当i==3时,只执行case3一句

当i==4时,从default处开始往下一个不落的执行

当i==0时,执行情况同i==4

switch是选择而不是循环,在switch中出现了break语句,该语句的功能hi是退出switch语句执行下一条语句。

在switch中出现continue是错误的,除非switch本身就属于for或while循环的一部分

break和continue:

break如果用于循环是用来终止循环

break如果用于switch,是用来终止switch

break不能直接用于if,除非if属于循环内部的一个子句

for(i=0;i<3;++i)

   {

      if(3>2)

     break;   //break虽然是if内部的语句,但break终止的确是外部的for循环

     printf("嘿嘿!\n")

  } 

 

for(i=0;i<3;++i)
{

    for(j=1;j<4;++j)
       break;             //break只能终止距离它最近的循环
    printf("哈哈!\n");

}

在多层 switch嵌套中,break只能终止距离它最近的switch

continue:用于跳过本次循环余下的语句,转去判断是否需要执行下次循环

for(1;2;3)
{
 A;
 B;
 continue;    //如果执行该语句,则执行完该语句后,会执行语句3,C和D都会跳过
 C;
 D;

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值