黑马程序员技术交流社区

标题: if语句中的疑问? [打印本页]

作者: 陈培茹    时间: 2013-4-12 16:16
标题: if语句中的疑问?
编写if(60<score<70)出错
出错列表显示:运算符“<”无法应用于“bool”和“int”类型的操作数!是什么意思啊?

作者: 胡志超    时间: 2013-4-12 16:23
改成:if(score>60&&score<70)
作者: 张振    时间: 2013-4-12 16:27
C#中逻辑表达式 不支持连续<< >> <>这样的逻辑比较的 比如楼上说的 用&&进行并列(score>60&&score<70) 以后这种情况 要用 &&和||连接就可以了
作者: 陈培茹    时间: 2013-4-12 16:39
胡志超 发表于 2013-4-12 16:23
改成:if(score>60&&score

是能这样解决,但不懂错误列表那句话是什么意思啦!刚接触c#呵呵
作者: 陈培茹    时间: 2013-4-12 16:41
张振 发表于 2013-4-12 16:27
C#中逻辑表达式 不支持连续> 这样的逻辑比较的 比如楼上说的 用&&进行并列(score>60&&score ...

嗯嗯,又看了苏坤老师的视频已经很清楚啦!谢谢!
作者: 邓建军    时间: 2013-4-12 16:44
60<score<70这数学中可以这样写,但是在C#语言中要分开写,可以写成score>60 && score <70,&&表示并且的意思,也就是说这两个条件都要满足才能为true,只要一个为false,整个表达式的结果就是false
作者: 郑丹丹1990    时间: 2013-4-12 16:44
编写if(60<score<70)
执行步骤:60<score 返回True或False
   bool和int是无法比较的
作者: 陈培茹    时间: 2013-4-12 17:34
邓建军 发表于 2013-4-12 16:44
60

嗯嗯,谢谢啦
作者: 陈培茹    时间: 2013-4-12 17:37
郑丹丹1990 发表于 2013-4-12 16:44
编写if(60

嗯嗯,谢谢啦
作者: zerochen46    时间: 2013-4-12 18:10
你的 表达式都写错了,应该写成if(score>60&&score<70)
作者: 陈培茹    时间: 2013-4-12 18:36
zerochen46 发表于 2013-4-12 18:10
你的 表达式都写错了,应该写成if(score>60&&score

嗯嗯,知道了
作者: 李晶晶    时间: 2013-4-14 09:59
if(60<score<70)这句程序,计算机会先计算"60<score"得出一个bool类型,然后用这个bool类型与70这个int类型进行比大小。。。。所以会出现你那种错误。所以你可以把程序改成:if(60<score && score<70)。。。。。。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2