逻辑与:两者都为真则为真,否则为假
逻辑或:两者中有一者为真则为真
在计算机中,0为假,非0为真
逻辑与和逻辑或都只关心运行结果的真假
若结果为真,返回1,结果为假,返回0

可以看到程序运行结果是1,表示a和b都为真

我们要是把其中任何一个数字改为0,那结果就是假了
接下来是或
二者其中一者为真,结果为真,如图

若二者都为假,结果为假,如图

最后来看一道360的笔试题

答案是:

这里我们要注意一下a用的是后置++,而&&需要都为真,由于a是0,为假,后面也就不会再继续计算,因为&&里面已经有一个假就没有再算下去的必要了,就会直接退出运算。退出之后a再+1,其他数字都没变化,而式子中已经有了一个假,所以i就等于0,就有了这样的结果
这里我们把&&换成||会是什么结果呢?

既然是||的话,,就说明只要其中有一个为真结果就为真,所以式子会被计算完
当a是0,继续算,++b=3,这时得出了b为真,所以停止运算,i就是1,式子算完之后最后因为a是后置++,还要给它加上1,就得出了这样的结果
本文探讨了逻辑与(AND)和逻辑或(OR)在编程中的行为,通过实例展示了它们对真假值的判断。重点讲解了在遇到0和非0数值时,如何影响运算结果,并深入剖析了一个360笔试题中的后置自增运算与逻辑运算符的交互。通过对比&&和||,解释了两种不同条件下的计算流程和最终答案。
1376

被折叠的 条评论
为什么被折叠?



