switch—case,级联的if—else,循环语句(4)

 

先来摆一下 级联的if–else 和 switch–case 的基本格式

级联的if–else                                    

if  ( exp 1)                                                 

      st 1;                                                   

      else if( exp 2)                                

      st  2;                                                 

      else                                                    

      st  3;        

                                        

      switch-case

switch( 控制表达式) {

 case 常量:

语句

case 常量:

语句

default:

语句

                                                             

我认为这两者的区别在于  一般使用if语句是在比较一定范围内要怎么去做,而一般使用switch–case语句是在一定范围内有一个较为确定的值后要怎么去做

同时注意 switch–case 的控制表达式只能是整数型的结果,常量可以是常数,也可以是常数计算的表达式,例 1+1


摆一个简单的使用了switch–case语句的代码(基本框架我就没打了…)  可以看到 break 是作为一个结束的语句,break的作用跳出这个循环或者说是终结这个循环

int type;
scanf("%d",&type);
switch(type){
    case 1:
   printf("早上好!");
    break;
    case 2:
   printf("中午好!");
    break;
   default:
   printf("晚好!");
    break;
}

 


接下是三中循环语句 while,   do–while ,for

   while                           

while( 循环条件){         

 循环体语句        

}        

       do-while

          do{

         循环体语句

          } while(循环条件) ;

                                     for

                               for(初始条件; 循环条件; 循环每轮要做的事情) {

                                              循环语句

                                }

首先 来区别 这三者相同点与不同点

相同点:1 条件立是循环继续的条件,若条件不成立,则循环不会继续

             2 循环条件内要有改变的机会,若循环条件没有改变的机会,那么循环将不会停止,一直下去

不同点: while 在循环执行之前,会判断是否满足条件,而do-while在循环执行之前,是不需要判断是否满足条件,它至少要执行一次循环体语句,在去判断是否满足条件,其中for==while,for可以转换成while,所以for与do-while的不同与while一样,for与while没什么不同点。

  tips:

如果有固定次数,用for

如果必须执行一次,用do-while

其他情况则用while


小套路:

1 计算之前先保存原始的值,后面可能有用

2 如果要模拟运行一个很大次数的循环可以模拟较少的循环次数,然后作出推断

3 如果做累加计算,记录结果的变量应该初始化为0,如果做累乘的计算,记录结果的变量应该初始化为1


补充: 善于用流程图。因为流程图可以帮助我们理解程序的步骤,条件语句,循环语句等一些语句的使用方式方法,或者可以帮助我们去梳理我们写代码的思绪4。

   在设计自己的代码时,要多问自己一些问题,例如,初始变量还可以是其他的么?等  一些问题,从而可以去优化我们写的程序!

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值