黑马程序员技术交流社区

标题: c语言中关于条件判断的疑惑? [打印本页]

作者: liu01230    时间: 2015-5-10 14:03
标题: c语言中关于条件判断的疑惑?

为什么输出的是:第三个判断

作者: wzboy    时间: 2015-5-10 14:11
本帖最后由 wzboy 于 2015-5-10 14:14 编辑

else if ( 20 > a > 9)  不能这样写应该写成 else if ( 20 > a  &&  a > 9 )
后面的都一样
如果写成 else if (20 > a >9)
因为 a = 10;
其中 20 > a 成立 结果为 1  然后 1>9 不成立 所以该else if()判断条件不成立。

作者: liu01230    时间: 2015-5-10 14:18
wzboy 发表于 2015-5-10 14:11
else if ( 20 > a > 9)  不能这样写应该写成 else if ( 20 > a  &&  a > 9 )
后面的都一样
如果写成 else i ...

噢。原来是这个原因。谢谢了
作者: 王鹏飞1    时间: 2015-5-10 20:13
不能这样写,从左到右判断的
作者: welfarezhang    时间: 2015-5-11 09:32
优先级相同时,会从左往右依次运算
作者: roblonely    时间: 2015-5-11 09:52
12>a>0这句返回1,所以打印第三个判断




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