//章节:第五章 循环结构程序设计
//题号:5.11
//题目:一个球从100米高度自由落下,每次落地后反跳回原高度的一半,
//再落下,再反弹。求它在第十次落地时,共经过多少米,第十次反弹多高。
#include <stdio.h>
#include <math.h>
int main()
{
float sum=100,h=0,sum0;
int i;
for(i=2;i<=10;i++)
{
sum0=100/pow(2,i-2);
sum=sum+sum0;
}
h=100/pow(2,10);
printf("共经过%fm\n",sum);
printf("第十次反弹%fm\n",h);
return 0;
}
#include <stdio.h>
int main()
{
double h=100.0,i=2,sum=100;
while(i<=10)
{
h=0.5*h;
sum=sum+h*2;
i++;
}
printf("第十次落地时共经过%lf米\n",sum);
printf("第十次反弹%lf米高",h/2);
return 0;
}