C语言 if(x==0) if (x=0) 有什么不同

2025-04-08 23:04:26
推荐回答(4个)
回答1:

首先弄清楚==和=的区别。==是判断是否等于,if(x==0)就是说如果x等于0,;=是赋值,if(x=0),先把0赋值给x,那么此时就相当于if(0),0为假,1为真。没了

回答2:

首先,两个语法上都是对的。

if()里面可以放判断语句,也可以放陈述句。

如果你知道x==0,x=0是陈述句,那么就只说陈述句的区别,看例子最直观。

if(x=0) 相当于x = 0和if(x)两个语句,x会被赋值为0——>if(x)就变成了if(0);

小伙伴就会推测if(x=1)是不是就是if(1)——你的猜测是对的。

同样if(x=1)相当于x = 1和if(x)——>if(x)变成if(1);

推荐一个在线代码运行工具:网页链接

回答3:

if(x==0)是条件语句,即x是否等于0;if(x=0)确切的说是个错误语句,因为x=0是一个赋值语句,即把0赋给x,而if语句这里需要一个条件语句

回答4:

没法比较,“=”是赋值,“!=”是不等于,“==”这个是等于的判断。
问题中前边是x除以7的余数赋值成0,不能这样写,没有意义,会报错吧。if后面的“()”里应该是个条件啊,判断啊之类的。
应该是问的if(x%7==0)和if(x%7!=0)的区别吧。前边是当x除以7的余数是0的时候(x是7的整倍数),条件成立,执行if后面{}里的语句;后面的是当x除以7的余数不为0的时候(x不是7的整倍数),条件成立,执行if后面{}里的语句;