完整代码:
// 用递归法求 n 阶勒让德多项式的值
// 递归公式为:
// n==0,P(n)(x)=1
// n==1,P(n)(x)=x
// n>1,P(n)(x)=((2*n-1)*x - P(n-1)(x) - (n-1)*P(n-2)(x)) / n
#include<stdio.h>double func(int n,int x){if (n==0){return 1;}if (n==1){return x;}if (n>1){return ((2*n-1)*x - func(n-1,x) - (n-1)*func(n-2,x)) /(n);}
}
int main()
{//n为阶数,x为参数int n,x;printf("请输入n\n");scanf("%d",&n);printf("请输入x\n");scanf("%d",&x);printf("P%d(%d)=%f",n,x,func(n,x));return 0;
}