题目:实现
-1 (x>0)
y={0 (x=0)
1 (x<0)
#include <stdio.h>
void main()
{
int x,y;
scanf(“%d”,&x);
if(x>=0)
{
if(x>0) y=1;
esle y=0;
}
else y=-1;
printf(“x=%d,y=%d\n”,x,y);
}
上面是出错的
下面是原程序(运行没有问题)
#include <stdio.h>
void main()
{
int x,y;
scanf(“%d”,&x);
if(x<0)
y=-1;
else
if(x==0) y=0;
else y=1;
printf(“x=%d,y=%d\n”,x,y);
}
请问第一段程序错在哪里?
>> 本文固定链接: http://www.vcgood.com/archives/2118
[code]
if(x>0) y=1;
esle y=0;
[/code]
==>>
[code]
if(x>0) y=1;
else y=0;
[/code]
另外题目是:
实现
-1 (x>0)
y={0 (x=0)
1 (x<0)
x>0的时候y=-1,x<0的时候y=1,x=0的时候y=0。
代码检查一下!
我也不清楚,帮你顶一下,=高手
你要实现的和你程序表达的意思是相反的(在x>0和x<0情况下)
如xstar所说`~
if(x>0) y=1;
esle y=0;
}
else y=-1;
问题就是出现在这。。。。你这没有说明是当x=0时,y=0。。还是当x<0时,y=0
你这就是少了这个条件。。。只要在esle if(x==0) y=0。就可以拉
-1 (x>0)
y={0 (x=0)
1 (x<0)
检查一下代码,也许是把意思弄反了?
1(x>0)
y={0 (x=0)
-1(x<0)
未定义'0',0>1 ?
那位大哥对指针熟,小弟想请教一下~~