C语言之函数调用11—递归法求Hermite函数

/*递归法!


==========================================
题目:
Hermite 函数:输入n、x,求Hn(x)?


H0(x)=1;
H1(x)=2*x;
Hn(x)=2*x*Hn-1(x)-2*(n-1)Hn-2(x);
==========================================
*/
#include<stdio.h>
float H(int n,int x)
{
if(n==0) return 1;
if(n==1) return 2*x;
else
return 2*x*H(n-1,x)-2*(n-1)*H(n-2,x);
}
void main()
{
int n,x,flag=1;
float Hn;
while(flag)
{
printf("n=");
scanf("%d",&n);
if(n>0)
flag=0;
else printf("请确认n>0!!! 又一次输入: ");
}
printf("x=");
scanf("%d",&x);
Hn=H(n,x);
printf("H(%d)=%.2f ",n,Hn);
}


/*
====================================================
评:
重在写出Hermite函数的递归表达!第一。有參数n,x;第二,
有三个表达式分别表示n=0,n=1,n=其它。最后递归到n=1或
n=0;第三,注意n是正整数。然后输入參数调用就可以!
====================================================
*/

原文地址:https://www.cnblogs.com/gavanwanggw/p/7083930.html