自学嵌入式DAY5

选择结构程序设计

一、关系运算符

 6级(①~④)/7级(⑤⑥)   自左向右   同样属于int型

逻辑假:“0” 逻辑真:所有非“0”都为真逻辑假    “0”    逻辑真    所有非“0”都为真

二、3种逻辑运算符

(1)与:&&    (相当于AND)    双目    自左向右    属于int型

(2)或://      (相当于OR)       双目    自左向右    属于int型

(3)非:!     (相当于NOT)    单目    自右向左    属于int型

C语言中不可写为连续比较形式!  eg:a <= x <= b应写为:x >= a && x <= b

表达式截断:目的:提高程序运行速率

eg:

#include<stdio.h>
int main (void)
{ 
   int i=2, j=-3;
   int  t;
   t=i < 0 && ++j;
   printf("%d\n",j);
   return 0;
}

该程序输出j=-3   (原因:在&&运算符中“一假全假”,而此时i = 2,使得i < 0判定为假,使得&&后++j表达式截断不执行,不自增)

三、if语句:[条件分支结构]

3种形式:

1)if(表达式)语句:     

     eg:      if(i>0)       printf(">0\n");

注:①谷歌编程规范规定:一条if语句也应加“{ }”构成复合语句且每个“{ }”独占一行

②if(  )后不加“;”且if(  )和后续语句中不要乱加别的语句!

作等值比较时,通常将常量写左变,变量写右边

 

2)  if(表达式)语句1   else语句2

eg:

if(x>y)
{
  printf("%d",x);
}
else
{
  printf("%d",y);

}

注:①else不能独立存在,必须和if搭配使用。

       编写程序时要具有“高内聚、低耦合”的风格。

 

3)  if(表达式)语句1 

   else if(表达式2)语句2   

   else if(表达式3)语句3   

    ...   

   else if(表达式m)语句m   

   else   语句n

注: ①else if 和 else 同样不同单独使用,与if搭配使用。

 

四、switch语句    (switch是一个关键字)

switch(表达式)                    

case 常量表达式1:  语句1            

......

case常量表达式n:    语句n              

default :                   语句n+1                        

switch后表达式会和case后的表达式值进行等值比较,若值相同则执行语句1,若值不同.依次类推向下执行,若一直不相同则执行default后的语句n+1实际执行中每句case语句后应加break,跳出后续程序。

注:①switch后 (   )中必须为int型或与int型相兼容的类型。

       ②case后必须跟随常量表达式而非变量。

       ③若有多个case后所对应的代码相同,删除前句后续语句。

          eg: 

 case 'D':
 case 'E':
 printf(“less 60\n");
 break;

 

五、条件运算符

13级             “ ?:”        三目运算符         自右至左

(表达式1:逻辑/关系表达式)  ?(表达式2)  ;(表达式3)

当程序执行时,先对表达式1求值,若为真,整个结果为表达式2,若为假,则整个结果为表达式3。

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值