【菜鸟一问】看答案和评论区,都是number*=1.2;怎么得来的1.2?心算的?

来源:4-7 循环结构之do-while循环

腹部半涨

2015-06-30 15:38

我的

do{      year++;          

number += (number * 0.2);                    //这里不加括号错误。  

}while(number<1000);     //这里好像缺点什么 你们的1.2咋来的? 有人告诉我一下?

写回答 关注

1回答

  • Perona
    2015-06-30 16:33:11
    已采纳

    咱们来复习下小学的数学知识。

    乘法分配律

    两个数的和与一个数相乘,可以先把它们分别与这个数相乘,再相加,得数不变,这叫做分配律。

    字母表示:(a+b)×c=a×c+b×c

    再来说说这边

    number += (number * 0.2);

    这种写法换算成以前学过的数学公式不就是a×c+b×c的形式嘛

    number*=1.2;

    这种写法换算成以前学过的数学公式不就是(a+b)×c的形式嘛,只不过顺便把a+b给算出来了。

    Perona 回复IT迷恋者

    number+number*0.2不就等价于number*1+number*0.2,那现在我们把相同的乘数number提取出来,不就等价于number*(1+0.2),即number*1.2。

    2015-08-18 19:40:08

    共 7 条回复 >

C语言入门

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

926212 学习 · 20797 问题

查看课程

相似问题