kivi 发表于 2014-7-29 09:59:22

求助

本帖最后由 kivi 于 2014-7-29 14:23 编辑

在看小甲鱼的视屏教程,其中有一节讲变形变量的。
第一题按照代码打出来计算是正确的。但是第二题和第三题只修改后面的数据无法正确计算。求教
#include <stdio.h>
void main()
{
    printf("%f\n,1.0/3*3");
}
这个是正确的。
第二题是:3/2?
代码直接改那个1.0/3*3就计算不正确。是哪里出错了,求指点。谢谢。

kivi 发表于 2014-7-29 14:03:03

这么多人看,都没一个人能回答下啊:cry

cfy137000 发表于 2014-7-29 16:34:40

printf 应该是 printf("%f\n",1.0/3*3);(注意你双引号的位置)
"\"(除法)2个整数相除 是先默认int型除完了在转化为float型,
而int型除完了的结果 只能保留整数位,再转化就造成数据精度的损失了。
1.0是float型,除的时候结果是float型的 就不会舍弃小数位啦

『浴火凤凰』 发表于 2014-7-29 20:07:30

  第二题目

printf("%f\n,2.0/3");

三。
  printf("%f\n,1.0/3*3");



:lol::lol:

kivi 发表于 2014-7-29 20:35:01

『浴火凤凰』 发表于 2014-7-29 20:07
  第二题目

printf("%f\n,2.0/3");


我去,原来这么简单啊、谢了。
页: [1]
查看完整版本: 求助