#include<cstdio>
void hanio(int n,char a,char b,char c);
int main(void)
{
int n;
printf("input the number of disk:");
scanf("%d",&n);
printf("the steps for %d disk are:\n",n);
hanio(n,'a','b','c');
return 0;
}
void hanio(int n,char a,char b,char c){
if(n==1)
printf("%c-->%c\n",a,b);
else{
hanio(n-1,a,c,b);
printf("%c-->%c\n",a,b);
hanio(n-1,c,b,a);
}
}
Hanoi塔问题题解
最新推荐文章于 2025-09-08 22:09:36 发布
该博客详细展示了如何使用C语言实现汉诺塔问题的递归算法。通过输入盘子数量,程序将打印出移动步骤。核心代码在于hanio函数的递归调用,实现了从一个柱子到另一个柱子的正确移动。
393

被折叠的 条评论
为什么被折叠?



