c语言级数求和题

当前编程题:第四章循环结构设计---4.2.1(1)编程题《级数求和》输入一个正整数n,用3种方法分别计算下式的和(保留4位小数)。e=1+1/1!+1/2... 当前编程题:第四章循环结构设计---4.2.1(1) 编程题《级数求和》
输入一个正整数n,用3种方法分别计算下式的和(保留4位小数)。
e=1+1/1!+1/2!+1/3!+ …+1/n!
要求:使用一重循环,不使用自定义函数。
【输入形式】
从键盘输入一个正整数n。
【输入输出样例1】(下划线部分表示输入)
Input n: 10
e=2.7183
【输入输出样例2】(下划线部分表示输入)
Input n: 3
e=2.6667
【样例说明】
输入提示符后要加一个空格。其中“:”后要加一个且只能一个空格。
输出语句的“=”两边无空格。
英文字母区分大小写。必须严格按样例输入输出。
展开
 我来答
百度网友6fe74e2
2014-04-20 · TA获得超过6592个赞
知道大有可为答主
回答量:1973
采纳率:100%
帮助的人:242万
展开全部

#include "stdio.h"

int main()

{

        int sum=0;

        int i,mark=1,item;

        for(i=1;;i++)

        {

               item=mark*i*(i+1);

               sum+=item;

               mark=-mark;

               if(sum>999 && i%2==1)

                       break;

 

        }

        printf("i=%d,sum=%d\n",i,sum);//i表示哪一项,sum表示此时各项之和

 

}

福泽佑之IN
2014-04-19 · TA获得超过2473个赞
知道小有建树答主
回答量:727
采纳率:0%
帮助的人:691万
展开全部
#include<stdio.h>
double fact(int n)
{
    double ans = 1.0;
    int i;
    for(i = 1; i <= n; i++)
        ans *= i;
    return ans;
}
int main(void)
{
    int n, i; scanf("%d", &n);
    double ans = 1.0;
    for(i = 1; i <= n; i++)
        ans += 1.0 / fact(i);
    printf("e=%.4lf\n", ans);
    return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
顶顶顶顶分
2018-11-03
知道答主
回答量:1
采纳率:0%
帮助的人:800
展开全部
#include "stdio.h"
int main()
{
int sum=0;
int i,mark=1,item;
for(i=1;;i++)
{
item=mark*i*(i+1);
sum+=item;
mark=-mark;
if(sum>999 && i%2==1)
break;
}
printf("i=%d,sum=%d\n",i,sum);//i表示哪一项,sum表示此时各项之和
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
___人以类聚
推荐于2017-12-16
知道答主
回答量:10
采纳率:100%
帮助的人:10万
展开全部
/*一个计算n个数的平均值的函数*/
float ave(float *num,int n)
{
float cache=0.0;

int i=0;
for(;i<n;i++)

{
cache=cache+num[i];//求数的总和

}

return(cache/n);//返回平均值

}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
六季相灭1d
2014-04-19 · 超过59用户采纳过TA的回答
知道小有建树答主
回答量:129
采纳率:33%
帮助的人:87.9万
展开全部
#include "stdafx.h"
#include "stdio.h"
int main(int argc, char* argv[])

{

printf("input n: ");
int a=0;
scanf("%d",&a);
float ret = 1.0;
long b=1;
for(int i=1;i<a+1;++i)
{
b = b*i;
ret= ret + (float) 1/b;

}
//printf("e= %4f",ret);
printf("e= %0.4f",ret);

printf("Done");
return 0;
}

////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "stdio.h"
int main(int argc, char* argv[])

{

printf("input n: ");
int a=0;
scanf("%d",&a);
float ret = 1.0;
long b=1;
int i =1;
while(i<a+1)
{
b = b*i;
ret= ret + (float) 1/b;
}

//printf("e= %4f",ret);
printf("e= %0.4f",ret);

printf("Done");
return 0;
}

////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "stdio.h"
int main(int argc, char* argv[])

{

printf("input n: ");
int a=0;
scanf("%d",&a);
float ret = 1.0;
long b=1;
int i =1;
do
{
b = b*i;
ret= ret + (float) 1/b;
}while(i<a+1);

//printf("e= %4f",ret);
printf("e= %0.4f",ret);

printf("Done");
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式