pta求幂级数展开的部分和 部分正确不知道哪里错了

#include <stdio.h>
#include <math.h>
int main ()
{
int i,j;double sum=0.0,x,fm=1,fz,item;scanf("%lf",&x);for(i=1;;i++){for(j=1;j<=i;j++){fm*=j;}if(fabs(pow(x,i)/fm)<0.00001){break;}fz=pow(x,i);item=fz/fm;sum+=item;fm=1;}printf("%.4lf",sum+1);return 0;}