请问c语言中&&和||的意思

谁能解释一下这段代码中的c=a&&b吗它是什么意思?我只会a>b这种运算。#include<stdio.h>#definePFprintf("c=%d,d=%d\n",c... 谁能解释一下这段代码中的c=a&&b吗它是什么意思?我只会a>b这种运算。

#include<stdio.h>
#define PF printf("c=%d,d=%d\n",c,d);
int main(){
int a=1,b=2,c=3,d=4;
c=a&&b;d=a||b; PF
c=!a&&b;d=!a||!b; PF
}
展开
 我来答
风若远去何人留
2017-11-14 · 知道合伙人互联网行家
风若远去何人留
知道合伙人互联网行家
采纳数:20413 获赞数:450084
专业C/C++软件开发

向TA提问 私信TA
展开全部

&&是逻辑与. 

A&&B 只有当A和B都为真时,结果为真.否则为假.

A||B是逻辑或, 当A和B都为假时,结果为假. 否则为真. 

int a=1,b=2,c=3,d=4;
c=a&&b;= 1&&2=1
d=a||b; =1||2=1
PF
c=!a&&b;=!1&&2=0&&2=0
d=!a||!b; =!1||!2=0||0=0
PF
追问
为什么1&&2是1啊
追答
逻辑运算,非零则为真
真与真,结果为真,即1
ChengZiXianS
2017-11-14 · TA获得超过1011个赞
知道小有建树答主
回答量:1434
采纳率:72%
帮助的人:443万
展开全部
并且,或者
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友206b068
2017-11-14 · TA获得超过1117个赞
知道小有建树答主
回答量:1729
采纳率:84%
帮助的人:101万
展开全部
C语言在进行逻辑与和或运算的特殊性
a && b
如果a为0,则上述表达式的值为0,这时不进行b的运算;只有当a的值为非0时,才进行b的运算。
如:int i=0,j=10;
那么表达式“i && j++”的值为0, i的值为0,j的值为1
而表达式 “i+1 && j++”的值为1,i的值为0,j的值为2
a || b
如果a为非0, 则上述表达式的值为1,这时不进行b的运算;只有当a的值为0时,才进行b的运算。
如:int i=0,j=10;
那么表达式“i || j++”的值为0, i的值为0,j的值为2
而表达式 “i+1 || j++”的值为1,i的值为0,j的值为1
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式