鱼C论坛

 找回密码
 立即注册
查看: 1149|回复: 11

[已解决]S1E10关系算符和逻辑算符课后题求助。(运算符的优先级和结合性问题)

[复制链接]
发表于 2020-3-11 18:13:34 | 显示全部楼层 |阅读模式

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

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

x
萌新有1个关于运算符的优先级和结合性的问题请教。(题目是带你学c带你飞S1E10里的)

请用小括号和数字序号体现表达式中运算符的优先顺序,并口算出表达式的值(下边假设变量 a、b、c、d 的值分别是 1、2、3、4)
C. 'a' + 'b' <= 'c' || a / b + d % c
写成:(('a' + 'b')1 <= 'c')2 || ((a / b)3 + (d % c)4)5
求值:((97 + 98) <= 99) || ((1 / 2) + (4 % 3)) == (195 <= 99) || (0 + 1) == 1
(这是小甲鱼给的答案)
但/ %的优先级不是大于+吗 为什么要从左到右先算加呢?

先谢谢各位大大啦~
最佳答案
2020-3-12 16:06:40
先是a/b = 1/2 = 0  然后再d%c = 4%3 = 1  最后 0+1 = 1,因为||的运算等级最低,所以最后再相或,就是这样啊
2I`26)_N~E`N]NM687HP@{F.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-3-11 18:14:14 | 显示全部楼层
下面图是不小心放上去的,请大大们忽略~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-11 18:23:38 | 显示全部楼层
先算 / %,再算加减。a / b 和 d % c 被小括号包围起来了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-3-11 18:26:00 | 显示全部楼层
zltzlt 发表于 2020-3-11 18:23
先算 / %,再算加减。a / b 和 d % c 被小括号包围起来了。

后面小括号是答案给的计算过程,表示计算的顺序~那就是说是答案错了吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-11 20:11:07 | 显示全部楼层
是先算的/和%后算的+啊???
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-12 09:18:38 | 显示全部楼层
运算符的优先级和结合性不是有一张表吗?你们有没有找到啊?我现在也在找
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-12 10:47:21 | 显示全部楼层
E:\办公\QQ文件\2560494041\FileRecv\MobileFile\IMG_20200220_155050.jpg
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-12 10:52:01 | 显示全部楼层
对牛弹琴的三高C 发表于 2020-3-12 09:18
运算符的优先级和结合性不是有一张表吗?你们有没有找到啊?我现在也在找

还没有上传图片的权限
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-12 13:03:39 | 显示全部楼层
先运算的/ %,
C. 'a' + 'b' <= 'c' || a / b + d % c
程序读到a+b<=c||a/b+d%c;
首先程序先读到了a+b<=c;会先计算97+98=195再计算195<=99;
下面才是||,然后a/b+d%c;||的优先级低于+-*/
计算a/b+d%c;
/和%优先级相同,结合性是左到右;
先计算a/b,再算d%c;
写成:(('a' + 'b')1 <= 'c')2 || ((a / b)3 + (d % c)4)5
求值:((97 + 98) <= 99) || ((1 / 2) + (4 % 3)) == (195 <= 99) || (0 + 1) == 1
(这是小甲鱼给的答案)
但/ %的优先级不是大于+吗 为什么要从左到右先算加呢?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-12 13:05:36 | 显示全部楼层
小甲鱼给的答案是正确的,/%优先级大于+- 的前提是他们在一个表格式里面,否则,先读到谁计算谁。
这么简单的问题。你就懵圈了,还怎么进阶成大佬呢。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-12 13:49:29 | 显示全部楼层
剑御玫瑰 发表于 2020-3-12 10:52
还没有上传图片的权限

我已经找到了,谢谢

本来也是想分享出来的,我也没有上传图片的权限
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-3-12 16:06:40 | 显示全部楼层    本楼为最佳答案   
先是a/b = 1/2 = 0  然后再d%c = 4%3 = 1  最后 0+1 = 1,因为||的运算等级最低,所以最后再相或,就是这样啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-15 20:58

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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