double h(int n,int x){
:定义了一个名为 h
的函数,它接受两个整数参数 n
和 x
,并返回一个 double
类型的值。这个函数用于计算赫尔曼多项式。
if(n==0) return 1;
:如果 n
等于0,根据赫尔曼多项式的定义,H_0(x)
等于1。
if(n==1) return 2*x;
:如果 n
等于1,H_1(x)
等于 2x
。
else if(n>1) return 2*x*h(x,n-1)-2*(n-1)*h(x,n-2);
:如果 n
大于1,使用赫尔曼多项式的递推关系来计算。递推关系是 H_n(x) = 2xH_{n-1}(x) - 2(n-1)H_{n-2}(x)
。
int main(){
:定义主函数,程序的执行从这里开始。
int x,n;
:在 main
函数中定义了两个整型变量 x
和 n
,用于存储用户输入的值。
scanf("%d %d",&x,&n);
:使用 scanf
函数从标准输入读取两个整数,分别赋值给 x
和 n
。
printf("%.2f",h(x,n));
:调用 h
函数计算赫尔曼多项式,并以保留两位小数的格式打印结果。