if-else if-else语句问题

时间:2018-02-21 05:45:03

标签: c

如果我写这样的代码。它会显然打印1。

012

然后我改变第一个语句和第二个语句的顺序,就像这样。

int a = 0;
if (a == 0)
    print("1");
else if (0 < a <= 10)
    print("2");
else if (10 < a <= 100)          
    print("3");
else
    print("4");

编译后,仍然打印1.为什么不打印2?

1 个答案:

答案 0 :(得分:1)

我不确定是什么语言,但是许多语言不支持链式运算符,所以你可以按照以下方式细分比较:

 if (0 < a) and (a <= 10); 

Language support for chained comparison operators (x < y < z)