啊哈磊_编程从这里起步

标题: 【第二章第5节】动手试一试 题解 [打印本页]

作者: rosynirvana    时间: 2014-4-21 14:00
标题: 【第二章第5节】动手试一试 题解
  1. #include <stdio.h>
  2. #include <stdlib.h>

  3. int main()
  4. {
  5.         double a,b,c,d,e;
  6.         a = 1.2;
  7.         b = 2.3;
  8.         c = 3.4;
  9.         d = 4.5;
  10.         e = a + b + c + d;
  11.         printf("%f\n", e);

  12.         system("pause");
  13.         return 0;
  14. }
复制代码

  1. #include <stdio.h>
  2. #include <stdlib.h>

  3. int main()
  4. {
  5.         double f,g,h;
  6.         f = 1.1;
  7.         g = 100;
  8.         h = f * g;
  9.         printf("%f\n", h);

  10.         system("pause");
  11.         return 0;
  12. }
复制代码

  1. #include <stdio.h>
  2. #include <stdlib.h>

  3. int main()
  4. {
  5.         double i,j,k;
  6.         i = 10.1;
  7.         j = 10;
  8.         k = i * (j * j);
  9.         printf("%f\n", k);

  10.         system("pause");
  11.         return 0;
  12. }
复制代码


熟练的写法
  1. #include <stdio.h>
  2. #include <stdlib.h>

  3. int main()
  4. {
  5.     printf("%f\n", 1.2+2.3+3.4+4.5);
  6.     printf("%f\n", 1.1*100);
  7.     printf("%f\n", 10.1*10*10);

  8.    system("pause");
  9.    return 0;
  10. }
复制代码

作者: rosynirvana    时间: 2014-4-21 14:02
注意,请不要用float自寻烦恼
动手试一试的1就展示了这一点
作者: wbb325    时间: 2014-9-25 15:23
还是没明白,为什么不能用float,我用float也能编译成功啊!
作者: rosynirvana    时间: 2014-9-25 15:39
wbb325 发表于 2014-9-25 15:23
还是没明白,为什么不能用float,我用float也能编译成功啊!

通过编译不是唯一的要求啊
float精度太低根本没法用在一般场合
作者: wbb325    时间: 2014-9-25 20:11
也就是说,用double还是更精确,最好直接用double
作者: rosynirvana    时间: 2014-9-25 21:53
wbb325 发表于 2014-9-25 20:11
也就是说,用double还是更精确,最好直接用double

float只保证6位有效数字,日常中有效的场合很少
作者: janice51244    时间: 2015-1-8 10:38
本帖最后由 janice51244 于 2015-1-8 16:02 编辑

請問double 跟 float差異在哪裡呢?
double 的用處是在哪裡?

我用  float 都編譯成功 卻無法顯示
上來爬解答 結果發現是要用書中沒提到的double
QAQ
我看到後面有講解了
我太衝動了 不會刪文 > <"

作者: 失忆蝴蝶    时间: 2017-5-29 21:24
用float虽然输出不正确,但是思路对了就ok了,至于double后面才讲到




欢迎光临 啊哈磊_编程从这里起步 (https://bbs.codeaha.com/) Powered by Discuz! X3.2