zoukankan      html  css  js  c++  java
  • 春季学期第十一周作业

    本周作业头

    这个作业属于那个课程 C语言程序设计II
    这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/computer-scienceclass4-2018/homework/3203
    我在这个课程的目标是 学习递归函数
    这个作业在哪个具体方面帮助我实现目标 能够灵活的运用递归函数
    参考文献 C语言程序设计II

    基础作业

    7-1 汉诺塔问题* (10 分)

    汉诺塔是一个源于印度古老传说的益智玩具。据说大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘,大梵天命令僧侣把圆盘移到另一根柱子上,并且规定:在小圆盘上不能放大圆盘,每次只能移动一个圆盘。当所有圆盘都移到另一根柱子上时,世界就会毁灭。

    请编写程序,输入汉诺塔圆片的数量,输出移动汉诺塔的步骤。

    输入格式

    圆盘数 起始柱 目的柱 过度柱
    

    输出格式

    移动汉诺塔的步骤
    每行显示一步操作,具体格式为:
    盘片号: 起始柱 -> 目的柱
    其中盘片号从 1 开始由小到大顺序编号。
    

    输入样例

    3
    a c b
    

    输出样例

    1: a -> c
    2: a -> b
    1: c -> b
    3: a -> c
    1: b -> a
    2: b -> c
    1: a -> c
    

    1、实验代码:

    #include<stdio.h>
    void hannota(int n,char a,char c,char b);
    int main(void)
    {
        int n;
        char a,c,b;
        scanf("%d %c %c %c",&n,&a,&c,&b);
        hannota(n,a,c,b);
        
        return 0; 
     } 
     
     void hannota(int n,char a,char c,char b)
     {
        if(n==1)
               printf("1: %c -> %c
    ",a,c);
        else{
            hannota(n-1,a,b,c);
            printf("%d: %c -> %c
    ",n,a,c);
            hannota(n-1,b,c,a);
         }
     }
    

    2、流程图:
    3、本题中出现的错误或遇到的问题:刚开始看题没看懂,后来问室友怎么写。
    4、运行截图:

    学习进度:

    周/日期 这周所花时间 代码行数 学到的知识点简介
    四周/3/16~3/24 12 150 一维数组与二维数组的应用
    五周/3/24~3/29 7 150 字符串的储存运算都可以用一维数组来实现
    六周/3/31~4/5 10 220 指针函数的定义与运用,指针,数组和地址的关系
    七周/4/6~4/12 8 250 字符串和指针的运用
    八周/4/13~4/19 8 250 分配动态内存
    九周/4/20~4/26 10 200 结构的运用
    十一周/5/5~5/10 10 250 递归函数的运用
  • 相关阅读:
    C# 图片与Base64的相互转化
    LeetCode 303. Range Sum Query – Immutable
    LeetCode 300. Longest Increasing Subsequence
    LeetCode 292. Nim Game
    LeetCode 283. Move Zeroes
    LeetCode 279. Perfect Squares
    LeetCode 268. Missing Number
    LeetCode 264. Ugly Number II
    LeetCode 258. Add Digits
    LeetCode 257. Binary Tree Paths
  • 原文地址:https://www.cnblogs.com/caoe666/p/10846481.html
Copyright © 2011-2022 走看看