Description
递归求解函数f(x,n)
-----------------------------------------------------------------------------
Invalid Word(禁用单词)错误:在解决这个题目时,某些关键词是不允许被使用的。如果提交的程序中包含了下列的关键词之一,就会产生这个错误。
被禁用的关键字:for, while, do, break, continue, goto。
Input
第一个数是实数x,第二个数是整数n。
Output
函数值,保留两位小数
Sample Input
1 2
Sample Output
0.40
解析:递归函数求解类问题:举例子写出f(5)=啥+啥*f(4);
就能推出:f(n)=啥+啥*f(n-1)
此题:f(x,5)=x/(5+f(x,4));f(x,4)=x/(4+f(x,3));……;f(x,1)=x/(1+x);
答案:
#include <stdio.h>
double f(double x,int n)
{
if(n==1)return 1.0*x/(1+x);
else return 1.0*x/(n+f(x,n-1));
}
int main()
{
int n;
double x;
scanf("%lf %d",&x,&n);
printf("%.2f",f(x,n));
return 0;
}