逻辑运算问题1||0&&0 怎么运算的 为什么是1?是从右往左?还是 &&级别高于||?# include int ma

问题描述:

逻辑运算问题
1||0&&0 怎么运算的 为什么是1?是从右往左?还是 &&级别高于||?
# include
int main()
{
printf("%d\n",1||0&&0);
return 0;
}
1
Press any key to continue
1个回答 分类:综合 2014-12-12

问题解答:

我来补答
&&优先级高于||(优先级不会决定运算顺序)
||符号的执行方式是,从左向右执行,当可确定表达式的值时就不在计算右侧的值
1||0&&0等价于1||(0&&0)
左侧1已经可以确定整个表达式的值为1,不在计算0&&0的值
再问: 还是不太懂。。为什么不能 =1&&0 从左往右呢?这个式子能确定表达式的值吗?我看不出来。。麻烦再解释解释 谢谢
再答: ||规定先计算左面的值,如果左面的值可以确定表达式的值,就不在计算右面的值 1||0=1 1||1=1 0||1=1 0||0=0 由上面运算法则可知,只要表达式中有1个1,整个表达式就是1 现在左面是1,就是不管右面是什么,整个表达式就是1,所以右面就不用算
 
 
展开全文阅读
剩余:2000
上一页:
下一页:判断题。