鱼C论坛

 找回密码
 立即注册
查看: 1601|回复: 6

请教一下<=变双目运算符的问题

[复制链接]
发表于 2016-1-17 23:15:34 | 显示全部楼层 |阅读模式

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

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

x
今天在作题的时候发现程序运行结果在特定数值下出错,发现是首行判断语句出错。
我写的是if(1<=n<=100),
改为if(1<=n&&n<=100)后成功运行。
百度之后有人说if(1<=n<=100)中<=变成了双目运算符,
求解为什么会出现这种情况,
如果我只有一个判断比如if(1<=n)会不会变成双目运算符。
教材上对这节没怎么讲,所以特来向各位大神求教。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-1-18 07:07:13 | 显示全部楼层
需呀两个变量的是双目运算符,所以<=是双目运算符一点问题也没有即使是你if(1<=n&&n<=100)这样写,<=也是双目运算符没区别,至于你写的那个东西为啥不对,<=的结合性是从左到右,所以会先判断1<=n;这个条件,无论你输入什么,结果无非就两种真(1)或者假(0)再判断就是1或者0是不是小于等于100.很显然这是恒为真的,所以你的if根本没有意义,等同于没有= =
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-1-18 14:05:58 | 显示全部楼层
阴影中的曙光 发表于 2016-1-18 07:07
需呀两个变量的是双目运算符,所以

灰常感谢斑竹解答
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-1-18 15:55:10 | 显示全部楼层
哥们,看运算符的优先级别啊!
1<=n<=100;
只有一种运算符,所以从左到右,可以这样理解(1<=n)<=100
1<=n&&n<=100;
这个两种运算符,<=优先级别大与&&,所以可以这样理解:(1<=n)&&(n<=100)
注:括号的优先级别很高的哦!
么么哒
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-1-18 17:36:23 | 显示全部楼层
ligen超越 发表于 2016-1-18 15:55
哥们,看运算符的优先级别啊!
1

非常感谢,一定会注意这些细节
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-1-25 16:35:08 | 显示全部楼层
ligen超越 发表于 2016-1-18 15:55
哥们,看运算符的优先级别啊!
1

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

使用道具 举报

发表于 2016-1-25 16:35:44 | 显示全部楼层
ligen超越 发表于 2016-1-18 15:55
哥们,看运算符的优先级别啊!
1

求教怎么学的快?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-26 18:44

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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