求助:递归多项式怎么就出来一种结果呢
用递归方法求n阶勒让德多项式的值递归公式为pn(x)=1(n=0)
=x(n=1)
=((2n-1)x-pn-1(x)-(n-1)*pn-2(x))/n(n>1)
#include<stdio.h>
main()
{float x0,y0;int a;
float p(int n,double x); //函数声明
scanf("%f,%d",&x0,&a);
y0=p(a,x0);
printf("y0=%.3f\n",y0);
}
float p(int n,double x)
{
float y;
if(n=0) y=1;
else if(n=1) y=x;
else if(n>1) y=((2*n-1)*x-p(n-1,x)-(n-1)*p(n-2,x))/n;
return y;
}
运行无误后怎么不管输入什么n,结果都是y=x啊