jamespp 发表于 2016-12-23 19:47:38

汉诺塔

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语言版)

terminal- 发表于 2016-12-25 00:07:01

{:5_91:}
页: [1]
查看完整版本: 汉诺塔