栏目分类:
子分类:
返回
终身学习网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
终身学习网 > IT > 软件开发 > 后端开发 > C/C++/C#

【数据结构】递归示例:汉诺塔(7.5)

C/C++/C# 更新时间:发布时间: 百科书网 趣学号
递归之汉诺塔


代码

#include 
int c = 0;
void move(char x, int n, char z)
{
    printf("第 %d 步: 将 %d 号盘从 %c 移到 %cn", ++c, n, x, z);
}
void hanoi(int n, char x, char y, char z)
{
    if (n == 1)
        move(x, 1, z);
    else
    {
        hanoi(n-1, x, z, y);
        move(x, n, z);
        hanoi(n-1, y, x, z);
    }
}

int main()
{
    int n;
    printf("3个塔 a, b, c,最初圆盘在a, 中间盘b, 目标盘c.");
    printf("输入圆盘数:");
    fflush(stdout);
    scanf("%d", &n);

    hanoi(n, 'A', 'B', 'C');

    return 0;
}
转载请注明:文章转载自 www.051e.com
本文地址:http://www.051e.com/it/1033433.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 ©2023-2025 051e.com

ICP备案号:京ICP备12030808号