永发信息网

C++中if语句和逻辑或的用法

答案:3  悬赏:60  手机版
解决时间 2021-04-01 06:33
  • 提问者网友:萌卜娃娃
  • 2021-03-31 17:35
C++中if语句和逻辑或的用法
最佳答案
  • 五星知识达人网友:执傲
  • 2021-03-31 18:01
a==1||3||8 先计算a==1其值不是1 就是0 再计算 0||3 或 1||3 无论是那一种结果都是1 所以后面的表达式不用计算直接取值为1 因为逻辑或只要有一个为真表达式的值就为真(这种算法在C\C++中被叫做优先短路法)
你可以改成这样 if((a==1)||(a==3)||(a==8))
全部回答
  • 1楼网友:雪起风沙痕
  • 2021-03-31 20:14
恩,是的,这样用不论输入何值都会被认为是true
程序是先判断a == 1 --此时无论真假
上面的结果|| 3 ||8 最后都是true;
因为 无论是false或者是true 和true或运算,结果都是true
  • 2楼网友:西岸风
  • 2021-03-31 19:26
能这样用,这样用编译器也不会报错,但是如你所说,这么写么有意义,条件结果始终都为true。
逻辑||或者逻辑&&一般使用的都是变量,真正写代码,是没有人会写常量的,
只有写为变量,根据变量不同的值,才既可能有true,又可能有false,这样才达到了逻辑||或者逻辑&&使用的目的。
一般像如下方法使用:
int a, b, c;
scanf("%d%d%d", &a, &b, &c);
if(a||b||c) 或者 if(a||b&&cc) 或者if(a&&||c) 或者if(a&&b&&c)等等,
千变万化,根据自己的需要,来决定是用||,还是&&。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯