求C语言编程 计算:sum=1-1/2!+1/3!-1/4!+ …… -1/10!

 我来答
陈一根1
推荐于2018-04-12 · 业精于勤荒于嬉行成于思毁于随-陈一根
陈一根1
采纳数:44 获赞数:168

向TA提问 私信TA
展开全部

自己看一下,,好久不自己编啦

#include<stdio.h>

void main()

{    double sum=0.0,i,t=1;

       int s=1;

   

 for(i=1.0;i<=10.0;i++)

 {

       t*=i;

    sum+=s/t;

       s=-s;

 }

 printf("%f",sum);

}

力波鸿0i
2011-01-04 · TA获得超过1259个赞
知道小有建树答主
回答量:461
采纳率:100%
帮助的人:391万
展开全部
int main() {
double sum=0.0;
int i;
// 迭代,sum=0,然后10是偶数所以加-1.0,再除以10,此时sum=-1/10
// 9是奇数,所以加1.0,得sum=-1/10+1,再除以9,此时sum=1/9 - 1/10/9
// 8是奇数,所以加-1.0,得sum=-1/10/9+1/9-1,再除以8,此时sum=-1/8 + 1/9/8 - 1/10/9/8
// ......
// 最后有 sum=1-1/2!+1/3!-1/4!+ …… -1/10!
for(i=10;i>0;i--) {
sum+=(i%2==0)?-1.0:1.0;
sum/=i;
}
printf("sum = %f\n",sum);
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
liufashuai
2011-01-04 · TA获得超过605个赞
知道小有建树答主
回答量:282
采纳率:0%
帮助的人:284万
展开全部
#include<stdio.h>

void main(void)
{
double sum =1.0,t = 1.0;
int n = 1;
while(++n <= 10)
{
t *= (-1) *1.0 / n;
sum += t;

}
printf("%.2lf",sum);
}

可以根据需要控制输出结果的小数点的位数,我保留了两位小数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hanchuandj
2011-01-04 · TA获得超过152个赞
知道答主
回答量:48
采纳率:0%
帮助的人:46.1万
展开全部
#inlclude <stdio.h>
#define N 10

//计算N的阶层的值
int rank(int n)
{
int i,sum;
for(i=1;i<=n;i++)
sum*=i;
return sum;
}

void main()
{
int s=0,flag=0,i;
for(i=1;i<=N;i++)
{
if(flag==0)
{
s+=1/(rank(i));
flag=1;
}
else
{
s-=1/(rank(i));
flag=0;
}
}
printf("计算结果为:%d\n",s);
}
自己直接在百度上面写的,没有编译,应该是这样吧!!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友1b066b3
2011-01-04 · TA获得超过1486个赞
知道小有建树答主
回答量:711
采纳率:0%
帮助的人:413万
展开全部
int jc(int i)
{
int a,b =1;
for(a=1;a<=i;a++)
{
b = b x a ;
}
return b;
}
void main()
{
int s,i ,l =0,sum =0;
for(i = 1 ; i<=10 ; i ++)
{
s = jc(i);
if(l == 0 )
{
sum = sum + 1/s ;
}
else
{
sum = sum - 1/s ;
}
}
printf("%d\n",sum);
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式