C语言的逻辑用语

来源:百度知道 编辑:UC知道 时间:2024/06/08 07:06:01
例子:if (a+b=2&&a=2) printf("sadf");/*意思是如果a+b=2且a=2就输出sadf*/
----------
if (a+b=2||a=2) printf("asdf");/*意思是a+b=2或者a=2则输出asdf*/
-------------
问if (!a) printf("sadf")
是什么意思,解析得简单点。谢谢。
不好意思,刚刚学,又犯错误了。
那么他的意思是不是 如果a等于0就输出sadf
如果a不等于0就不输出,做else的?

所有的=要变成==才可以噢
=是赋值符号 ==才是等号
你说的2个都对
最后一个是说 对a求反 如果a是真 则!a是假 那么就不输入

如果a假 那么!a真 那么就输出

在c语言里 0默认是假 其它都是真

if(! a)
这个其实是一种不规范的用法
如果a是bool型,那么a如果是false则执行if里面的语句,因为a==false,! a==true;
如果a是int,那么a==0的时候执行if里面的语句,因为C语言中0在bool判断的时候是当作false处理的。

对的,但是提醒一下不能写等号,应该写成a==2
后面的那句意思是
如果a=0输出sadf否则不输出。
默认0是false 其他整数为true