天天看点

使用递归求n的k次方

求 n^k 可以转化为 n*n^(k-1),而n^(k-1)又可以转换成n^(k-1)*n^(k-2),以此类推

#include <stdio.h>
#include <stdlib.h>
int Factor(int n, int k) {
	if (k == 1) {
		return n;
	}
	else {
		return n*Factor(n, (k - 1));
	}
}
int main() {
	printf("请输入两个整数!\n");
	int n = 0; int k = 0;
    // scanf 不能加 \n, 而且记得加 &
	scanf_s("%d,%d", &n, &k);
	printf("%d\n", Factor(n, k));
	system("pause");
	return 0;
}