// hanoi.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
void move(int n,char moveStart,char moveEnd){
printf("move %d from %c to %c\n",n,moveStart,moveEnd);
}
void hanoi(int n,char moveStart,char moveTemp,char moveEnd){
if (n == 1)
{
move(n,moveStart,moveEnd);
}
else
{
hanoi(n-1,moveStart,moveEnd,moveTemp);
move(n,moveStart,moveEnd);
hanoi(n-1,moveTemp,moveStart,moveEnd);
}
}
int _tmain(int argc, _TCHAR* argv[])
{
int n;
printf("请输入hanoi塔的 层数:");
scanf("%d",&n);
hanoi(n,'x','y','z');
return 0;
}
用递归实现 hanoi塔
最新推荐文章于 2024-03-09 17:01:39 发布