C++ 函数递归计算幂运算:f1(x, n)

本文将解析使用递归函数 f1(x, n) 计算 x 的 n 次方的 C++ 代码示例。

原始代码:

double f1(double x, int n) {
    if (n == 1) return x;
    else return fl(x, n - 1) * x;
}

void main() {
    printf("%.0f\n", f1(2.0, 3));
}

错误分析:

代码中函数调用 fl(x, n - 1) 存在错误,正确的函数名为 f1,而非 fl

修正后的代码:

double f1(double x, int n) {
    if (n == 1) return x;
    else return f1(x, n - 1) * x;
}

int main() {
    printf("%.0f\n", f1(2.0, 3));
    return 0;
}

代码解析:

  • f1(x, n) 函数使用递归的方式计算 x 的 n 次方。
  • n == 1 时,直接返回 x,即 x 的 1 次方。
  • n > 1 时,递归调用 f1(x, n - 1) 计算 x 的 (n-1) 次方,并将其乘以 x,得到 x 的 n 次方。

运行结果:

输出结果为 $2^3=8$。

总结:

通过修正代码中的函数调用错误,成功实现了使用递归函数 f1(x, n) 计算 x 的 n 次方。

C++ 函数递归计算幂运算:f1(x, n)

原文地址: https://www.cveoy.top/t/topic/nev2 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录