纪叶 发表于 2022-9-24 23:39:20

论代码算数与手算结果不一致的情况...

如题,正确答案应该是12.2,但是代码算出来是11.7... 我寻思是不是代码逻辑的问题导致的,求大佬解,代码如下:


#include<stdio.h>

#define fanqie 3.7//单位元/千克,1斤等于0.5千克
#define kongxin 8
#define youcai 9


int main()
{
        float priceming;
        priceming = 2*fanqie/2+1*kongxin/2+1*youcai/2;
        printf("小明买了2斤番茄,1斤空心菜,1斤油菜,需要给%.2f元。\n",priceming);
        return 0;
}

wp231957 发表于 2022-9-24 23:46:14

差0.5就对了,因为9/2=4不要问我为什么,这是游戏规则,想是4.5就要用9/2.0或者9.0/2或者9.0/2.0

临时号 发表于 2022-9-24 23:46:51

#include<stdio.h>

#define fanqie 3.7//单位元/千克,1斤等于0.5千克
#define kongxin 8
#define youcai 9


int main()
{
      float priceming;
      priceming = 2*fanqie/2.0+1*kongxin/2.0+1*youcai/2.0;// 2改成2.0
      printf("小明买了2斤番茄,1斤空心菜,1斤油菜,需要给%.2f元。\n",priceming);
      return 0;
}

纪叶 发表于 2022-9-24 23:53:40

wp231957 发表于 2022-9-24 23:46
差0.5就对了,因为9/2=4不要问我为什么,这是游戏规则,想是4.5就要用9/2.0或者9.0/2或者9.0/2.0

{:10_262:}
我明白了,谢谢大佬!
页: [1]
查看完整版本: 论代码算数与手算结果不一致的情况...