#include <stdio.h>
#include <ctype.h>
#include<stdlib.h>
#include <stdarg.h>
void move(int n,char a,char b)
{
printf("第%d个盘自从%c移动到%c/n",n,a,b);
}
void hanrta(int n,char x,char y,char z)
//把n个盘从x移动到z,用y做辅助柱子
{
if(n==1)
//若只有一个盘,则直接把这个盘从x柱子移动到z柱子
move(1,x,z);
else {
//把n-1个从x移动到y,用z做辅助柱子
hanrta(n-1,x,z,y);
//把第n个盘(最底下的那个盘子了)从x移动到z
move(n,x,z);
//把n-1个盘子,从y移动到z,用x做辅助柱子
hanrta(n-1,y,x,z);
}
}
void main(void)
{
hanrta(2,'x','y','z');
}