#include <stdio.h>
void f(int n,char a,char b,char c);
void platemove(char a,char c);
int tocal=0;
int main()
{
int n;
printf("请输入盘子中n:");
scanf("%d",&n);
f(n,'A','B','C');
return 0;
}
void f(int n,char a,char b,char c)
{
if(n==1)
platemove(a,c);
else
{
f(n-1,a,c,b);
platemove(a,c);
f(n-1,b,a,c);
}
}
void platemove(char a,char c)
{
tocal++;
printf("%3d:%c->%c\n",tocal,a,c);
}
hanoi问题
最新推荐文章于 2024-04-20 19:46:01 发布