c语言问题:u Calculate e 我不理解

img


我是非专业学生,下面这个代码是答案,想问一个问题!写在代码里面了,求解答!



#include<stdio.h>  
int f(int j)  
{  
    int i,sum=1;  
  
    for(i=1;i<=j;i++)  
    sum*=i;  
    return sum;  
}    
int main()  
{  
    int n,i;  
    double num=2.5;  
      double  e;  
    printf("n e\n");  
    printf("- -----------\n");  
    printf("0 1\n1 2\n2 2.5\n");  
    for(i=3;i<=9;i++)  
    {  
         e= 1.0*1/f(i);  //这里为什么要写成1.0*1/f(i)?不能直接1/f(i)吗
           num+=e;  
            printf("%d %.9lf\n",i,num);  
      }  
    return 0;   
}  

可以