第6课 - 分支语句

Posted kojull

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第6课 - 分支语句相关的知识,希望对你有一定的参考价值。

if语句分析

·if语句用于根据条件选择执行语句

·else不能独立存在且总是与它最近的if相匹配

·else语句后可以连接其它if语句

  if( condition )

  {

    //statement 1

  }

  else

  {

     //statement 2

  }

 

if语句中零值比较的注意点

  bool型变量应该直接出现于条件中,不要进行比较;

  变量和0比较时,0值应该出现在比较符号的左边;

  float型变量不能直接进行0值比较,需要定义精度。

 

switch语句分析

  switch语句对应单个条件多个分值的情形;

  case语句的分支必须要有break,否则会导致分支重叠;

  default语句有必要加上,以处理特殊情况。

case语句中的值只能是整型或字符型,并且只能是常量。

case语句的排列顺序

  按字母或者数字顺序排列各条语句;

  正常情况放在前面,异常情况放在后面;

  default语句只用于处理真正的默认情况。

if和switch使用示例:

 

#include <stdio.h>

void f1(int i)
{
    if( i < 6 )
    {
        printf("Failed!
");
    }
    else if( (6 <= i) && (i <= 8) )
    {
        printf("Good!
");
    }
    else
    {
        printf("Perfect!
");
    }
}

void f2(char i)
{
    switch(i)
    {
        case c:
            printf("Compile
");
            break;
        
        case d:
            printf("Debug
");
            break;
        
        case o:
            printf("Object
");
            break;
            
        case r:
            printf("Run
");
            break;
        
        default:
            printf("Unknown
");
            break;
            
    }
}

int main()
{
    f1(5);
    f1(9);
    f1(7);
    
    f2(o);
    f2(d);
    f2(e);

    return 0;
}

switch语句和if语句相互替换后的示例

#include <stdio.h>

void f1(int i)
{
    switch( i < 6 )
    {
        case 1:
            printf("Failed!
");
            break;
        default:
            switch( (6 <= i) && (i <= 8) )
            {
                case 1:
                    printf("Good!
");
                    break;
                default:
                    printf("Perfect!
");
                    break;
            }
            break;
    }
}

void f2(char i)
{
    if(c == i)
    {
        printf("Compile
");
    }
    else if(d == i)
    {
        printf("Debug
");
    }
    else if(o == i)
    {
        printf("Object
");
    }
    else if(r == i)
    {
        printf("Run
");
    }
    else
    {
        printf("Unknown
"); 
    }
}

int main()
{
    f1(5);
    f1(9);
    f1(7);
    
    f2(o);
    f2(d);
    f2(e);

    return 0;
}

 

小结:

  ·if语句适用于复杂逻辑进行判断的情形中

  ·switch语句适用于对离散值进行判断的情形中

  ·if和switch语句在功能上可以相互替换

  ·if语句对于“按片”分支判断的情形更加简洁

  ·switch语句对于多分支判断的情形更加简洁

 

 

 

 

 

 

 

 

 

 

以上是关于第6课 - 分支语句的主要内容,如果未能解决你的问题,请参考以下文章

《快乐编程大本营》java语言训练班-第4课:java流程控制

《快乐编程大本营》java语言训练班-第4课:java流程控制

实验四——多分支结构及本章总结

实验四——多分支结构及本章总结

shell if 语句

C语言程序设计第3堂作业