作业帮 > 综合 > 作业

C语言逻辑表达式问题请问这个算法是先算那个再算那个的?要详细的,一步一步解答:a||b+c&&b-c

来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/05/10 09:00:15
C语言逻辑表达式问题
请问这个算法是先算那个再算那个的?要详细的,一步一步解答:a||b+c
&&b-c
C语言逻辑表达式问题请问这个算法是先算那个再算那个的?要详细的,一步一步解答:a||b+c&&b-c
优先级:+,- > && > ||
结合律:都是左结合
所以a||b+c&&b-c等价于a || ( (b+c) && (b-c) )
由于||和&&具有短路求值的特点,所以计算顺序是:
1.先算a,如果a非0,则后面的表达式不用算了,整个表达式直接为1
2.a为0,则仍需计算后面的表达式,先计算b+c
3.如果b+c为0,则后面的b-c不用计算了,整个表达式直接为0
4.b+c不为0,再计算b-c.