写出下面逻辑表达式的值。设a=7,b=2,c=4.

(1) a%b<c||b==c+3
(2) a&&c-a||b+b
(3) !(a>b)&&!c&&a=4
(4) !(a>b)&&!c&&a=4
(5) !(a-b)+c-2&&b+c/3
麻烦求一下``如果方便的话顺便大概说一下怎么运算的..谢谢

...估计你是想问运算优先级问题吧,姑且给你标出来了,但是你这有几个表达式有问题的,=不是逻辑运算符,是赋值运算符,&&也不能用于数值运算
(1) (((a%b)<c)||b)==(c+3)
结果为true
(2) (a&&(c-a))||(b+b)
(3) (!((a>b)&&(!c)&&a))=4
(4) (!(a>b)&&(!c)&&a)=4
(5) (((!(a-b))+c)-2)&&(b+(c/3))
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-01-16
运算符的种类有:
逻辑运算符:非(!) 或(||) 且(&&)
算术运算符:+ - * / %
关系运算符:< > <= >= != ==
赋值运算符:=
以及其他 ...

运算符优先级:算术运算符 > 关系运算符 > 逻辑运算符 > 赋值运算符
其中单目运算符 非(!) > 算术运算符,且(&&) > 或(||)
你这里我只解释第一个和第五个,其他的自己推算。
(1):
先计算a%b、c+3 分别为1、7
然后计算a%b<c、b==c+3 分别为真和假
最后计算a%b<c || b==c+3 即 (真)||(假) 结果为真

(5):
先计算!(a-b) 由于a-b得5为真,!(a-b)为假,假值按类型转换int得0
然后计算!(a-b)+c-2 得2。计算b+c/3得3
最后计算!(a-b)+c-2 && b+c/3 即 2 && 3 结果为真

答案:(1):真 (2):真 (3):假 (4):假 (5):真

还有你所挑选的满意答案回答不正确,你这里的表达式没有问题,全为bool表达式。
另外他对第一个的解释也不正确,应该是先计算b==c+3,顺序是这样的:(a%b<c) || (b==c+3)