林士心 发表于 2021-3-17 15:42:04

变量和宏定义中最后一道题,帮忙看看为什么求不出正确的值

#include<stdio.h>

#define TOMATO 3.7/2
#define KALE 7/2
#define CELERY 1.3/2
#define WATER_SPINACH 8/2
#define ONIONS 2.4/2
#define RAPESEED 9/2

jackz007 发表于 2021-3-17 17:17:23

本帖最后由 jackz007 于 2021-3-17 17:21 编辑

      整型数除法会直接抹去运算结果中的小数部分,从而导致出现较大的运算误差,所以,7 / 2 = 3,9 / 2 = 4
      试一试下面修改过的宏定义
#define TOMATO 3.7 / 2
#define KALE 7.0 / 2
#define CELERY 1.3 / 2
#define WATER_SPINACH 8.0 / 2
#define ONIONS 2.4 / 2
#define RAPESEED 9.0 / 2
页: [1]
查看完整版本: 变量和宏定义中最后一道题,帮忙看看为什么求不出正确的值