pow()函数返回double 类型,不可用%d输出,否则有误差。
测试代码:
#include<stdio.h>
#include<iostream>
#include<math.h>
#include<algorithm>
#include<string.h>
using namespace std;
int main(){
int n,ans;
for(int i=1;i<=10;++i){
printf("%d\n",(int)pow(5,i));
printf("%.0lf\n",pow(5.0,i));
}
return 0;
}
运行结果: