文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>汉诺塔问题的C语言实现

汉诺塔问题的C语言实现

时间:2011-03-24  来源:涵曦

汉诺塔 - 解决思路

1.如果只有一个金片,则把该金片从源移动到目标棒,结束。

2.如果有n个金片,则把前n-1个金片移动到辅助的棒,然后把自己移动到目标棒,最后再把前n-1个移动到目标棒

//Tower of Hanoi 汉诺塔
#include <stdio.h>
void TOH(int n, char A, char B, char C)
{
if (n == 1)
{
printf(
"Movedisk %d from %c to %c \n",n,A,C);
return;
}
TOH(n
-1, A, C, B);
printf(
"Movedisk %d from %c to %c \n",n,A,C);
TOH(n
-1, B, A, C);
}

void main()
{
int m, n;
printf(
"请输入测试数据的次数");
scanf(
"%d", &m);
while (m != 0)
{
printf(
"请输入数字n以解决n阶汉诺塔问题:\n");
scanf(
"%d",&n);
TOH(n,
'A','B','C');
m
--;
if (m == 0)
{
return;
}
}
}
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载