| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 342 人关注过本帖
标题:求大神指点,哪儿错了。
只看楼主 加入收藏
水浙江雪
Rank: 1
等 级:新手上路
帖 子:104
专家分:3
注 册:2014-5-17
结帖率:95.83%
收藏
已结贴  问题点数:20 回复次数:9 
求大神指点,哪儿错了。
一个计算组合数的函数combinNum(int m,int n)。计算结果由函数返回计算组合数的公式是: c(m,n)=m!/(n!*(m-n)!)
#include <iostream>
using namespace std;

int combinNum(int m,int n)
{
    int fun(int m);
    int i,j,k,t;
    i=fun(m);
    j=fun(n);
    k=fun(m-n);
    t=i/(j*k);
    return t;
}

int fun(int n)
{
    int f;
    if(n==0||n==1)
    {
        f=1;
    }
    else
    {
        f=fun(n-1)*n;
    }
    return f;
}

int combinNum(int m,int n);
int fun(int m);
int main()
{
    int m,n,c;
    printf("please input two integer:\n");
    scanf("%d,%d",&m,&n);
   
    if(m<n||m<0||n<0)
    {
        printf("data error!please input data again!(m>0;n>0;m>=n)");
    }
    else
    {
        c=combinNum(m,n);
        printf("c(m,n)=m!/(n!*(m-n)!)=%d",c);
    }   
}

求大神指点,我到底哪儿错了?
搜索更多相关主题的帖子: include return 
2014-05-17 19:13
kwxx
Rank: 8Rank: 8
等 级:蝙蝠侠
帖 子:309
专家分:913
注 册:2009-5-11
收藏
得分:5 
你的程序应该没错。但是由于你所选择的算法不好。所以m不能太大,应该不能超过15吧。否则恐怕就出现溢出错误了。
2014-05-17 19:26
水浙江雪
Rank: 1
等 级:新手上路
帖 子:104
专家分:3
注 册:2014-5-17
收藏
得分:0 
恩恩,谢谢指点!

打败别人,只是人生的赢家;打败自己,才是命运的强者
2014-05-17 19:31
水浙江雪
Rank: 1
等 级:新手上路
帖 子:104
专家分:3
注 册:2014-5-17
收藏
得分:0 
可是即使是m小于15,总输入数据,结果总是1,为什么,求解,谢谢。

打败别人,只是人生的赢家;打败自己,才是命运的强者
2014-05-17 20:20
azzbcc
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:江西财经大学
等 级:贵宾
威 望:81
帖 子:3293
专家分:12919
注 册:2012-11-4
收藏
得分:0 
函数先实现,再声明的方式在哪学的?


[fly]存在即是合理[/fly]
2014-05-17 20:34
水浙江雪
Rank: 1
等 级:新手上路
帖 子:104
专家分:3
注 册:2014-5-17
收藏
得分:0 
一开始学就这样了,我会改的

打败别人,只是人生的赢家;打败自己,才是命运的强者
2014-05-17 20:42
水浙江雪
Rank: 1
等 级:新手上路
帖 子:104
专家分:3
注 册:2014-5-17
收藏
得分:0 
求解哪里错了

打败别人,只是人生的赢家;打败自己,才是命运的强者
2014-05-17 20:43
kwxx
Rank: 8Rank: 8
等 级:蝙蝠侠
帖 子:309
专家分:913
注 册:2009-5-11
收藏
得分:15 
估计你是输入的格式错了。输入时两个数据之间一定有逗号。如:10,5
2014-05-17 22:14
水浙江雪
Rank: 1
等 级:新手上路
帖 子:104
专家分:3
注 册:2014-5-17
收藏
得分:0 
恩恩,谢谢,就是你说的这个原因,非常感想。

打败别人,只是人生的赢家;打败自己,才是命运的强者
2014-05-17 22:30
水浙江雪
Rank: 1
等 级:新手上路
帖 子:104
专家分:3
注 册:2014-5-17
收藏
得分:0 
是非常感谢

打败别人,只是人生的赢家;打败自己,才是命运的强者
2014-05-17 22:30
快速回复:求大神指点,哪儿错了。
数据加载中...
 
   



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

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