分段函数,运行结果为什么为空?

遇到的问题:运行结果为空
题目:

img

#include <stdio.h>
int main(){
double x;
scanf("%lf",&x);
if(x=0)
printf("-1");
if(x<0&&x>-5){printf("%lf",x);
}
if(x>0&&x<10){printf("%lf",x+1);
}
return 0;
}


运行结果

img

img

img

#include <stdio.h>
int main(){
double x;
scanf("%lf",&x);
//if(x=0)
if(x==0)
	printf("-1");
if(x<0&&x>-5)
{
	printf("%lf",x);
}
if(x>0&&x<10)
{
	printf("%lf",x+1);
}
return 0;
}

 

if(x=0) ==

第5行 应该是if(x == 0)
如果是赋值运算符=,x就被重新赋值为0了,就与你运行的结果相同了