编写一个函数实现n^k,使用递归实现

运行环境 win10  vs2013

程序如下:
 

编写一个函数实现n^k,使用递归实现

运行结果如图:

编写一个函数实现n^k,使用递归实现

 

#define  _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
int Lib(int n, int k)  //  n作为底数,k作为指数
{
	if (k == 0 ||n == 1){
		return 1;
	}
	else{
		k--;    //假设求2^3 可以表示为2x2x2, 求出2x2x2需求出2x2 
		         //同理对于2^3来说,指数需依次减小,因此为k--
		return n*Lib(n, k);
	}
}
int main()
{
	int n, k;
	printf("请输入两个数!例:2 3 表示2^3\n");
	while (1){
		scanf("%d %d", &n, &k);
		printf("结果为: %d\n",Lib(n, k));
	}
	system("pause");
	return 0;
}