汉诺塔程序的设计。在屏幕上输出10个盘子从A柱移到C柱的步骤,每个步骤之前有序号
最佳答案
#include <stdio.h>
void hanoi(int n, char a, char b, char c);
int main()
{
hanoi(10, 'A', 'B', 'C');
return 0;
}
void move(char x, char y)
{
static int ct = 1;
printf("%d:%c->%c\n", ct++, x, y);
}
void hanoi(int n, char a, char b, char c)
{
if(n == 1)
move(a, c);
else
{
hanoi(n - 1, a, c, b);
move(a, c);
hanoi(n - 1, b, a, c);
}
}
最佳答案由网友 whoami1978 提供
其他回答
暂无其它回答!