带你学c带你飞第五节课的动动手
本帖最后由 小白到极客 于 2018-3-16 09:12 编辑代码如图 怎么回事会少???? 上代码 估计你抄错了某个系数 数抄错了吧 是不是哪个的价格错了。。。 Dr丶温 发表于 2018-3-16 07:56
是不是哪个的价格错了。。。
对过了没错 BngThea 发表于 2018-3-16 07:38
估计你抄错了某个系数
没有对了两遍了 心算答案对的你自己试试 段黄鱼 发表于 2018-3-16 07:55
数抄错了吧
没错你心算试试答案差了 小白到极客 发表于 2018-3-16 09:14
没有对了两遍了 心算答案对的你自己试试
我拿你的代码算了是下面那组答案
12.2
18.3
36.5 直接说问题,经过我的调试!
编译器直接把下述三个宏的数据类型认为是int型,所以直接把小数位丢了!
#define AI(t)7 / 2 * t
#define AE(t)8 / 2 * t
#define RA(t)9 / 2 * t
再看二图
证实了我的猜测,编译器确实把这三个宏定义的数据类型认为是int型,所以不保留小数位
解决方法就是
#define AI(t)7.0F / 2 * t
#define AE(t)8.0F / 2 * t
#define RA(t)9.0F / 2 * t
其中 7.0F 表示 float的7.0如果不加 默认表示double类型的7.0
页:
[1]