一道关于递归的问题!

mengyu_102 2003-10-05 10:46:13

教程 P408 例9。5程序
帮我分析递归过程
#include <stdio.h>
#define MAXN 100
int a[MAXN];
void comb(int m,int k)
{
int i,j;
for(i=m;i>=k;i--){
a[k]=i;
if(k>1)
comb(m-1,k-1);
else{
for(j=a[0];j>0;j--)printf("%4d",a[j]);
printf("\n");
}
}
}
void main()
{
a[0]=3;comb(5,3);
...全文
40 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
bg54 2003-10-07
  • 打赏
  • 举报
回复
强强改的是正确的,是不是comb(i-1,k-1),
我今年没抱名,我明年考,书我明天买来看,我不管书上,强强改的对。
toyjoy 2003-10-07
  • 打赏
  • 举报
回复
没错1


fuzq 2003-10-05
  • 打赏
  • 举报
回复
运行的结果好像出错了???? 应该是吧
fuzq 2003-10-05
  • 打赏
  • 举报
回复
书上有说的,,
自己看看书吧,,
fuzq 2003-10-05
  • 打赏
  • 举报
回复
呵,,不是书上的错,是楼主不小心抄错了,
if(k>1)
comb(m-1,k-1);

应该是if(k>1)
comb(i-1,k-1);
eagle758 2003-10-05
  • 打赏
  • 举报
回复
我都有一道递归的问题:
2001年中程下午最后一道程序那个
if(r>=0) return r+1
点解不懂。边个高手能帮下呀,如果有那告诉下我。多谢。
roseforyan@msn.com
mintwlf 2003-10-05
  • 打赏
  • 举报
回复
用VC++6.0的调试器跟踪一下不就什么都知道了!
LEON198451 2003-10-05
  • 打赏
  • 举报
回复
很简单啊,你也是要考中程的吧,我也是,如果有什么问题加我,大家一起讨论啦,QQ:3716351,到12号这几天长期在线啊
LEON198451 2003-10-05
  • 打赏
  • 举报
回复
没有什么问题我,我模拟了的.
yonge23 2003-10-05
  • 打赏
  • 举报
回复
书没错啦!!!


运行结果怎么会出错 了呢!!!

你可以自己模拟运行一下嘛!

2,948

社区成员

发帖
与我相关
我的任务
社区描述
就计算机等级考试、软件初、中、高级不同级别资格考试相关话题交流经验,共享资源。
c1认证c4javac4前端 技术论坛(原bbs)
社区管理员
  • 软件水平考试社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧