【求帮助】自由落体递归调用小问题
double h;double fall(double n)
{
double a=100,t;
if(n==0)
return a;
else
t=h/=2; 这里我把h值付给t值这个递归就是正确的,如果我用直接h的值这个递归就是错的。值都一样的,为啥会存在不同的结果,没想明白
return a=fall(n-1)+t*2;
}
int main()
{
double n;
while(scanf("%lf",&n)!=EOF)
{
h=100;
printf("%f\n",fall(n));
}
return 0;
}