3.1.4逻辑运算 (ch>='a'&&ch<='z')l(ch>='A'&&ch<='Z) ch>='0'&&ch<='9' x<=1关系运算 -1<=X<=1 0 -1 1 X X>=-1并且X<=1 X>=-1&&X<=1
3.1.4 逻辑运算 (ch >= 'a' && ch <= 'z' ) || ( ch >= 'A' && ch <= 'Z') ch >= '0' && ch <= '9' x<=1 关系运算 -1 <= x <= 1 0 -1 1 x x >= -1 并且 x <= 1 x >= -1 && x <= 1
三种逻辑运算符的含义 逻辑与&& 逻辑或川 逻辑非! (X>1)&&(y>1) (X>1)Iy>1) (X>1) x>1)即x<=1
逻辑与 && 逻辑或 || 逻辑非 ! (x>1)&&(y>1) (x>1)||(y>1) (x>1) !(x>1) 即 x<=1 三种逻辑运算符的含义
逻辑运算符和逻辑表达式 逻辑运算符 口种类: && (逻辑与)Ⅱ(逻辑或) !(逻辑非) 口表达式: a&&b 若a,b都为真,结果为1(真) 口逻辑运算aIb 若a,b之一为真,结果为1(真) ■ 逻辑表达式: a 若a为真,结果为0(假) 接起来 口C语言中, 运算量: 0表示“假”, 1&&0 结果0 非0表示“真” 1|10 结果1 运算结果: 0表示“假”, 6&&0 结果0 1表示“真” 6110 结果1 逻辑运算符两侧的运算对象可以 是1和0,也可以是非0或0 的整数,还可是任何类型的数据 如字符、实数等。系统判定标准 0为假;非0为真
◼ 逻辑运算符 种类: &&(逻辑与) ||(逻辑或) !(逻辑非) 表达式: (a>b) && (b>c) 逻辑运算真值表 ◼ 逻辑表达式:用逻辑运算符将关系表达式或逻辑量连接起来 C语言中, 运算量: 0表示“假” , 非0表示“真” 运算结果: 0表示“假” , 1表示“真” 逻辑运算符和逻辑表达式 1&&0 结果 0 1||0 结果1 6&&0 结果 0 6||0 结果1 逻辑运算符两侧的运算对象可以 是1 和0 ,也可以是非0或0 的整数,还可是任何类型的数据 如字符、实数等。系统判定标准: 0为假;非0为真。 a&&b 若a,b都为真,结果为1(真) a||b 若a,b之一为真,结果为1(真) ! a 若a为真,结果为0(假)
●优先级: ●结合方向: 非运算! 高 !(2) !从右向左 算术运算+ 高 关系运算 >== &&(11) &&从左向右 逻辑运算&&Ⅱ 赋值运算 低 1(12) 低 ‖从左向右 例 a<=x&&x<=b /(a<=x)&&(x<=b) a>b&&x>y /a>b)&&(x>y) a--bx--y /(a==b)l(x==y) !aa>b /(a)川a>b)
例 a<=x && x<=b a>b&&x>y a==b||x==y !a||a>b //(a<=x)&&(x<=b) //(a>b)&&(x>y) //(a==b)||(x==y) //(!a)||(a>b) ! (2) && (11) || (12) 高 低 ! 从右向左 && 从左向右 || 从左向右 ⚫优先级: ⚫结合方向: 非运算 ! 算术运算 + - 关系运算 > == 逻辑运算&& || 赋值运算 = 高 低
●优先级: !(2) !从右向左 高 ●结合方向: &&(11) &&从左向右 1(12) 低 ‖从左向右 例 a=4;b=5;求表达式的值? (1) !a /值为0 (2) a&&b /值为1 (3) alb /值为1 4) !ab /值为1 (5) 4&&02 /值为1 ■ (6) 5>3&&28<4-0/ (5>3)&&2(8<(4-(0))值为1 (7) ‘c'&&d /值为1
◼ 例 a=4; b=5 ; 求表达式的值? ◼ (1) !a ◼ (2) a&&b ◼ (3) a||b ◼ (4) !a||b ◼ (5) 4&&0||2 ◼ (6) 5>3&&2||8<4-!0 ◼ (7) ‘c’&&‘d’ //值为1 //值为0 //值为1 //值为1 //值为1 //值为1 //(5>3)&&2||(8<(4-(!0))) 值为1 ! (2) && (11) || (12) 高 低 ! 从右向左 && 从左向右 || 从左向右 ⚫优先级: ⚫结合方向: