刚才翻C#教程 才看到逻辑运算真值表 a=fasle b=false a&&b=true
看到这我就很郁闷了上网查查看 有说这是错的还有一个说的挺在理的----------“这个是你理解错了。a确实是false,b也是false,但是 a&&b意思是同时满足 a 和 b的条件。例如if(a&&b),其中a为false,b为false,那么 a&&b 意思就是说你之前赋值或者取值的a,b同时满足了,就会执行。a是false,b是false,a&&b就执行了。最好是多到程序里实验。实践是验证真理的唯一标准”.
然后我就去试试了
然后就输出了NO
bool a = false; bool b = false;
bool c = a && b;
if (a && b)
{
Console.WriteLine("YES");
Console.ReadKey();
}
else
{
Console.WriteLine("No");
Console.ReadKey();
}
这可如何是好?
书上绝对是错的。任何一个带有逻辑运算的语言都不可能出现这个结果。
这个事实告诉我们,不信书,只信实
汗,哪有这样理解的。&&必须两边同为真才为真。
是这样就好 这都把我的意识都给颠覆了
a = fasle; b = false; a && b == false /*天荒地老,海枯石烂,一万年不带变*/;
恩 那教材 把我坑了
这什么呀...颠覆我的逻辑吗
看了书上和网上的信息后 我都无法直视我自己了
就是输出NO呀
对呀 我就是输出NO
@.F.: 书上错了吧
这段程序就是应该输出NO
是的 我就是很不理解书上的真值表 写错了?他
书上的误人子弟!a&&b 二边同为true才为true.
要是左边的a为false的话,右边的b就不考虑了,直接返回false