| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 618 人关注过本帖
标题:递归问题
只看楼主 加入收藏
longeww
Rank: 1
等 级:新手上路
帖 子:17
专家分:7
注 册:2010-9-29
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:8 
递归问题
下面这个程序是求n!,在fun()函数里实现,但是当我输入5时,为什么没输出,请各位大侠帮帮忙,先谢过了
#include<iostream>
using namespace std;

int n;
int fun(int n);
int main()
{
   int k=0,m=0;
   cout<<"请输入要求的数值:"<<endl;
   cin>>k;
   if((k==1)||(k==0))
          m=1;
   else if(k>1)
       m=fun(k);
  cout<<k<<"!="<<m<<endl;
   return 0;
   
}
int fun(int n)
{
    int k=0;
   
    k=n*fun(n-1);
   
   
    return k;
}
搜索更多相关主题的帖子: 递归 
2010-10-31 17:02
m21wo
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:4
帖 子:440
专家分:1905
注 册:2010-9-23
收藏
得分:10 
程序代码:
#include<iostream>
using namespace std;

int n;
int fun(int n);
int main()
{
   int k=0,m=0;
   cout<<"请输入要求的数值:"<<endl;
   cin>>k;
   if((k==1)||(k==0))
          m=1;
   else if(k>1)
       m=fun(k);
  cout<<k<<"!="<<m<<endl;
   return 0;
  
}
int fun(int n)
{
   if(n==1)    //一个递归都要有出口
       return 1; 
   else
      return n*fun(n-1);
}

If You Want Something, Go Get It, Period.
2010-10-31 17:49
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:5 
呵呵,属于初学者的惯常错误。
摆脱初学的表现就是写的时候虽然还是忘了,但一发现是死循环很快能自己查出错误~~
2010-10-31 19:55
小鱼漂流
该用户已被删除
收藏
得分:2 
提示: 作者被禁止或删除 内容自动屏蔽
2010-10-31 22:17
ljt
Rank: 6Rank: 6
等 级:侠之大者
威 望:3
帖 子:191
专家分:431
注 册:2009-4-6
收藏
得分:1 
其实递归和循环差不多,都要有一个条件限制的,别弄成无线循环了


[ 本帖最后由 ljt 于 2010-11-1 17:14 编辑 ]
2010-11-01 17:10
sunmingchun
Rank: 4
来 自:安徽-滁州
等 级:业余侠客
帖 子:198
专家分:277
注 册:2010-4-2
收藏
得分:0 
lz没有结束递归的条件。2楼是正确的。
2010-11-01 22:56
南国利剑
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:29
帖 子:1165
专家分:3536
注 册:2010-4-12
收藏
得分:0 
同意二楼的看法

南国利剑
2010-11-02 01:22
无名可用
Rank: 4
等 级:业余侠客
帖 子:79
专家分:259
注 册:2010-7-27
收藏
得分:2 
这个递归的一定要if的语句吗,我看C语言的递归都是用if当做控制是否到头了,
不知道还有其他的不。
    呵呵,递归的关键还是函数调用自身,也就是一个问题可以分为若干个子问题,而每一个子问题的解决方法又与原问题一致,此时就可以用到递归了。
    书上的例子仅是最简单的递归调用形式,当然这种形式可以被循环取代。但有些问题的解决方法递归特征非常明显,就可以用递归来解决这些问题。像扫雷中当点击一个非雷的方块时,四周的非雷方块也会自动显示出来。。不要被书本上的形式所束缚。哈哈,以上只是个人的愚见。
2010-11-02 16:22
longeww
Rank: 1
等 级:新手上路
帖 子:17
专家分:7
注 册:2010-9-29
收藏
得分:0 
回复 2楼 m21wo
太感谢了,我又学到了一点知识
2010-11-02 22:55
快速回复:递归问题
数据加载中...
 
   



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

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