黑马程序员-C语言的控制流

C语言的控制流
   程序语言中的控制流语句用于控制各计算操作的执行次序。
   1.if-else语句
    if-else语句用于条件判定。语法如下:
       if(表达式)
          语句1
       else 
          语句2
    其中else语句是可选语句,该语句执行时,先计算表达式的值,如果其值为真,则执行语句1;如果其为假,并且该语句包含else部分,则执行语句2。
    


   2.else-if
   在C语言中,我们经常遇到一下结构:
     if(表达式)
     语句
     else if(表达式)
       语句
     else if(表达式)
       语句
     else if(表达式)
      语句
     else
      语句
    这种if语句序列是编写多路判定最常用的办法。其中的各表达式将被依次求值,一旦某个表达式结果为真,则执行与之相关的语句,并终止整个语句序列额执行。最后一个else部分用于处理“上述条件均不成立”的情况或默认情况,也就是当上面的各种条件都不满足时的情况。
  


   3.switch语句
    switch语句是一种多路判定语句,它测试表达式是否与一些常量整数值中的某一个值匹配,并执行相应的分支动作。
      switch(表达式)
      {case 常量表达式:语句序列
      
        case 常量表达式:语句序列


        default:语句序列


        }
    每一个分支都是由一个或者多个整数值常量或者常量表达式标记。如果谋个分支与表达式的值匹配,则从该分支开始执行。各分支表达式必须不同。如果没有那一分支能支配匹配的表达式,则执行标记为default的分支。default分支是可选的。如果没有default分支也没有其他分支与表达式的值匹配,则该switch语句不执行任何动作。在switch语句中有break语句。程序中存在break语句,则将导致程序的执行立即从switch语句中推出。在switch语句中,case的作用只是一个标号,因此,某个分支的代码执行完成后,程序将进入下个分支继续执行,除非在程序中显式的跳转,跳出switch语句最常用的方法是用break语句与return语句。




   4.while循环与for循环


   
    while循环语句
    
       while(表达式)
         语句
     在while循环中,首先求表达式额值。如果其值为真非0,则执行语句,并再次求该表达式的值。这以循环过程一直进行下去,知道该表达式的值为假(0)为止,随后执行语句后面的部分。






    for循环语句


     for(表达式1;表达式2;表达式3)
                  语句
      
   它等价与下列while语句:


           表达式1;
            while(表达式2){
             语句
             表达式3;
           }
     但当while或者for循环语句中包含continue语句时,上述二者之间就不一定等价了。
     从语法角度看,for循环语句的是那个组成部分都是表达式。最常见的情况是,表达式1与表达式3是赋值表达式活函数调用,表达式2是关系表达式。
     在程序设计时到底选用while语句还是for语句主要取决于程序员的个人偏好。但如果语句中需要执行简单的初始化和变量递增,使用for循环语句更加自然一些。
     逗号运算符“,”也是C语言中优先级最低的运算符,在for语句中经常遇到它。被逗号分隔的一对表达式将按照从左至右额顺序进行求值,各表达式右边的操作数的类型和值即为其结构的类型和值。这样,在for循环语句中,可以将多个表达式放在各个语句成分中,比如同时处理两个循环控制变量。




   5.do-while循环
  


     在C语言中while和for循环语句都是在循环体执行前对终止条件进行测试,而do-while循环则在循环体执行后测试终止条件,这样循环体最少被执行一次。
      do-while循环语句


       do
          表达式
      while(表达式);
     在这一结构中,先执行循环体语句中的部分,然后再求表达式的值。如果表达式的值为真,则再次执行语句,以此类推。当表达式的值为假,则循环终止。一般情况下,do-while循环比while和for循环用的少,但在一些情况下,do-while循环还是很有用。




  6.goto语句
 


   C语言提供了可随意滥用的goto语句以及标记跳转位置的标号。从理论上来讲,goto语句是没有必要的。但在一些场合goto语句还是用的着。最常见的用法是终止程序在某些深度嵌套的结构中的处理过程,例如一次跳出一个或多个循环,这种情况下break语句是不能达到目的的,它只能从内层循环退出到上层循环。举例:
              for(...)
                for(...){
                 ......
                 if (disaster)
                  goto  error;
                }
               ...
              error:
                   处理错误情况
    在这个例子中错误可能出现在多个地方,使用goto语句将会比较方便。


 


    我目前所了解的控制流就是这些,在这些控制流中,for循环是我最喜欢的控制流结构。



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值