题目:一球从100米高度自由落下,每次落地后反跳回原高度的一半,再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?请编程。
采用一个递归函数来实现算法的调用,当然也可以采取一个while循环函数来实现递归调用,这里我就只给方法1的代码,方法二大家可以自己去尝试写一下。
#include<stdio.h>
double sum=100;
int i=0;
int digui(double n)
{
if(i++<9)
sum=sum+n;
else
{
printf("%lf %lf\n",sum,n/2);
return 0;
}
digui(n/2.0);
}
void main()
{
double n=100.0;
digui(n);
}
有问题可以留言哦!