7-1 厘米换算英尺英寸 (15分)

基础编程题目集之编程题

题目如下:
在这里插入图片描述
这道题目卡了我两个多小时,其中发现一些问题。
先上正确代码:

#include<stdio.h>
int main()
{
	int a;
	int inch, foot;//定义整型而不是浮点数
	scanf("%d", &a);//输入多高,单位是cm
	inch = (a / 100.0 / 0.3048);
	foot = (a / 100.0 / 0.3048 - inch) * 12;
	printf("%d %d",inch, foot);//输出
	return 0;
}

再上一波我一开始错误的代码:

#include<stdio.h>
int main()
{
	int a;
	int inch, foot;
	scanf("%d", &a);
	double x;
	x = a / 100.0 / 0.3048;
	inch = x * 12.0 / 13;
	foot = x * 12 - inch * 12;
	printf("%d %d",inch, foot);
	return 0;
}

错误的地方在:
在这里插入图片描述
一开始浮点数转整型直接舍去,导致后面的计算出现问题,所以改良之后把它放在一条语句里面,出现数据丢失的情况会减少,使得答案更加准确。

最后附上我同学的代码,也是一种初学者可学 的方法:

#include <stdio.h>
int main()
{
	double m,t,x; int foot, inch;
	scanf("%lf",&m);
	x = m / 100.0;
	t = x / 0.3048;
	foot = t;
	inch = (t - foot) * 12;
	printf("%d %d", foot, inch);
	return 0;
}

就是这样,第一题“轻松”的解决了。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值