学习日志以及个人总结(第五条)

5.0 day5 流程控制

流程:
顺序结构 
分支结构
循环结构

任何一个程序都可以是三种结构的组合。

5.1.分支结构(选择)


选择 --判断

构造判断的条件
关系运算(大小关系)
 > 
 >=
 <
 <=
 ==
 !=
 1>2  //表达式
      //结果
      //数据类型
 
 关系运算的结果:
真 or 假
 1     0   //被称为逻辑结果
 C语言 中 0为假 非0为真
 
 


5.2 逻辑运算


 与  或  非
&&   ||   !(!优先级super高)
 
 逻辑运算 是用来组合多个关系
  与  &&  规则 一假则假
  或  ||  规则 一真则真
  非   ! 规则 真假相对
  
  关于优先级 
  算术 >关系运算>逻辑运算>赋值>逗号
  
  (1>2) && (a++)
  &&截断特性(短路特性) 先看左边 左边一旦为假 全为假
  ||也存在截断特性
  


  
  5.3.流程控制语句.


  两个方面看  1.语句 2.语法格式
  remember if语句的三种形式
  
  形式1:
  if(表达式) //表达式:做判断的条件
  {
    语句
  }//复合语句 
  
  含义:首先判断"表达式"?
  真 则执行语句
     语句执行完毕,表示if语句结束程序继续往下
     
  假 则if语句结束,程序继续往下
  
  eg main()
  {
    .....
    if()
    {
                   //假或真都继续执行程序
    }
    .....
  }
  注意:
  if();
  { 
    
  }
    形式2:
    if()
    {
        语句1
    }else
    {
        语句2
    }
    含义:
    首先判断"表达式"
    真:则执行"语句1"
    语句1执行完,表示if语句结束,程序继续往下
    假:则执行"语句2"
    语句2执行完,表示if语句结束,程序继续往下
     
     形式3:多分支语句
     if(表达式1)
     {
        语句1;
     }else if(表达式2)
     {
        语句2;
     }else if(表达式3)
     {
        语句3;
     }else if
     .....
     else
     {
     
     }
     含义:
     判断"表达式1"
     真: 则执行"语句1" 语句1执行完,表示if语句结束程序继续往下
     假:则判断"表达式2"
        真:则执行"语句2"语句2执行完,表示if语句结束,程序继续往下
        假:则判断"表达式3"
            真:则执行"语句3"语句3执行完,表示if语句结束,程序继续往下     
            假
              .....
    

    
    
    注意:
    1.不存在单独的else语句,else出现一定有一个if与之对应
    2.else 与 if匹配规则 :从最里面开始匹配 else与最近前面一个if相匹配
    
    条件运算: //简化代码
    
    表达式1 ? 表达式2 :表达式3
    
    问一问     表达式1? --是真 or假
               若是真 则执行 表达式2
               若是假 则执行 表达式3
              
              
               
switch  //多分支的情况 
switch(表达式) //整型表达式 
{
    case 常量表达式:  //1+b 
         语句;
         break;
    case 常量表达式:
         语句;
         break;
    case 常量表达式:
         语句;
         break;
     default: //默认 
         语句;
         break;
}
含义:
  求解 "表达式"
  根据 结果 ,匹配 下面case后面的值 
  匹配上后,
  则执行对应case下的语句 ,
  直到遇到了break 或者是switch 右} (花括号)  

注意:
  1.switch 后表达式 需要是一个 整型表达式 
  2.case后面是,常量表达式,不能出现变量     
     
 含义:
    求解"表达式"
    根据结果,匹配下面case后面的值
    匹配上后,则执行

对应case下的语句 ,
  直到遇到了break 或者是switch 右} (花括号)  

注意:
  1.switch 后表达式 需要是一个 整型表达式 
  2.case后面是,常量表达式,不能出现变量     
     
 含义:
    求解"表达式"
    根据结果,匹配下面case后面的值
    匹配上后,则执行
    
    
    注意 
    1.    case 是一个标签 lable
    2.switch 只会匹配一次
    3.default 写错,不会报语法问题,但是写错后不会起 default的作用
    4.default写到前面有可能会出现bug
      (如果default写到前面 务必加上break)
                                             ------------------------------------
if 与 switch 的对比 
    if:条件判断
    switch:值的计算和匹配

  
  
  
  
  
  

你可能感兴趣的:(学习,linux)