• C分支语句的工程用法


    if语言中零值比较的注意点:

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

      -变量和零值比较时,零值应该出现在比较符号左边

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

     1 bool b = true;
     2 if(b)
     3 {
     4   //statement1  
     5 }
     6 else
     7 {
     8   //statement2  
     9 }
    10 /*============*/
    11 int i= 1;
    12 
    13 if(0 == i)
    14 {
    15    //statement1  
    16 }
    17 else
    18 {
    19   //statement2  
    20 }
    21 
    22 /*============*/
    23 
    24 #define EPSION 0.00001
    25 float f = 0.0 ;
    26 
    27 if((-EPSION <= f) && (f <= EPSION))
    28 {
    29   //statement1  
    30 }
    31 else
    32 {
    33   //statement2  
    34 }

    switch 语句分析:

      -switch 语句对应单个条件多个分支的情形

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

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

     1 #include <stdio.h>
     2 
     3 void f1(int i)
     4 {
     5     switch( i < 6 )
     6     {
     7         case 1:
     8             printf("Failed!
    ");
     9             break;
    10         
    11         default:
    12             switch( (6 <= i) && (i <= 8) )
    13             {
    14                 case 1:
    15                     printf("Good!
    ");
    16                     break;
    17                     
    18                 default:
    19                     printf("Perfect!
    ");
    20                     break;
    21             }
    22             break;
    23     }
    24 }
    25 
    26 void f2(char i)
    27 {
    28     if( 'c' == i )
    29     {
    30         printf("Compile
    ");
    31     }
    32     else if( 'd' == i )
    33     {
    34         printf("Debug
    ");
    35     }
    36     else if( 'o' == i )
    37     {
    38         printf("Object
    ");
    39     }
    40     else if( 'r' == i )
    41     {
    42         printf("Run
    ");
    43     }
    44     else
    45     {
    46         printf("Unknown
    ");
    47     }
    48 }
    49 
    50 int main()
    51 {
    52     f1(5);
    53     f1(9);
    54     f1(7);
    55     
    56     f2('o');
    57     f2('d');
    58     f2('e');
    59 
    60     return 0;
    61 }

      -case语句中的值只能是整型或字符型

      -case语句的排列顺序

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

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

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

    小结:

      -if语言适用于复杂逻辑进行判断的情况中

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

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

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

      -switch语句对应多分枝更加简洁

  • 相关阅读:
    查找质数的算法优化版
    一些新闻链接
    spring的自动装配基础
    Spring中的Autowired注解和Resource注解的区别
    动态规划:01背包 复习
    贪心问题 POJ 2393 Yogurt factory
    穷竭搜索:POJ 3187 Backward Digit Sums
    穷竭搜索: POJ 2718 Smallest Difference
    何凯文每日一句打卡||DAY1~DAY3
    贪心问题:区间覆盖 POJ 1328 Rader Installation
  • 原文地址:https://www.cnblogs.com/lemaden/p/10122541.html
Copyright © 2020-2023  润新知