分多种情况,要用if语句与递归!
上链接!
错了错了,上代码!🙈🙊🙉
#include <stdio.h>
// 计算多项式 hn(x) 的函数
int hn(int x, int n) {
// 当 n = 0 时,返回 1
if (n == 0) {
return 1;
}
// 当 n = 1 时,返回 2x
else if (n == 1) {
return 2 * x;
}
// 当 n > 1 时,通过递归计算
else {
// 先计算 h(n - 1)(x) 和 h(n - 2)(x)
double hn_1 = hn(x, n - 1);
double hn_2 = hn(x, n - 2);
// 返回 2xh(n - 1)(x) - 2(n - 1)h(n - 2)(x)
return 2 * x * hn_1 - 2 * (n - 1) * hn_2;
}
}
int main() {
int x;
int n;
scanf("%d", &n);
scanf("%d", &x);
// 调用 hn 函数计算并输出结果
int result = hn(x, n);
printf("%d\n", result);
return 0;
}