C语言实现递归函数计算x的n次方

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

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

结果内容:8

该程序使用递归函数 f1 来计算 xn 次方。当 n 等于 1 时,函数直接返回 x;否则,函数递归调用自身,计算 xn-1 次方,并将结果乘以 x

程序中,f1(2.0, 3) 的计算过程如下:

  1. f1(2.0, 3) = f1(2.0, 2) * 2.0
  2. f1(2.0, 2) = f1(2.0, 1) * 2.0
  3. f1(2.0, 1) = 2.0

因此,f1(2.0, 3) 的结果为 2.0 * 2.0 * 2.0 = 8

注意: 该程序使用了递归函数,递归函数的效率可能不如循环函数高,尤其是在计算较大数时。

C语言实现递归函数计算x的n次方

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

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