C语言实现递归函数计算x的n次方
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 来计算 x 的 n 次方。当 n 等于 1 时,函数直接返回 x;否则,函数递归调用自身,计算 x 的 n-1 次方,并将结果乘以 x。
程序中,f1(2.0, 3) 的计算过程如下:
f1(2.0, 3) = f1(2.0, 2) * 2.0f1(2.0, 2) = f1(2.0, 1) * 2.0f1(2.0, 1) = 2.0
因此,f1(2.0, 3) 的结果为 2.0 * 2.0 * 2.0 = 8。
注意: 该程序使用了递归函数,递归函数的效率可能不如循环函数高,尤其是在计算较大数时。
原文地址: https://www.cveoy.top/t/topic/nev5 著作权归作者所有。请勿转载和采集!