|
![]() | 作者: mars_bys [mars_bys]
![]() |
登录 |
求N的阶乘![N!]在和大于是1000时跳出! 程序如下↓ MAIN() { int p, i=1, n, s=0; while(s<=1000) { p=1; for(n=1;n<=i;i++) { p=p*n; n=n+1; s=s+p; } } printf("%d"s); } } 在程序上应该有逻辑上的错误! [此贴被 迎月默想(mars_bys) 在 08月14日20时45分 编辑过] [此贴被 迎月默想(mars_bys) 在 08月14日20时48分 编辑过] |
地主 发表时间: 04-08-13 21:52 |
![]() | 回复: bug_me [bug_me] ![]() |
登录 |
main() { int n=1,s=1; while(s<=1000) { n++; s=s*n; } printf("%d",s/n); } [此贴被 寒枫(bug_me) 在 08月14日23时21分 编辑过] |
B1层 发表时间: 04-08-14 03:33 |
![]() | 回复: lida1818 [lida1818] ![]() |
登录 |
借楼上的程序一用![]() main() { int n=1,s=1; while(s<=1000) { n++; s=s*n; } printf("%d",s/n); } |
B2层 发表时间: 04-08-14 09:53 |
![]() | 回复: mars_bys [mars_bys] ![]() |
登录 |
楼上的。先谢过你的回复,但你哪个程序是求和大于1000跳出。我的意思是求N的阶乘。。。 |
B3层 发表时间: 04-08-14 20:12 |
![]() | 回复: bug_me [bug_me] ![]() |
登录 |
TO烟雨:谢了,我的臭毛病 TO楼主,不明白你啥意思 [此贴被 寒枫(bug_me) 在 08月14日21时02分 编辑过] |
B4层 发表时间: 04-08-14 21:02 |
![]() | 回复: mars_bys [mars_bys] ![]() |
登录 |
N的阶段乘就是1!+2!+3!。。。。。。+N! 2!=1*1*2 3!=1*1*2*3 |
B5层 发表时间: 04-08-14 21:51 |
![]() | 回复: lida1818 [lida1818] ![]() |
登录 |
相信你在签名里说的是真事。![]() ![]() |
B6层 发表时间: 04-08-14 21:58 |
![]() | 回复: bug_me [bug_me] ![]() |
登录 |
/*实现阶乘小于1000的最大输出*/ main() { int n=1,s=1; while(s<=1000) { n++; s=s*n; } printf("%d",s/n); } /*实现SUM小于1000的阶乘和*/ main() { int n=1,s=0,t=1; while(s<1000) { t*=n; s+=t; n++; } printf("%d",s-t); getch(); } 自己看看有什么不同吧,注释就不加了 [此贴被 寒枫(bug_me) 在 08月14日23时27分 编辑过] |
B7层 发表时间: 04-08-14 22:22 |
![]() | 回复: lida1818 [lida1818] ![]() |
登录 |
我说的是楼主的签名。 |
B8层 发表时间: 04-08-14 22:25 |
![]() | 回复: mars_bys [mars_bys] ![]() |
登录 |
我哪里错了吗? |
B9层 发表时间: 04-08-14 22:44 |
![]() | 回复: xuwudi2004 [xuwudi2004] ![]() |
登录 |
1000!>>32767 有可能就是这个原因~! |
B10层 发表时间: 04-08-15 08:34 |
![]() | 回复: zzxzzx [zzxzzx] ![]() |
登录 |
MAIN() { int p, i=1, n, s=0; while(s<=1000) { p=1; for(n=1;n<=i;i++)//本来应该是n++,不过你的i=1,因此也循环不了.// { p=p*n; n=n+1; s=s+p; } } printf("%d"s); } } |
B11层 发表时间: 04-08-15 09:19 |
![]() | 回复: mars_bys [mars_bys] ![]() |
登录 |
这个题是书上的例题。我觉得它有问题,所以过来请教的。 |
B12层 发表时间: 04-08-16 16:05 |
![]() | 回复: mars_bys [mars_bys] ![]() |
登录 |
还有就是。以上枫给的程序是一直累加直到大于是1000跳出。题目的要求不是这个。 |
B13层 发表时间: 04-08-16 16:06 |
![]() | 回复: Garu [syshunter] ![]() |
登录 |
那你就 while(n<=1000) {s=s*n; n++; } 就是了 |
B14层 发表时间: 04-08-16 19:24 |
![]() | 回复: lida1818 [lida1818] ![]() |
登录 |
TO:Garu 你这样行得通吗? 1000!是多大的数? TO:楼主 问问题,不是猜迷。 说清楚题意,从你顶楼开始看到最后我是越看越糊涂,根本不知道你想表达什么。(我估计没有一个人能看懂) |
B15层 发表时间: 04-08-16 22:16 |
![]() | 回复: Garu [syshunter] ![]() |
登录 |
楼主的意思已经说的很明白了。这样的问题在很多讨论区也讨论过,为什么就不看看别人是怎么做的呢? 原贴:http://www.chinaunix.net/jh/23/312721.html THEBEST 回复于:2004-05-01 12:29:27 钱能书上一练习: 代码: |
B16层 发表时间: 04-08-17 12:56 |
![]() | 回复: Garu [syshunter] ![]() |
登录 |
#g++ -o test test.c # ./test Please input n of n! : 10 The 1 's 50 bit: 3628800 # ./test Please input n of n! : 20 The 1 's 50 bit: 2432902008176640000 # ./test Please input n of n! : 50 The 1 's 50 bit: 30414093201713378043612608166064768844377641568960 The 2 's 50 bit: 512000000000000 |
B17层 发表时间: 04-08-17 13:01 |
![]() | 回复: mars_bys [mars_bys] ![]() |
登录 |
让各位劳神了。真不好意思。 以后我会注意的! |
B18层 发表时间: 04-08-17 17:46 |
|
20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon
粤ICP备05087286号