编写程序利用递归法实现如下所示n层嵌套平方根的计算:
递归函数原型:double Y(double x, int n);
程序运行结果示例1:
Please input x and n:16,1↙
Result=4.00
程序运行结果示例2:
Please input x and n:16,2↙
Result=4.47
程序运行结果示例3:
Please input x and n:16,3↙
Result=4.52
程序运行结果示例4:
Please input x and n:16,0↙
Result=0.00
#include <math.h>
#include <stdio.h>
double Y(double x, int n)
{
if (n == 1)
{
return sqrt(x);
}
return sqrt(x + Y(x, n - 1));
}
int main()
{
double x = 0;
int n = 0;
printf("Please input x and n:");
scanf("%lf,%d",&x,&n);
double ret = Y(x, n);
printf("Result=%.2f\n",ret);
return 0;
}