0<=x<10是不会得到你想要的结果的,0<=x<10的结果肯定是1
先判断0<=x,无论x是否大于0,结果只能是0或1,然后0或1是否小于10,那必然是啊,结果就肯定是1
c语言里没有连续的比较表达,要用&&(逻辑与)连接每个部分
这个warning是提醒你这样写可能会出现预期之外的结果
代码语法不对,0<= X <10 是我们通常的数学写法,代码编译语法不一样,要分开用逻辑写,X>=0 && X<10 ;或者0<= X && X<10
……
0<= X <10 程序执行时,
编译器从左向右 0<= X,满足的话结果是true(也就是1),然后1<10 ,结果是1;不满足的话结果是false(也就是0),然后0<10 ,结果也是1
从右向左执行 ,同理
也就是说不管X是任何数都会得到true的结果,当你输入的数在[0,10)范围以外,就会出现错误结果了
你X<=Y<=Z这样比较没有意义,因为前面的0<=x无论结果是0还是1都比10小,所以结果永远为真