/*1.逻辑运算符的优先次序。
2.逻辑表达式的求解方法。*/
#include<iostream>
usingnamespace std;
int main()
{
int a=4,b=-2,c=0,x;
if(a) cout<<"a="<<a<<",!a="<<!a<<endl;//一般非零值都是真,例如c=0,则c为假。输出else.
if(b) cout<<"b="<<b<<",!b="<<!b<<endl;
if(c) cout<<"Never gets printed"<<endl;
else cout<<"c="<<c<<",!c="<<!c<<endl;
if(a>b||b>c&&a==b)cout<<"Answer is TRUE\n";
else cout<<"Answer is FALSE\n";
x=a>b||b>c&&a==b;
cout<<"x="<<x<<",!x="<<!x<<endl;
return0;
}
/*逻辑运算符,关系运算符和算术运算符的优先次序以及他们的结合性。
运算符 名称 结合性 优先级
() 圆括号 从左向右 1(最高级)
++,-- 后置增量运算符 从左向右 2
++,-- 前置增量运算符 从右向左 3
! 逻辑非 从左向右 3
+,- 正号、负号 从左向右 3
*,/,% 乘号、除号 从左向右 4
+,- 加号、减号 从左向右 5
<=,>=,>,< 关系运算符 从左向右 6
==,!= 关系运算符 从左向右 7
&& 逻辑与 从左向右 8
|| 逻辑或 从左向右 9
+=,-=,*=,/=,%= 复合的赋值运算符从右向左 10
= 赋值运算符 从右向左 10(最低)*/