(递归)Hanoi Tower

#include<stdio.h>
void move(int n,char a,char b){
 printf("将第%d个盘子从%c移动到%c\n",n,a,b);
 return;
}
void hanoi(int n,char a,char b,char c){
 if(n==1){
  move(n,a,c);
  return;
 }
 hanoi(n-1,a,c,b);
 move(n,a,c);
 hanoi(n-1,b,a,c);
}

int main()
{
 int n;
 scanf("%d",&n);
 hanoi(n,'A','B','C');
 return 0;
}

猜你喜欢

转载自www.cnblogs.com/lijiahui-123/p/12262699.html