|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 求1!+2!+3!+4!+……+20!
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
45809
人关注过本帖
标题:
求1!+2!+3!+4!+……+20!
只看楼主
加入收藏
jiangwu10057
等 级:
黑侠
威 望:
1
帖 子:341
专家分:667
注 册:2009-3-25
第
71
楼
收藏
得分:0
我想超过-3.4e-38至3.4e38。
的数要用数组输出了或者说以字符串输出 了
当是···不会实现·······
2009-10-25 13:31
举报帖子
使用道具
赠送鲜花
zqb7899
等 级:
业余侠客
帖 子:159
专家分:238
注 册:2009-10-16
第
72
楼
收藏
得分:0
回复 68楼 zqb7899
最后的正确答案应该是这样:
!
和
1
1
1
2
2
3
3
6
9
4
24
33
5
120
153
6
720
873
7
5040
5913
8
40320
46233
9
362880
409113
10
3628800
4037913
11
39916800
43954713
12
479001600
522956313
13
6227020800
6749977113
14
87178291200
93928268313
15
1307674368000
1401602636313
16
20922789888000
22324392524313
17
355687428096000
378011820620313
18
6402373705728000
6780385526348313
19
121645100408832000
128425485935180313
20
2432902008176640000
2561327494111820313
[
本帖最后由 zqb7899 于 2009-10-25 13:37 编辑
]
2009-10-25 13:33
举报帖子
使用道具
赠送鲜花
jokercodes
等 级:
新手上路
帖 子:4
专家分:0
注 册:2009-10-5
第
73
楼
收藏
得分:0
#include<stdio.h>
void main()
{
int long sum=0;
int i,a,j;
for(i=1;i<=20;i++)
{
for(j=1,a=1;j<=i;j++)
{
a=a*j;
}
sum+=a;
}
printf("answer:%d\n",sum);
}
2009-10-25 13:56
举报帖子
使用道具
赠送鲜花
zqb7899
等 级:
业余侠客
帖 子:159
专家分:238
注 册:2009-10-16
第
74
楼
收藏
得分:0
回复 73楼 jokercodes
我用WIN-TC编译执行,结果为:answer:-1511
结果不对吧
2009-10-25 14:14
举报帖子
使用道具
赠送鲜花
华飞
等 级:
论坛游民
帖 子:18
专家分:18
注 册:2009-10-23
第
75
楼
收藏
得分:0
#include<stdio.h>
int main(void)
{
int i,j,fact,sum;
fact=1;sum=0;
for(i=1;i<=20;i++){
for(j=1;j<=i;j++){
fact=fact*j;
}
sum=sum+fact;
}
printf("%d",sum);
return 0;
}
2009-10-25 16:43
举报帖子
使用道具
赠送鲜花
zqb7899
等 级:
业余侠客
帖 子:159
专家分:238
注 册:2009-10-16
第
76
楼
收藏
得分:0
回复 63楼 zqb7899
#include <stdio.h>
main()
{
double sum=1,total=0;
int i;
for(i=1;i<=20;i++)
{
sum=sum*i;
total=total+sum;
}
printf("total=%f.0\n",total);
getch();
}
用一个for就可以了。
结果为 total=2561327494111820290
最接近准确值 2561327494111820313
2009-10-31 15:42
举报帖子
使用道具
赠送鲜花
xiepanqi
等 级:
论坛游民
帖 子:43
专家分:55
注 册:2009-10-24
第
77
楼
收藏
得分:0
头文件<stdio.h>里好像没getch()函数吧
2009-11-10 11:03
举报帖子
使用道具
赠送鲜花
一梦浮生
来 自:重庆
等 级:
新手上路
帖 子:2
专家分:0
注 册:2016-3-19
第
78
楼
收藏
得分:0
看来是老帖子了,可不可以只引用三个量达到目的呢?
2016-03-19 14:31
举报帖子
使用道具
赠送鲜花
一梦浮生
来 自:重庆
等 级:
新手上路
帖 子:2
专家分:0
注 册:2016-3-19
第
79
楼
收藏
得分:0
我的程序是#include"stdio.h"
void main(void)
{float n,s,t,i;
s=0;
for(n=1;n<=20;n++){
t=1;
for(i=1;i<=n;i++)
t=t*i;s=s+t;}
printf("1!+2!+3!+4!+...+20!=%e\n",s);
}
可是我很想知道这道题能不能只要三个量做出来
2016-03-19 14:32
举报帖子
使用道具
赠送鲜花
hui528169
等 级:
新手上路
帖 子:1
专家分:0
注 册:2016-11-6
第
80
楼
收藏
得分:0
可以用三个变量达到的。其实不需要每个数的阶乘都从1开始算一次,那样需要上面的两层循环。
public class test{
public static void main( String[]args){
int i;
long n=1, m= 0;
for(i=1;i<=20;i++)
{
n = n*i;
m = m+ n;
}
System.out.println(m);
}
}
2016-11-06 22:23
举报帖子
使用道具
赠送鲜花
80
8/8页
1
2
3
4
5
6
7
8
快速回复:
求1!+2!+3!+4!+……+20!
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.018391 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved