用c语言表示一个球从100m高度自由落下,每次落地后反弹回原高度的一半,再落下,再反弹。求它在第10次落地时共经过多少米,第10次反弹多高。
时间: 2023-11-20 09:24:45 浏览: 67
tcs.zip_C语言反弹球_反弹球c语言
#include <stdio.h>
int main()
{
int i;
float h = 100, s = 0.0, r = h;
for (i = 1; i <= 10; i++)
{
s += h + r; // 累加每次落地和反弹的路程
h /= 2; // 下一次反弹高度为原高度的一半
r = h; // 下一次落地时的高度为上一次反弹的高度
}
printf("第10次落地时共经过%.2f米\n", s - h); // 第10次落地后不需要反弹,所以总路程要减去最后一次反弹的路程
printf("第10次反弹高度为%.2f米\n", h);
return 0;
}
阅读全文