大佬求助
/*请根据以下情况求y的值:(1)当x<1时,y=x
(2)当1≤x<10时,y=2x-1
(3)当x≥10时,y=3x-11*/
/*我用if ....if...else语句为什么结果不对(我知道if...else if...else语句,就想知道这样做为什么不对*/
#include<stdio.h>
int main()
{
int x,y;
scanf("%d",&x);
if(x<1)
{
y=x;
printf("y=%d",x);
}
if(1<=x<10)
{
y=(2*x)-1;
printf("y=%d",y);
}
else
{
y=(3*x)-1;
printf("y=%d\n",y);
}
} 本帖最后由 jackz007 于 2020-11-9 21:17 编辑
这种写法错误
if(1<=x<10)
得改成这样:
if(x >= 1 && x < 10)
修改后的完整代码:
#include <stdio.h>
int main(void)
{
int x , y ;
scanf("%d" , & x) ;
if(x < 1) y = x ;
else if(x >= 1 && x < 10) y = 2 * x - 1 ;
else y = 3 * x - 11 ;
printf("y = %d\n" , y) ;
} 谢谢
页:
[1]