C语言中,a=3,b=4,c=5; a||b+c&&b-c怎么理解?
展开全部
||a || b + c && b - c
= a || ((b + c) && (b - c))
= 3 || ((4 + 5) && (4 - 5))
= 3 || 1
= 1
而逻辑运算的几个操作数都是非0的,可以认为是1
因此最终结果为逻辑1
扩展资料
C语言的运算符主要用于构成表达式,同一个符号在不同的表达式中,其作用并不一致。下面按计算的优先顺序,分别说明不同作用的表达式。需要特别指出,在C语言标准中,并没有结合性的说法。
相同优先级运算符,从左至右依次运算。注意后缀运算优先级高于前缀。因此++i++应解释为++(i++)。
而与或非的运算优先级都不一样,因此a && b || b && c解释为(a && b) || (b && c)
合理使用优先级可以极大简化表达式。
展开全部
a=3,b=4,c=5;
这是一条逻辑表达式,只可能有0和1两种取值,非零的时候取1,所以1楼的是不对的。又出现了2类运算符,加减和逻辑运算符,此处+-优先级最高,其次是&&,最低是||,注意同是逻辑运算符优先级不一样。还须注意,按照优先级加括号:
a || b + c && b - c
=a || ((b + c) && (b - c))
=3 || ((4 + 5) && (4 - 5))
=3 || 1
=1
每对一个逻辑算符运算,得到的值都是非0即1,整个逻辑表达式的计算相当于将其分解成几个子式进行计算。
以后有问题欢迎HI我
这是一条逻辑表达式,只可能有0和1两种取值,非零的时候取1,所以1楼的是不对的。又出现了2类运算符,加减和逻辑运算符,此处+-优先级最高,其次是&&,最低是||,注意同是逻辑运算符优先级不一样。还须注意,按照优先级加括号:
a || b + c && b - c
=a || ((b + c) && (b - c))
=3 || ((4 + 5) && (4 - 5))
=3 || 1
=1
每对一个逻辑算符运算,得到的值都是非0即1,整个逻辑表达式的计算相当于将其分解成几个子式进行计算。
以后有问题欢迎HI我
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2011-02-01
展开全部
a || b + c && b - c
= a || ((b + c) && (b - c))
= 3 || ((4 + 5) && (4 - 5))
= 3 || 1
= 1
按照优先级,先加减运算,后逻辑运算
而逻辑运算的几个操作数都是非0的,可以认为是1
因此最终结果为逻辑1
= a || ((b + c) && (b - c))
= 3 || ((4 + 5) && (4 - 5))
= 3 || 1
= 1
按照优先级,先加减运算,后逻辑运算
而逻辑运算的几个操作数都是非0的,可以认为是1
因此最终结果为逻辑1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2022-11-08
展开全部
a||b+c&&b-c
=a||(b+c)&&(b-c)
=3||9&&-1
=3&&-1
=-1
||,即or,如or前变量布尔值为true,返回该变量,否则返回or之后的变量,
即a||b 等价于 a or b 等价于
if a return a else return b end
&&,即and,如and前变量布尔值为true,则返回and之后的变量,否则返回该变量,
即a&&b 等价于 a and b 等价于
if a return b else return a end
C++的话0,false,nil的布尔值返回false,其余返回true。
故本题答案如上。
=a||(b+c)&&(b-c)
=3||9&&-1
=3&&-1
=-1
||,即or,如or前变量布尔值为true,返回该变量,否则返回or之后的变量,
即a||b 等价于 a or b 等价于
if a return a else return b end
&&,即and,如and前变量布尔值为true,则返回and之后的变量,否则返回该变量,
即a&&b 等价于 a and b 等价于
if a return b else return a end
C++的话0,false,nil的布尔值返回false,其余返回true。
故本题答案如上。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
(b - c))=3 || ((4 + 5) && (4 - 5))=3 || 1=1每对一个逻辑算符运算,得到的值都是非0即1,整个逻辑表达式的计算相当于将其分解成几个子式进行计算。以后有问题欢迎HI我
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询