#include<stdio.h>
void hannuota(int n, char A, char B, char C)
{
if (n == 1)
printf("把第%d个盘子从%c柱子移动到%c柱子\n", n, A, C);
else
{
hannuota(n - 1, A, C, B);//A借助C柱把n-1个盘子移到B
printf("把第%d个盘子从%c柱子移动到%c柱子\n", n, A, C);
hannuota(n - 1, B, A, C);//B借助A柱把n-1个盘子移到C柱
}
}
int main()
{
int n;
printf("请输入要移动的盘子数:");
scanf_s("%d", &n);
hannuota(n, 'A',' B',' C');
return 0;
}
汉诺塔
最新推荐文章于 2021-01-23 00:37:50 发布