递归函数的经典例子(汉诺塔问题)
2015-06-22 13:36
183 查看
#include
void HN(int n,char a,char b,char c);
int main(int argc,char *argv[])
{
int Dish_num;
printf("Please Input the Dish num: ");
scanf("%d",&Dish_num);
while(Dish_num != 0){
printf("%d个盘子的移动步骤如下:\n",Dish_num);
HN(Dish_num,'A','B','C');
printf("Please
Input the Dish num: ");
scanf("%d",&Dish_num);
}
while(1);
return 0;
}
void HN(int m,char a,char b,char c)
{
if(m==1){
printf("From
%c to %c\n",a,c);
}
else{
HN(m-1,a,c,b);
printf("From
%c to %c\n",a,c);
HN(m-1,b,a,c);
}
}
void HN(int n,char a,char b,char c);
int main(int argc,char *argv[])
{
int Dish_num;
printf("Please Input the Dish num: ");
scanf("%d",&Dish_num);
while(Dish_num != 0){
printf("%d个盘子的移动步骤如下:\n",Dish_num);
HN(Dish_num,'A','B','C');
printf("Please
Input the Dish num: ");
scanf("%d",&Dish_num);
}
while(1);
return 0;
}
void HN(int m,char a,char b,char c)
{
if(m==1){
printf("From
%c to %c\n",a,c);
}
else{
HN(m-1,a,c,b);
printf("From
%c to %c\n",a,c);
HN(m-1,b,a,c);
}
}
相关文章推荐
- poj1042贪心方法或者dp方法
- 4th Median of Two Sorted Arrays -- leetcode
- QT实现,通过URL下载文件的接口实现
- 微信公众平台开发:OAuth2.0网页授权
- 保护眼睛的桌面设置
- 5亿整数的大文件,怎么排?
- C++程序设计--对象分册(第5章)
- 搭建andriod开发环境
- 黑马day06 EL表达式之cout&cset&cremove标签
- 微信公众平台开发:JS API支付
- 由js apply与call方法想到的js数据类型(原始类型和引用类型)
- CSS3感应鼠标背景闪烁和图片缩放效果
- 导入时如何定制spring-boot依赖项的版本
- 设计模式之单例模式
- 51nod 1165 整边直角三角形的数量
- 判断回文,位与,位或
- java基础—文件的切割与合并
- Billboard(线段树区间更新与求值)
- Javascript原型与对象等知识
- 学习了ZKW费用流