标题:turboc中关于溢出的问题,大家指点一下
只看楼主
tiana
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2006-1-23
 问题点数:0 回复次数:4 
turboc中关于溢出的问题,大家指点一下

这个是自己编的小函数,求m,n的组合,就是 n ,在执行8以前的时候能正常运行,但是到8的时候就溢出了,但是我的s设为 long int 型了阿,为什
C m
么还是溢出了阿?实在是想不明白,大家指点一下。
程序如下:
#include <stdio.h>
void main()
{int i,n;unsigned int s=1;
scanf("%d",&n);
if(n==0) printf("error");
else
{ for(i=1;i<=n;i++)
s*=i;
printf("\n%d",s);
}
}

搜索更多相关主题的帖子: turboc 
2006-01-24 20:05
tiana
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2006-1-23
得分:0 
说明一下,用的是m!/(n!*(m-n)!)的方法。
2006-01-24 20:08
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
得分:0 

printf("\n%d",s);


九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2006-01-24 20:22
zushuboderen
Rank: 1
等 级:新手上路
帖 子:112
专家分:0
注 册:2005-12-24
得分:0 

搞什么啊,不是组合吧?就是个阶乘啊
printf("\n%u",s);


冷静点............. 耐心点.............
2006-01-25 13:37
tiana
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2006-1-23
得分:0 

不好意思,这是个子函数,我发现就是这块出的错,所以只传了子函数!
谢谢!!糗

2006-01-26 11:25



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-43901-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.051097 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved