一个计算代码,输出结果与实际不符合

#include<stdio.h>

#include<math.h>

int main()

{

float x,y;

scanf_s("%f" ,& x);

if (x < 1)

{

    y = x;

}

else if(1 <= x < 10)

{

    y = x * 2 - 1;

}

else { y = x * 3 - 11; }

printf("%5.2f", y);

return 0;

}
为什么我输入99输出是197啊

1 <= x < 10
写完整点吧

1 <= x && x <10

原因的话,可以看下表达式计算,从左到右计算 

就像别人回答的,99≥1结果是true,转成int是1,1<10,就进到了这个里边。