没看懂,求x的值你居然scanf了,那怎么试啊,其实就是e^x-1 的泰勒展开
for(i=1;(fabs(b/a))<=1e-5;i++)
这个循环至少要来一次 可以用 DO-WHILE 语句
long int i=1,term2=1;
double x,res=0.0,term1=0.0,k,term3=1.0;
scanf("%lf",&x);
do
{
term2*=i;
term3*=x;
k=term3/term2;
res+=k;
i++;
}while(fabs(k)>=0.001);
printf("%.3lf\n",res);