鱼C论坛

 找回密码
 立即注册
查看: 892|回复: 10

[已解决]这个表达式为什么是这样子算的呀有没有大佬解释一下

[复制链接]
发表于 2022-1-8 23:56:16 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
E. a = b - c || a % b && c / d
写成:a = ((b – c)4 || ((a % b)1 && (c / d)2)3)
求值:a = ((b - c) || (1 && 0)) == a = (3 - 4) || 0 == a = (-1 || 0) == a = 1

逻辑运算应该是从左到右算的吧,右结合的,为什么要先算后面的逻辑与而不是先算前面的逻辑或呢
最佳答案
2022-1-10 21:33:29
Mythic 发表于 2022-1-10 10:15
我就是不太懂,为什么要这个顺序,加减乘除不影响这个逻辑的运算吧


a = b - c || a % b && c / d

优先级排序:
运算符
优先级
%
3
/
3
-
4
&&
11
||
12

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-1-9 09:47:09 | 显示全部楼层
b,c都没指定值吗?
a = ((b – c)4 || ((a % b)1 && (c / d)2)3)
是这个吗 a = ((b – c)*4 || ((a % b)*1 && (c / d)*2)*3)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-1-9 11:10:04 | 显示全部楼层
可以去看看这一篇
运算符的优先级和结合性
https://fishc.com.cn/thread-67664-1-1.html
(出处: 鱼C论坛)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-1-10 10:11:31 | 显示全部楼层
李京 发表于 2022-1-9 11:10
可以去看看这一篇
运算符的优先级和结合性
https://fishc.com.cn/thread-67664-1-1.html

这个我知道
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-1-10 10:13:26 | 显示全部楼层
大马强 发表于 2022-1-9 09:47
b,c都没指定值吗?
a = ((b – c)4 || ((a % b)1 && (c / d)2)3)
是这个吗 a = ((b – c)*4 || ((a % b)* ...

a  b  c  d 的值分别是1、2、3、4,上面的数字是运算顺序
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-1-10 10:15:22 | 显示全部楼层

我就是不太懂,为什么要这个顺序,加减乘除不影响这个逻辑的运算吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-1-10 12:57:06 | 显示全部楼层
Mythic 发表于 2022-1-10 10:15
我就是不太懂,为什么要这个顺序,加减乘除不影响这个逻辑的运算吧

搞不清楚优先级就活用括号
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-1-10 21:33:29 | 显示全部楼层    本楼为最佳答案   
Mythic 发表于 2022-1-10 10:15
我就是不太懂,为什么要这个顺序,加减乘除不影响这个逻辑的运算吧


a = b - c || a % b && c / d

优先级排序:
运算符
优先级
%
3
/
3
-
4
&&
11
||
12

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-1-10 21:39:51 | 显示全部楼层
jhq999 发表于 2022-1-10 12:57
搞不清楚优先级就活用括号

这个咋说呀大佬  怎么括法
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-1-10 21:41:11 | 显示全部楼层
傻眼貓咪 发表于 2022-1-10 21:33
a = b - c || a % b && c / d

优先级排序:

好的谢谢你  懂啦
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-1-10 23:30:39 | 显示全部楼层
本帖最后由 jhq999 于 2022-1-10 23:35 编辑
Mythic 发表于 2022-1-10 21:39
这个咋说呀大佬  怎么括法


借用楼上
a = b - c || a % b && c / d;
a=(b-c)||((a%b)&&(c/d));//如果想先a % b && c / d
a = ((b - c )|| (a % b)) &&( c / d);//如果想先 b - c || a % b
a =(((b - c )|| (a % b)) && c)/d;
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-18 18:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表