C语言递归实现n的k次方

#include

//编写一个函数实现n的k次方,使用递归实现。

double func(int x, int y)
{
	if (y > 0)
	{
		return (double)x*func(x, y - 1);
	}
	if (0 == y)
	{
		return 1;
	}
	if (y <= 0)
	{
		return 1 / func(x, -y);
	}
}

int main()
{
	int n = 2;
	int k = -3;
	double ret = func(n, k);
	printf("%lf\n", ret);
	return 0;
}

输出结果:

C语言递归实现n的k次方_第1张图片

你可能感兴趣的