hirokage 2022-05-25 21:16 采纳率: 100%
浏览 31
已结题

如何编写这个程序,求解答

img

如何编写函数里的程序,如果不用函数是不是更简单啊,有没有什么其他方法呀?

  • 写回答

1条回答 默认 最新

  • a5156520 2022-05-27 09:59
    关注

    一个实现,供参考:

    
    #include <stdio.h>
    
    
    int main(void){
        
        float fun();
        //void TestFunc();
        printf("无理数e的值是:%f\n",fun());
        //TestFunc();
    } 
    
    float fun(){
        
        
    
        int j;  //用于计算阶乘的循环变量 
        float t = 1;    // 阶乘 
        int n=1;   // 用于计算到几的阶乘 
        float sign = 1/t;  // 每一项的值 
        float e = 0;  // 结果e 
        e+=sign;  
    //    printf("t=%.2f,sign=%.2f,e=%.2f\n",t,sign,e);
        while(sign>=0.000001){  //如果每一项的值大于等于0.000001时就一直求e的值 
            
             //计算阶乘 
            for(j=1;j<=n;j++){
                t*=j;
            }
            sign = 1/t;  //每一项的值 
            e += sign;  //把每一项累加到e中,以便求e的近似值 
            //printf("t=%.2f,sign=%.2f,e=%.2f\n",t,sign,e);
            n++;    //指示下一次阶乘计算到几
            
            t=1;  //阶乘变量置1,以便开始计算下一个阶乘 
        }
        
        return e;
    }
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 6月5日
  • 已采纳回答 5月28日
  • 创建了问题 5月25日