输入一个非负整数n,生成一张3的乘方表,输出3
0
~3
n
的值。可调用幂函数计算3的乘方。
输入格式:
输入在一行中给出一个非负整数n。
输出格式:
按照幂的递增顺序输出n+1行,每行格式为“pow(3,i) = 3的i次幂的值”。题目保证输出数据不超过长整型整数的范围。
输入样例:
3
输出样例:
pow(3,0) = 1
pow(3,1) = 3
pow(3,2) = 9
pow(3,3) = 27
#include<stdio.h>
#include<math.h>
int main()
{
int n;
scanf("%d",&n);
for(int i=0;i<=n;i++){
printf("pow(3,%d) = %.0f\n",i,pow(3,i));
}
return 0;
}
不想用函数库里的pow()函数的话自己可以写一个
#include<stdio.h>
int fpow(int x,int n);
int main()
{
int n;
scanf("%d",&n);
for(int i=0;i<=n;i++){
printf("pow(3,%d) = %d\n",i,fpow(3,i));
}
return 0;
}
//递归
int fpow(int x,int n){
if(n==0) return 1;
else return x*fpow(x,n-1);
}
//非递归
//int fpow(int x,int n){
// int ret=1;
// for(int i=0;i<n;i++)
// ret*=x;
// return ret;
//}
注: 函数库中pow()函数的原型为 double pow(double x,double n);
则函数的返回值为double型,则输出为控制字符用%f。本题运算均为整型,故用%.0f输出。其实干脆点自己写一个int 返回类型的Pow函数最好。