第五章选择结构程序设计 ■5.1关系运算符和关系表达式 ■5.2逻辑运算符和逻辑表达式 5.3if语句 5.4 switch语句 5.5程序举例 1
第五章 选择结构程序设计 ◼ 5.1 关系运算符和关系表达式 ◼ 5.2 逻辑运算符和逻辑表达式 ◼ 5.3 if语句 ◼ 5.4 switch语句 ◼ 5.5 程序举例
5.1关系运算符和关系表达式 、关系运算符> 1.优先级:低于纯算术类,高于赋值类 2.结合性:左结合性 注意:(1)字符数据按其ASCⅢ码值进行比较 (2)应避免两个实数作==或!=的比较 二、关系表达式:用关系运算符连接起来的式子 关系表达式的值:只有2个,真以1表示,假以0表示 注意:(3)表达式5>2>7>8是允许的,它相当于(5>2)>7)>8 (4)可以将关系表达式看成是一种整型表达式
5.1 关系运算符和关系表达式 注意 : (1) 字符数据按其ASCII码值进行比较 (2) 应避免两个实数作 = = 或 != 的比较 一、关系运算符 > >= < <= == != 1. 优先级 : 低于纯算术类, 高于赋值类 2. 结合性 : 左结合性 二、关系表达式: 用关系运算符连接起来的式子 关系表达式的值: 只有2个, 真以 1 表示 , 假以 0 表示 注意: (3) 表达式 5>2>7>8 是允许的 , 它相当于 ((5>2)>7)>8 (4) 可以将关系表达式看成是一种整型表达式
关系表达式:<表达式><关系运算符><表达式> 注意:关系表达式的值应是逻辑值,在C中无逻辑 型数据 若关系表达式成立,其值为1;在C中非零的值均 表示逻辑真 若关系表达式不成立,其值为零;零表示逻辑假
关系表达式: <表达式> <关系运算符> <表达式> 注意: 关系表达式的值应是逻辑值, 在C中无逻辑 型数据。 若关系表达式成立,其值为1;在C中非零的值均 表示逻 辑真 若关系表达式不成立, 其值为零;零表示逻辑假
已知: char c;inti,j,k; double x,y; c=w,i=1,j=2,k=-7,x=7e+033,y=0.001 表达式 等价表达式 表达式值 a’+1<c (a”+1)<c 3<i<5 3<j)<5 1’-“0’==1 (“103)==1 1’==0+1 1’==(“0+1) X<x+y X<(x+y) i+k<=2 (i+j)+k)<=(2*j) (i≤j==(x<y) K< i==(k<y) i=k<y i=(k<y) i=1
已知: char c ; int i, j, k; double x,y; c = ‘w’, i = 1, j = 2, k = -7, x = 7e+033, y = 0.001 ‘a’+1< c (‘a’+1)< c 1 3<j<5 (3<j)<5 1 ‘1’-‘0’= =1 (‘1’-‘0’)= =1 1 ‘1’= =‘0’+1 ‘1’= =(‘0’+1) 1 x<x+y x<(x+y) 1 i+j+k < =2*j ((i+j)+k)< =(2*j) 1 i<j= =x<y (i<j)= =(x<y) 0 i=j= =k<y i=(j= =(k<y) ) i= 0 表达式 等价表达式 表达式值 i=k<y i=(k<y) i= 1
5.2逻辑运算符和逻辑表达式 逻辑运算符&&‖!(与或非) 3个运算符的优先级由高到低为!→&&→‖ !的优先级高于关系运算,&&和‖的优先级低于关系运算 !是右结合性,&&和‖是左结合性 逻辑表达式 1.逻辑表达式的值应该是“逻辑真”或“逻辑假” 逻辑运算的结果以数值1代表“真”,以数值0代表“假” 进行判断时,非零值代表“真”,零值代表“假” 例:表示x∈[-1,1区间应写为:x>=-1&&x<=1
5.2 逻辑运算符和逻辑表达式 一、 逻辑运算符 && || ! (与 或 非) • 3个运算符的优先级由高到低为! → && → || • ! 的优先级高于关系运算, &&和 || 的优先级低于关系运算 • ! 是右结合性, && 和 || 是左结合性 二、逻辑表达式 1.逻辑表达式的值应该是“逻辑真”或“逻辑假” , 逻辑运算的结果以数值1代表“真”, 以数值0代表“假”; 进行判断时, 非零值代表“真”, 零值代表“假” 例: 表示 x ∈[-1,1]区间 应写为: x>=-1 && x<=1