C语言中if(p=a!=0)是什么意思 c语言中: if(!a) 是什么意思?我知道a!=0是a不等...

作者&投稿:毕俗 (若有异议请与网页底部的电邮联系)
int p,a=5
定义两个有符号的整型变量 p,a,并且对a赋值5

if(p=a!=0)
分两步 从右到左
1、a!=0 是判断a是否等于0
若等于 返回 0
若等于 返回 1
结果是不等于 返回了 1
2、p= 返回值 也就是 p=1

3、这时候,再判断 if(p) 判断结果为真,所以输出p的值 ,为1

0分数。。。。。。晕不晕呀,不厚道~

这个 你要了解 运算符的 优先级问题

请看 运算符优先级 列表

!=的优先级 明显高于 赋值运算符

所以p=a!=0的计算顺序是 p=(a!=0)(可以这么理解)

a的值是5,所以a!=0必然是 真 所以 p被赋值1

而if的判断条件 变成 if(p=1)即 if(p),即if(1)

所以 会执行printf(" %d\n",p) ;

所以输出 1

(p=a)!=0就是将a的值付给p,判断p不等于0,等价于 a!=0,当然不等啊,a等于5啊

int p 为定义变量p
a=5 定义变量a,并赋值a等于5
if(p=a!=0) a!=0赋值于p
因为a!=0为真,所以赋p值为1

正确答案是1.p赋值是对所以是1

C语言中if(!a)表示什么意思~

if( !a )就是一个判断语句,判断表达式 !a 的真假,进而决定是否执行后续操作。

如果a是一个变量
当a等于0时,!a=1(为真),执行后续操作;
当a不等于0时,!a=0(为假),不执行后续操作;

如果a是一个表达式
将表达式的值计算出来,当成变量来操作,判断过程同上。

就是如果非a 比如说a是0那么非a就是1 那么此时为为真 if以后得语句成立 此时程序继续进行 如果a是非0数 那么非a就是0 此时条件为假 之后的语句不会继续了 不知道你看懂了没

c语言中if(a=0)怎么理解力
答:一个=是赋值的意思,就是把0赋给a 然后if(0),执行else 如果想判断a是否等于0可以写成if(a==0)

c语言中 if(a=0)和 if(a==0)表达的意思相同吗
答:不同,=是赋值符号,而==是等号,就如同数学中的等号一样。if(a=0),不管怎样这都是真。if(a==0)z只有当a为0这后面语句才能执行。要注意这两个符号的运用。还有很多,例如a++,++a,--a,a--等。

在c语言中 if(0)是什么意思
答:if(0)的意思,就是不执行if(0)后面跟着的大括号里面的语句。(这里的大括号若没有,则表示if(0)后面跟着的第一个分号的语句。)流程控制关键字 跳转结构 return:用在函数体中,返回特定值(如果是void类型,则不返回函数值)。(K&R时期引入)continue:结束当前循环,开始下一轮循环。(K&R时期...

在c语言中if !a和if a=0是一个意思吗?
答:在C语言中,没有类似C++,Java语言的布尔类型,所以规定用0表表示条件为假,用非0(注意不是1)表示条件为真。所以 if(!a) 就是说“当a为0时条件成立”,也就是if(a==0)了 另外,C语言中表达式可不是你这么写,你是从VB转过来的吧?

请问if(!a)与if(a==0)有区别吗?
答:数据类型不一样。if(!a)表示a为假时执行后续语句, a 通常为布尔型。if(a==0)表示如果a等于0时执行后续语句。

C语言中if(!a)表示什么意思?
答:罗杰表达式的值是一个逻辑值,即真或假,真用1表示,假用0表示。设a代表一个关系表达式(就像a==(x>1)) a为真!a就是假,a为假!a就是真。这个是Java写的,没有用C但是都是一样的。所以你在读你的哪个语句的时候,要整体的读。在编程中不管是C、C++、Java都是会使用条件判断语句if,...

C语言中“if(!a)”表示什么意思?
答:if(条件){语句;}是判断语句,如果()中的条件为真,则执行{}中的语句。!是取反的运算符,!a表示:如果a为true,则!a为false,如果a为false,则!a为true。

C语言中。a=0 if(!a)是什么意思?
答:在C语言中,0即为假,非0即为真。本题中,a=0,!a即为非零,也就是真 if(!a),意思是说 当!a为真是 如何

C语言if(!a)是什么意思?
答:检测a的值,如果a是0,那么!a就为非零,非零就成立,那么就会执行if内的语句,反之如果a不为0,那么!a就为0,即不成立,就不会执行if内的语句

C语言中if语句,如果上面赋值a=0,if(a=0)括号中条件是真还是假
答:C语言使用0代表假,非0代表真 if(a=0);就相当于 a=0;if(a);就相当于 if(0);括号中的条件是假