递归实现汉诺塔

来源:互联网 发布:psv舰娘为什么淘宝被禁 编辑:程序博客网 时间:2024/06/07 07:43

汉诺塔不是一个新问题,在这里只是记录下学习的过程。

代码如下

#include<stdio.h>

hannuota(int n,char x,char y,char z)
{
 if(n==1)
  printf("move %d from %c to %c\n",n,x,z);
 else
 {
  hannuota(n-1,x,z,y);
  printf("move %d from %c to %c\n",n,x,z);
  hannuota(n-1,y,x,z);
 }
}

void main()
{
 char ch1='A';
 char ch2='B';
 char ch3='C';
 int n;
 printf("input number n:");
 scanf("%d",&n);
 hannuota(n,'A','B','C');
 
}

 

原创粉丝点击