#include<stdio.h>
void Hanoi(int n,char a,char b,char c)
{
if(n==1)
printf("move %c to %c \n",a,c);
else
{
Hanoi(n-1,a,c,b);
printf("move %c to %c \n",a,c);
Hanoi(n-1,b,a,c);
}
}
void main()
{
int n;
char A = '1',B = '2',C = '3';
printf("enter the number of disks");
scanf("%d",&n);
printf("the solution for n = %d\n",n);
Hanoi(n,A,B,C);
}
本文介绍了一个经典的递归问题——汉诺塔,并通过C语言实现了解决方案。该程序能够根据用户输入的盘子数量,输出移动步骤,帮助读者理解递归思想及其应用。
2668

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



