题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
参考程序如下:
#include<stdio.h>
#define H 100
void main()
{
int i, j, n;
float s, h;
s = H; //记录经过距离.
h = H;
h = h / 2; //记录第一次反弹的高度
scanf("%d", &n);
for(i=1;i < n;i++){//从第二次落地开始循环
s += 2*h;
h /= 2;
}
printf("第%d次落地时共经过%f米\n,第%d次反弹高度为:h=%f米\n",n, s, n, h);
}