一个 c语言问题2!!!!

来源:百度知道 编辑:UC知道 时间:2024/05/26 03:05:53
当x=-1234,y=-1,x=0,y=0,x=256,y=1

我的程序,请修改;
#include<stdio.h>
int main(void)
{
int x,y;
printf("please printf x=");
scanf("%d",&x);
if(x=-1234)
{
y=-1;
printf("y=%d",y);
}
else if(x=0)
{
y=0;
printf("y=%d",y);
}
else if(x=256)
{
y=1;
printf("y=%d",y);
}
}
请用多种方法解答

善良小明:

if(x=-1234) 你的所有 IF 语句都错了

应该是 if(x==-1234)

这个错误非常容易犯

建议你以后 写代码 碰到 if 时 把值些前边

如:if(-1234==x) 这样写时就不容易出错了

养成良好的代码风格很重要的 ^_^

是啊,这样的错误很难发现的,if(x=-1234)相当于为x赋值-1234,此式恒为真,故此时的if语句其实不起任何作用,程序会顺序的执行你的每条语句

就是,以后写程序的时候遇到判断语句的时候。
最好把常量写到前面。如:
if(45==i)
如此的话。如果你只写一个等号的话就会报错了。可以及时发现错误。