输入一个非负整数n
,生成一张3的乘方表,输出 3 0 — — 3 n 3^{0} ——3^{n} 30——3n 的值。可调用幂函数计算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 <stdlib.h>
# include <math.h>
int main() {
int i,n;
scanf("%d",&n);
long long value;
for (i=0;i<=n;i++) {
// pow()返回的类型是double
value = pow(3,i);
printf("pow(3,%d) = %lld\n",i,value);
}
return 0;
}
提交截图:
解题思路:
有两处细节需要注意:
- 题目明确表示输出的数据是长整数的范围,所以我们可以定义一个
long long int
类型的变量value
来接收幂运算的值,最后输出的时候格式化符号是%lld
pow()
返回的数据是double
类型的,所以不可避免地需要强制抓换成lld
型