c语言。求这道题的详细计算顺序
4个回答
展开全部
运算符优先级的问题 你可以百度查看 http://baike.baidu.com/view/262524.htm
比如算d3=(a<b)||(++a==5)&&(c>b--)
&&的优先级大于||所以先算后面的(++a==5)&&(c>b--)
++a==5成立c>b--不成立所以为0
在看前面的(a<b)||0
a<b成立所以为1||0;
所以d3=1
a=5 b=8 c=5
比如算d3=(a<b)||(++a==5)&&(c>b--)
&&的优先级大于||所以先算后面的(++a==5)&&(c>b--)
++a==5成立c>b--不成立所以为0
在看前面的(a<b)||0
a<b成立所以为1||0;
所以d3=1
a=5 b=8 c=5
更多追问追答
追问
但是这样做是错误的
追答
什么是错误的 哪一步 或者是哪个答案?
展开全部
A&&B,如果A是0(假)的话,B表达式就不会计算,
A||B,如果A是非0(真)的话,B表达式不会计算
同时出现时,A||B&&C是先计算B&&C再做||运算
A||B,如果A是非0(真)的话,B表达式不会计算
同时出现时,A||B&&C是先计算B&&C再做||运算
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用 编程软件去 一步一步调试是解决这类问题最好的办法。。比如codeblocks devc++ VC VS
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
被你画的都看不清了怎么答,打出代码
更多追问追答
追问
int a=4,b=8,c=5;
int d1,d2,d3,d4;
d1= (ab--);
输出d1,a,b,c;
d2=(a>b)&&(++a==5)||(c>b--);
输出d2,a,b,c
d3=(ab--);
输出d3,a,b,c
d4=(a>b)&&(++a==5)&&(c>b--);
输出d4,a,b,c
我可以算出正确答案,但是对于这类型的问题还是不太清晰,比如||和&&一起出现的时候,到底应该怎么算也不是很明确。所以想看看正确的计算顺序,希望你能给我帮助
d1少了个=
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询