业精于勤,荒于 发表于 2021-7-19 22:40:40

刚学c语言为啥为算出来不一样

#include<stdio.h>

#define tomato 3.7
#define Chinese Kale 7
#define Parsley 1.3
#define WaterSpinach 8
#define Onions 2.4
#define Canola 9
#define Cucumber 6.3
#define Turnips 0.5

int main()
{
          printf("小明需要支付%.2f元\n",2*tomato+1*WaterSpinach+1*Canola);
          printf("小红需要支付%.2f元\n",3*Parsley+0.25*Onions+5*Cucumber);
          printf("小甲鱼需要支付%.2f元\n",10*Cucumber+20*Turnips);
          
          return 0;
}
   


这是我写的代码







#include <stdio.h>

#define FANQIE3.7
#define JIELAN7
#define XIQIN   1.3
#define KONGXINCAI      8
#define YANGCONG      2.4
#define YOUCAI9
#define HUANGGUA      6.3
#define BAILUOBO      0.5

int main()
{
      float price;

      price = (2 * FANQIE + KONGXINCAI + YOUCAI) * 0.5; // 1斤 == 0.5公斤
      printf("小明需要支付%.2f元\n", price);

      price = (3 * XIQIN + 0.5 * YANGCONG + 5 * HUANGGUA) * 0.5;
      printf("小红需要支付%.2f元\n", price);

      price = (10 * HUANGGUA + 20 * BAILUOBO) * 0.5;
      printf("小甲鱼需要支付%.2f元\n", price);

      return 0;
}
   


小甲鱼写的


我有点不懂,为啥我写的算出来跟小甲鱼的代码算出来不一样,求解释一下











yuedong 发表于 2021-7-20 09:28:32

(3 * XIQIN + 0.5 * YANGCONG + 5 * HUANGGUA) * 0.5
3*Parsley+0.25*Onions+5*Cucumber
自己对比。

henkuderen 发表于 2021-7-20 09:31:36

首先没有原题目,只看代码的话,你写的没有*0.5,可能是你没转换单位
页: [1]
查看完整版本: 刚学c语言为啥为算出来不一样