一个诡异的问题!
程序要求当x=0时y=0,x<1时y=-1,x>0时y=1.下边是这个题的两个程序,为什么第一个能成功,第二个当输入x<0的数时候结果是y=1?程序1(能成功):
void main()
{
float x,y;
printf("input x:");
scanf("%d",&x);
y=0;
if(x>=0)
{
if(x>0)
y=1;
}
else
y=-1;
printf("y is %4.0f.\n",y);
}
程序2
void main()
{
float x,y;
printf("input x:");
scanf("%d",&x);
y=0;
if(x<=0)
{
if(x<0)
y=-1;
}
else
y=1;
printf("y is %4.0f.\n",y);
}