标题:[求助]这个程序中递归调用的详细流程,它是怎么工作的!
只看楼主
devfhpgah
Rank: 1
来 自:江西
等 级:新手上路
帖 子:204
专家分:0
注 册:2007-8-16
 问题点数:0 回复次数:0 
[求助]这个程序中递归调用的详细流程,它是怎么工作的!

这个程序是解决一个河内塔的问题,并非真正的移动,这只是一个移动的方案!
请哪位仁兄帮我解决一下难道,我实在看不懂Hanoi()函数是怎么工作的,希望能把详细工作步骤写一下,谢谢:比如:第一步做什么,第二步做什么等等,
假设用户输入的是3!


#include <stdio.h>
void main()
{
int number;
printf("The Tower of Hanoi program.\n");
printf("Please enter the number of diske :");
scanf("%d",&number);
Hanoi('A','B','C',number);
}

int Hanoi(char one,char two,char three,int n) /*函数调用*/
{

if(n==1)
printf("%c-->%c.\n",one,three);
else
{
Hanoi(one,three,two,n-1);
printf("%c-->%c.\n",one,three);
Hanoi(two,one,three,n-1);
}
}

搜索更多相关主题的帖子: 递归 流程 河内 number 
2007-08-16 04:25



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




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

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