个人在网上看了一些相关的讲解教程,有所感悟,想综合一下写一篇关于这个题目的分析。同时也是让自己印象深刻一点,记录自己学习 c 语言的历程;
题目:如果已知英制长度的英尺foot和英寸inch的值,那么对应的米是(foot+inch/12)×0.3048。现在,如果用户输入的是厘米数,那么对应英制长度的英尺和英寸是多少呢?别忘了1英尺等于12英寸。
下面开始进入题目的分析:
我一上来就把重点放在了题目中的公式中,想着怎么通过公式 来求解这道题目,但是通过解数学题的思维好像根本没法把这道题目解出来;因为涉及到 int 类型无法取余,所以一时间不知道如何是好。
后来我上网查询相关的解题步骤,发现大部分都是直接把代码放在了上面,对我这种新手十分的不友好,而且我的头脑里一直想的是利用题目中给的公式。后来我才知道将以厘米为单位的身高除以 30.48 所得的整数部分就是英寸(foot),小数部分乘以 12 就是英尺(inch)。
知道了这个关键点之后,这个题目就好做很多了,思维方面有了之后,可以开始着手写代码了
int main()
{
int foot,inch;
int cm; //输入的以厘米为单位的身高
scanf("%d",&cm);
foot = cm/30.48;
inch = (cm-foot*30.48)/30.48*12;
printf("%d %d\n",foot,inch);
return 0;
}
第一次的分享就写到这了,希望对看到这篇文章的你有帮助。如果写的有不对的地方也欢迎指出,大家相互学习,一起进步。
谢谢大家