用C语言:编写一个高空坠球的程序。 高空坠球:皮球从h(米)高度自由落下,触底后反弹到原高度的一半,再落下,再反弹,……,如此反复。问皮球在第n次落地时,在空中一共经过多少距离?
时间: 2024-05-11 18:17:13 浏览: 98
C语言练习题:自由落体的小球简单实例
下面是用C语言编写的高空坠球程序,可以计算在第n次落地时,皮球在空中一共经过的距离:
```c
#include <stdio.h>
int main()
{
float h, s;
int n;
printf("请输入皮球初始高度(米):");
scanf("%f", &h);
printf("请输入落地次数:");
scanf("%d", &n);
s = h;
for (int i = 2; i <= n; i++)
{
s += h * 2;
h /= 2;
}
printf("第%d次落地时,皮球在空中一共经过%f米。\n", n, s);
return 0;
}
```
程序中使用了一个for循环,从第2次落地开始计算,每次落地后高度减半,距离加倍。最后输出在第n次落地时,皮球在空中一共经过的距离。
阅读全文