汉诺塔
C语言程序:汉诺塔问题(经典递归案例)(C语言版)
C-Free运行通过,源代码如下:
#include
void main()
{
void hanoi(int n,char x,char y,char z);
void move(char a,char b);
int n;
printf("input the number of diskes\n");
scanf("%d",&n);
hanoi(n,'A','B','C');
}
void hanoi(int n,char x,char y,char z)
{
void move(char a,char b);
if(n==1)
move(x,z);
else
{
hanoi(n-1,x,z,y);
move(x,z);
hanoi(n-1,y,x,z);
}
}
void move(char a,char b)
{
printf("%c-->%c\n",a,b);
}
运行结果如图:
汉诺塔问题(经典递归案例)(C语言版)
{:5_91:}
页:
[1]