C语言解决汉诺塔问题

2018-07-20    来源:open-open

容器云强势上线!快速搭建集群,上万Linux镜像随意使用
C语言解决汉诺塔问题
#include "stdio.h"
void hanoi(int n,char one ,char two,char three);
void move(char aa,char bb);
int main()
{
    int n;
    printf("汉诺塔问题,将盘子从a,借助于b移动到c.\n");
    printf("请输入盘子数:");
    scanf("%d",&n);
    printf("移动顺序为:\n");
    hanoi(n,'a','b','c');
    return 0;
}
//将n个盘子从one借助于two移动到three
void hanoi(int n,char one ,char two,char three)
{
    if(n==1)
    {
        move(one,three);
    }
    else
    {
        hanoi(n-1,one,three,two);
        move(one,three);
        hanoi(n-1,two,one,three);
    }
}
 
//从a移动到b
void move(char a,char b)
{
    printf("%c--->%c\n",a,b);
}

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。

上一篇:实现千元分隔符javascript代码

下一篇:css实现一款漂亮的查询框