pow适用于计算一个数字的幂,非常方便,但是实际操作中,往往会出现一些小问题
#include <stdio.h>
#include <math.h>
int main()
{
int n;
scanf("%d",&n);
printf("%d",pow(2,n));
return 0;
}
输出值为2 0
上面的代码生成的结果是0
那么不妨在看看下面的代码
#include <stdio.h>
#include <math.h>
int main()
{
int n;
scanf("%d",&n);
printf("%d",(int)pow(2,n));
return 0;
}
输出结果为:2 4
原因在于pow函数的返回值为浮点型,而我的输出控制符是%d,因此类型不符合,无法正常输出,这是便需要用到强转换来解决了,只需要(int)pow(),即可让pow函数正常输出