汉诺塔递归演示
2014-03-06 19:24
211 查看
#include <stdio.h> int sum(int n);//1+2+3+......+100的递归函数 void hanNoTa(int n,char A,char B,char C); //汉诺塔函数 int main(int argc, const char * argv[]) { int Sum = sum(100); printf("%d\n",Sum); char zhu1 = 'A'; //定义柱子A char zhu2 = 'B'; //定义柱子B char zhu3 = 'C'; //定义柱子C hanNoTa(3, zhu1, zhu2, zhu3); return 0; } int sum(int n){ int Sum; if (1 == n) { Sum = 1; } else Sum = n + sum(n-1); return Sum; } void hanNoTa(int n,char A,char B,char C){ //第N个在A上的盘子借助B柱子移到C柱子上 if (1 == n) { printf("将编号为%d的盘子从%c柱子移到%c柱子\n",n,A,C); } else{ hanNoTa(n-1,A,C,B); printf("将编号为%d的盘子从%c柱子移到%c柱子\n",n,A,C); hanNoTa(n-1, B,A,C); }
相关文章推荐
- 九层汉诺塔递归和非递归模拟演示(C语言)
- c语言汉诺塔演示程序设计(基于堆栈、递归)
- 汉诺塔非递归实现,并用图像演示
- python经典的递归问题----汉诺塔
- 汉诺塔问题 递归
- 汉诺塔、反向输出问题--利用递归实现
- 汉诺塔的递归实现
- 递归---汉诺塔和斐波那契数列
- 汉诺塔问题(递归、用栈替代递归)
- 用递归方法求解汉诺塔问题。
- 递归:斐波拉契,阿克曼与汉诺塔(php实现)
- 对于汉诺塔问题的递归解决
- 023,024递归:这帮小兔崽子,汉诺塔
- 汉诺塔 递归与非递归实现 (1)
- 以汉诺塔来理解递归
- C语言用栈与递归模拟汉诺塔
- Python小练习 - 递归实现“汉诺塔”
- 对汉诺塔的递归理解
- 递归及递推系列之 汉诺塔III hdoj 2064
- 从汉诺塔讲递归的思考方式