求如下级数,在主函数中输入n,并输出结果。 A=1+1/(1+2)+1/(1+2+3)+1/(1+2+3+4)+……+1/(1+2+3+…+n)

1.使用(非递归)方法,求如下级数,在主函数中输入n,并输出结果。A=1+1/(1+2)+1/(1+2+3)+1/(1+2+3+4)+……+1/(1+2+3+…+n)求救... 1.使用(非递归)方法,求如下级数,在主函数中输入n,并输出结果。
A=1+1/(1+2)+1/(1+2+3)+1/(1+2+3+4)+……+1/(1+2+3+…+n)求救你啦,2.再使用(递归法)写出程序
展开
 我来答
匿名用户
2020-05-10
展开全部


#include <stdio.h>


double FeiDigui(int n) {

  double sum = 0;

  for (int i = 1; i <= n; i++) {

    int t = i * (i + 1) / 2;

    sum += 1.0 / t;

  }

  return sum;

}


int main() {

  int  n;

  scanf("%d", &n);

  printf("%f\n", FeiDigui(n));

  return 0;

}

#include <stdio.h>


double DiGui(int a, int b, double r) {

  if (a > b) return r;

  else {

    int t = a * (a + 1) / 2;

    return DiGui(a + 1, b, 1.0 / t + r);

  }

}


int main() {

  int  n;

  scanf("%d", &n);

  printf("%f\n", DiGui(1, n, 0));

  return 0;

}

shine1991
科技发烧友

2020-05-10 · 智能家居/数码/手机/智能家电产品都懂点
知道顶级答主
回答量:4.7万
采纳率:82%
帮助的人:2.3亿
展开全部

#include <stdio.h>


int main()

{

    int i,n,t;

    double sum;

    scanf("%d",&n);

    for(sum=0,t=1,i=1;i<=n;t+=++i)

        sum+=1.0/t;

    printf("%lf\n",sum);

    return 0;

}

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式