c语言中!x||--y怎么运算

 我来答
苑和平伊丽
2020-02-01 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:35%
帮助的人:898万
展开全部
若x的值为0,则!x的值为-1(真),整个表达式的值便为真;
若x的值为非0,则!x的值为0(假),整个表达式的值就等于--y的结果:若y原值不等于1,则--y先自减后的值就非0(即--y为真);若原y==1,则--y先自减后的值就是0(即--y为假)。
整个式子:若x==0或y!=1,则表达式为真;否则为假。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
连嘉悦牢义
2019-07-19 · TA获得超过2.9万个赞
知道大有可为答主
回答量:1.1万
采纳率:30%
帮助的人:883万
展开全部
!的优先级别最高,先做!,如果!X
是成立,整个表达式就一定成立,后面的--y就不会做,如果!X不成立,会做后面的--y
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
温厚且谦和的福音5
2019-02-02 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:29%
帮助的人:727万
展开全部
c语言中!是单目逻辑非运算符,从右至左结合,就是说先计算右边的表达式;>是关系运算符,从左至右结合。
在这个表达式中,由于!是从右至左结合,所以先计算表达式(z>y>x)的值,而由于括号内都是从左至右结合的运算符,所以就从左到右依次计算,先计算z>y,结果是真(1)或假(0),然后再用这个结果与x进行比较,结果是真(1)或假(0),然后再进行逻辑非运算,得到最终结果真(1)或假(0)。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
壬迎蓉闫俊
2020-01-03 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:29%
帮助的人:949万
展开全部
(x,y)
是逗号表达式,逗号表达式的值等于
最右边
那个表达式的值。
所以
(x,y)
的结果

y.
例如:
#include
main(){
int
x=1,y=2;
printf("%d",(x,y));
return
0;
}
输出结果

y
的当前值:
2
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式