汨罗市民政局电话:汉诺塔问题纯C求解

来源:百度文库 编辑:中科新闻网 时间:2024/05/07 04:10:16
要求:
A 纯C语言;
B 运用递归实现;
C 可以的话,能实现任意数目盘子的转换问题

main()
{
int n;
void hanoi(int n,char a,char b,char c);
printf("please input the number of disks to be moved:");
scanf("%d",&n);
hanoi(n,'a','b','c');
}
void hanoi(int n,char a,char b,char c)
{
if(n>0)
{
hanoi(n-1,a,c,b);
printf("\n move disc %d from pile %c to %c",n,a,b);
hanoi(n-1,c,b,a);
}
}