一.C语言中的逻辑运算符
1.C语言提供了3中逻辑运算符 && 与 || 或 !非 2.逻辑运算符中逻辑与逻辑或是双目运算符,逻辑非是单目运算符,唯一运送对象左则。 3. ! && || file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml\wpsFAB.tmp.png 高 低 4.逻辑运算符与赋值运算符,算术运算符,关系运算符之间的优先次序。 ! 算术运算符 关系运算符 && || 赋值运算符 file:///C:\Users\ADMINI~1\AppData\Local\Temp\ksohtml\wpsFAC.tmp.png 高 低
二.逻辑表达式和逻辑表达式的值。
1.由逻辑运算符和逻辑运算对象组成的表达式称为逻辑表达式, 逻辑运算对象可以是C语言中任意合法的表达式。 2.逻辑表达式的结果是 0(假),1(真)
三.逻辑运算的基本规则
1.在逻辑表达式求解中,并不是所有的逻辑运算符都被执行,只是在必须在前一个表达 执行得出结果后,才能确定是否还需要运算,需要则继续,不需要则不运算。 如:a&&b&&c 首先运算 a&&b 如果运算后的结果是 0(假),结果必定是假 && 运算,只有前后的表达式都成立,都为真时,结果才为真,前 或 后 任意一方为假,结果就必定为假,所以后面的 && 就不必运算了。 例题:求 m 和 n 最后的值? a=1,b=2,c=3,d=4; m 和 n 的值都为 1 。 表达式: (m=a>b)&&(n=c>d) 首先运算关系运算符: a>b a=1 b=2 显然a不大于b ,结果为:0(假) 然后将结果赋值给 m 之后, 表达式变成了:0&&(n=c>d) 很明显 && 左则已经为假,假与任何运算都为假,所以运算停止了。 最终结果为: m=0 因为 && 右则没有运算没有改变 n 的初值 1 所以 n 的值还是等于 1 。
|