在c语言里,if (x)等价于if (x!=0)、if (!x)等价于if (x==0)吗? C语言 !(——x) 等价于什么

作者&投稿:敖饰 (若有异议请与网页底部的电邮联系)

在c语言里,if (x)等价于if (x!=0)、if (!x)等价于if (x==0)。

判断的时候,x非零则为真,也就是x!=0就是x为真,x等于0,就是x为假。

if中需要的是个逻辑运算,真、假。如果是真运行if中包含的代码,否则运行程序,在c语言中0为“假”,非0为“真”。

扩展资料

当前阶段,在编程领域中,C语言的运用非常之多,它兼顾了高级语言和汇编语言的优点,相较于其它编程语言具有较大优势。

计算机系统设计以及应用程序编写是C语言应用的两大领域。同时,C语言的普适较强,在许多计算机操作系统中都能够得到适用,且效率显著。



if中需要的是个逻辑运算,真,假。如果是真运行if中包含的代码,否者运行下面的。
在c语言中0为“假”,非0为“真”。
if(x):1)如果x不等于0(非0),那么if(x)就是”真“,所以if(x!=0)就是“真”。
2)如果x等于0(0),那么if(x)就是“假”,if(x!=0)也就是”假“的,因为x明明等于0
if(!x):1)如果x等于0(0),非运算(!)一下,可以简单理解为取反(0取反为非0),那么if(!x)就是不等于0了,那么就是”真“了,if(x==0)也是“真”,因为x先前假设为0。
2)如果x不等于0(非0),那么if(!x),就是等于0,也就是“假”,那么if(x==0)也为”假“,因为先前假设x不等于0,可是现在==0,所以为假。
==========以上为考虑的思维
关键就是:0为“假”,非0为“真”。
by the way:if(x!=0)中的感叹号为”不“的意思,x不等于0.而if(!x)中的x是将x的值”取反“,0变非0,非0变0

等价的。判断的时候,x非零则为真。 也就是x!=0就是x为真。
x等于0,就是x为假。

是的呦,其实if()里面的判断是逻辑判断,0为假,非0为真!

在c语言中,与if(x==0) 等价的表达式写法是什么?~

与if(x==0){ ... } 只有
1 if(!x){...} //这个是不好的风格
2 if(0==x) {...} //这样写的习惯,可以防止x=0这样的笔误
3 x==0 ? { ...} :{}; //这个适合有else的时候用

不能用while,while是个循环,就算循环内修改了x的值,只执行了一次,或者x!=0执行零次,本质上还是有区别

先执行x=x-1;

再执行!x,即等价于x==0
#include
int main(int argc, char *argv[])
{
int x=1;
if(!(--x)) //等价于if((--x)==0)
printf("Hello World!
");//会执行
return 0;
}