算法的先后顺序

来源:3-4 练习题

JiGee

2016-04-25 14:27

int a =3; b = 4;计算a+b%(a+b)/a+a*b-b的运算结果。

前面是3+4%7/3+8。

这里简化可以写成11+4%7/3。

那么问题来了%/如果是同一优先级的话,为什么要从左往右运算4%7=4再除以3=1?

为什么先7/3在被4%等于11+0=11?

写回答 关注

3回答

  • A_qian_
    2016-04-26 13:09:42

    按优先级来算的话,就要先算加号两边的b%(a+b)/3和a*b。而b%(a+b)/3,先算括号里的再从左往右即 b对a+b求余再除以a、也就是4对7求余等于3再除以3就等于1加a。所以加号左边就等于4.而右边是3*4-4=8.再相加就是4+8=12

    A_qian... 回复JiGee

    就像你数学的加减法啊,相同级别的不都是从左往右吗

    2016-05-07 10:29:58

    共 2 条回复 >

  • JiGee
    2016-04-25 15:20:27

    在数学中。100x4/2=200,无论优先算那个都是等于200,但是我不清楚这里为什么不行咯?

  • 慕粉3187274
    2016-04-25 15:14:37


     话说从左往右正常的吧 


C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926020 学习 · 20793 问题

查看课程

相似问题