1223lin 2022-10-14 16:36 采纳率: 81.3%
浏览 29
已结题

后面是那种运算步骤的话该怎么判断是真是假,是否要进行下一步呢

这个第一张图是原理,后面是举的例子改怎么去运算,可是我还是不清楚是运算步骤的话怎么能判断真假呢,怎么知道那些要运行,哪些不用呢

img

img

img

  • 写回答

2条回答 默认 最新

  • X-道至简 2022-10-16 17:02
    关注

    从上面2个例子来说明下:

    1. a=10;b=20;c=30;
      a = (--b)<=a || (a+b !=c) a+b是算术运算符 ,<=是关系运算符, a=是赋值运算符(优先级最低)
      || 按照原理图是 只要前面有一个为真后面就不计算了
      我们改写下上面的算式
      a = a1 || a2 a1 = (--b)<=a , a2 = (a+b !=c)
      先计算a1为假,所以还要计算a2,a2里面先计算算术运算 a+b, 在算关系运算比较 != c 结果为1
      就是这样一步一步分解下来
    2. x=-1
      ++x || (++x && ++x)
      改写为
      a1 || (a2 && a3) a1 = a2 = a3 = ++x, ++操作可以认为特殊的算术运算
      接下来就是计算:
      a. 按照 || 的原理,先计算算术运算a1=++x=0,在算关系运算 a1!=0 ,是0!=0结果0是假
      b. 因为a1是假,需要计算后面的a2和a3,又因为是 &&,所以a2,a3都要算
      c. a2和a3先计算算术运算a2=++x,a3=++x 算出 a2=a3=2
      d. 最后计算逻辑运算 a2 && a3的逻辑运算 2&&2 结果为1
      最终结果 0||1 = 1

    总结,就是按照第一张图可以把运算一步一步分解下来, 算术运算> 关系运算 > &&和|| > 赋值运算

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 10月25日
  • 已采纳回答 10月17日
  • 创建了问题 10月14日