一个球从x(x>=10)米高度自由下落,每次落地后反跳会原高度的一半,再下落。求它在第n次落地时,共经过多少米?(float类型)
程序运行结果示例:
请输入下落高度:
10
求下落n次路程:
2
总长度是:20.000000
输入提示:“请输入下落高度:\n”
输入格式:“%d”
输入提示:“求下落n次路程:\n”
输入格式:“%d”
输出格式:“总长度是:%f\n”
#include <stdio.h>
int main()
{
float i, s,h;
int x, y;
printf("请输入下落高度:\n");
scanf("%d", &x);
s =h= x; //因为高度申请为整型,需要用h=x转化为float类型再计算
printf("求下落n次路程:\n");
scanf("%d", &y);
for (i = 1; i < y; i++)
{
h = h / 2.0;
s +=h * 2.0;
}
printf("总长度是:%f\n", s);
return 0;
}