// 方法一:递归
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int Power(int n,int k) //题目中有两个变量,在设计函数时需要两个形参
{if (k == 0){return 1;}else if(k==1) {return n;}else{return n*Power(n,k-1);}
}
int main(){
int n = 2,k = 2;printf("请输入两个数字\n");scanf("%d %d", &n, &k);printf("%d的%d次方为%d", n, k, Power(n, k));system("pause");return 0;}
//方法二
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int Power(int n, int k)
{int b = n;if (k == 0)return 1;for (int a = k - 1; a > 0; --a) //for 语句可以用while(a--)代替{n = n*b; //不能使用n=n*n这样的表达式,会造成数值的混乱}return n;
}
int main()
{int n = 2, k = 2;printf("请输入两个数字\n");scanf("%d %d", &n, &k);printf("%d的%d次方为%d", n, k, Power(n, k));system("pause");return 0;
}
//方法三
库函数中pow用来求n的k次方