以下函数的功能是计算s=1+1/2!+1/3!+…+1/n!,请填空。 double run(int n) { double s=0.0,fac=1.0; int i,k=1; for(i=1;i<=n;i++) {【

admin2009-04-15  22

问题 以下函数的功能是计算s=1+1/2!+1/3!+…+1/n!,请填空。
   double run(int n)
   {  double s=0.0,fac=1.0;
    int i,k=1;
    for(i=1;i<=n;i++)
    {【  】;
      fac=fac/k;
      s=s+fac;
    }
   }

选项

答案k=k*i

解析 本题小通过for循环求s表达式中每一项的和,表达式“fac=fac/k;”求的是每一项的值,所以k的值应为n!,在求n!的时候,可以用上次循环阶乘的值乘i,就可以直接得此次n!,故木题填k=k*i。
转载请注明原文地址:https://kaotiyun.com/show/LaXp777K
0

最新回复(0)