C语言中一个计算题1!+2!+3!+...+20!是什么意思,怎么写程序

必须要告诉我!是什么意思,这个题让求什么,本人分不多,如果正确答案本人追加30分... 必须要告诉我!是什么意思,这个题让求什么,本人分不多,如果正确答案本人追加30分 展开
 我来答
百度网友eb385985e
2009-09-28 · TA获得超过2180个赞
知道小有建树答主
回答量:1384
采纳率:0%
帮助的人:1564万
展开全部
/* Note:Your choice is C IDE */
/*既然你的这问题中包含三问我就一个一个的回答:
1、n!(n为自然数)表示自然数n的阶乘,所谓的阶乘就是从1一直乘到n。如1!=1,2!=1X2,3!=1X2X3!如此类推,20!=1X2X3X4……20。
2、如果理解1条了,我想这也算多余了。就是求1+1X2+1X2X3+1X2X3X4+……+1X2X3X……20.
3、编程方法:*/
double fun(int x)//由于所求数很大,所以要用双精度,否则出错
{
if (x == 1)
{
return 1;
}
else
{
return (double)(x*fun(x-1));
}
}
#include "stdio.h"
void main()
{
int i,n;
double sum=0;//双精度数
printf("请输入所求阶乘数:");
scanf("%d",&n);
for(i=1;i<=n;i++)
sum+=fun(i);
printf("所求阶乘和为sum=%lf",sum);//注意用双精度输出
}
//应该满足楼主要求了,不懂之处再问吧
iloveMotel168
2009-09-28 · TA获得超过190个赞
知道答主
回答量:101
采纳率:0%
帮助的人:105万
展开全部
"!"是阶乘的意思
比如:5! = 1*2*3*4*5

举例。。
1!+2!+3!+4!
= 1 + 1*2 + 1*2*3 + 1*2*3*4

那么1!+2!+3!+...+20!懂了么?

程序的话,您可以用递归
提示一个
5! 可以用这样的递归函数 sum = fun(5)

int fun(int x)
{
if (x == 1)
{
return 1;
}
else
{
return (x*fun(x-1));
}
}

那么求1!+2!+3!+...+20!的和,自己写吧~
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
a35925061
2009-09-29
知道答主
回答量:49
采纳率:0%
帮助的人:21.3万
展开全部
求1的阶乘加到20的阶乘的和。
long fun(int n)
{
if n=1
return 1;
else return n*fun(n-1);
}
main()
{
int i;
long sum=0;
for(i=1;i<=20;i++)
{
sum=sum+fun(i);
}
printf("%ld",sum);
}
这个题目我以前好像做过,好像用长整数就可以满足要求。
楼主自己运行一下吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
冰至诚
2009-09-28 · TA获得超过3008个赞
知道小有建树答主
回答量:1156
采纳率:0%
帮助的人:1176万
展开全部
这是求1的阶乘加到20的阶乘
下面是代码:
#include <stdio.h>u>
void main()
{int s=0,i;
for(i=1;i<=20;i++)
s+=i*i;
printf("%d",s);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
q422038217
2009-09-28
知道答主
回答量:9
采纳率:0%
帮助的人:0
展开全部
求1的阶乘加到20的阶乘的合
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(7)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式