C语言旅途之函数的递归调用求px(x,n)

Ⅰ、简单的入门:
①、//代码摘下直接可以运行
//用递归求px(x,n)的值
#include<stdio.h>
double px(double x,int n)
{
if(n==0)
return 1;
else
return x*(1-px(x,n-1));
}

int main()
{
printf(“please input the number of x,n\n”);
int n;
double x,sum;
scanf("%lf %d",&x,&n);
double px(double,int);
sum=px(x,n);
printf(“the number of %d sum:%.0f\n”,n,sum);
return 0;
}

②、结果展示:
例如:此程序是为了求出递归函数px(x,n)的过程,例如当输入x为5,n为6时,其经过计算之后的结果为2605,其显示结果如下所示;
C语言旅途之函数的递归调用求px(x,n)
☺寄语:
Ⅰ、此程序在Visual C++6.0版本上运行的;
Ⅱ、如果我给的程序有问题,或在叙述方面有问题,或者看不懂我讲解的意思,请及时指出或留言和我讨论,谢谢各位大佬!!!
Ⅲ、
①、此程序中也是使用了函数之间的调用,在主函数中定义语句为:double px(double,int);此语句在运行的时候调用,从而实现函数的调用;
②、在本程序中分为主函数和其他函数,每一个程序中都会有主函数,在C语言语言中的主函数一般为main函数,通常以void main()或int main()或main开始为主函数,所用的调用函数都是在主函数中定义之后,才能使用;
③、本程序的递归调用的核心就是double px(double x,int n)函数,其中的递归的过程为:x*(1-px(x,n-1));这个过程就是再次调用函数double px(double x,int n),与第一次的差别就是n的值变为n-1,直到n的值为0为止(而此时的返回值为1),然后再嵌套返回使得获得函数x*(1-px(x,n-1))的值,最终得到结果;