title: '[考研]东大C语言编程题——05弹球高度'
date: 2017-09-08 23:00:46
tags: [考研,东北大学,C]
thumbnail: http://upload-images.jianshu.io/upload_images/3635391-6ba8d3822c99643d.jpg
toc: true
题目标记:⭐
题目描述
一球从100米高度自由落下,每次落地后反弹原高度的一半,求它在第10次落地时,共经过多少米?第10次反弹多高?
解题思路
又是一道数学题,主要是看怎么理解了。注意第一次自由下落是100米,所以第一次反弹算的经过了100米,而第二次则需要先上后下,算两段,所以路程应该是100米,而反弹高度为50米。公式即为:
路程=100+2*h
高度(h)=h/2
代码
include <stdio.h>
int main()
{
float s=100,h=s/2;
int n;
for(n=2; n<=10; n++)
{
s+=2*h;
h/=2;
}
printf("第10回落地共经过%f米\n",s);
printf("第10回反弹%f米\n",h);
return 0;
}
运行结果
Github代码地址
https://github.com/1141937908/NUNETM/blob/master/05%E5%BC%B9%E7%90%83%E9%AB%98%E5%BA%A6.cpp