int类型溢出了
#include <stdio.h>
#include <math.h>
double fac(int n,double x)
{
int i;
double result=1;
for(i=1;i<=n;i++){
result*=(x / i);
}
//printf("%lf\n",result);
return result;
}
int main()
{
double x;
scanf("%lf",&x);
int n=1;
double result=0,mid;
int flag=1;
while(flag){
mid = fac(n,x);
result+=mid;
if(mid<0.00001)
flag=0;
n++;
}
printf("%.4lf",result+1);
return 0;
}
int装不下太大的阶乘
https://apull.blog.csdn.net/article/details/127473080