C运算符/的注意点

/运算符当两边的精度不同采取不同的运算方法

PAT 7-1

7-1 厘米换算英尺英寸 (15 分)
如果已知英制长度的英尺foot和英寸inch的值,那么对应的米是(foot+inch/12)×0.3048。现在,如果用户输入的是厘米数,那么对应英制长度的英尺和英寸是多少呢?别忘了1英尺等于12英寸。
输入的是cm,换算公式应为:
foot为(cm÷100÷0.3048)对应的整数部分;
inch为(cm÷100÷0.3048)对应的小数部分×12;

关键为分离浮点数cm÷100÷0.3048的整数部分和小数部分。
但我写程序的时候问题出在了 / 这个运算符上
/运算符当两端都为整数的时候,结果为截断的整数;
当两端有一个为浮点数时,结果为浮点数。

所以cm/100/0.3048当中,cm/100这一步已经进行了截断,导致结果出现错误。
改进:cm/30.48 即将/100/0.3048合并。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值