• 第十一周编程总结


    |第十一周 |五道题 |
    |作业属于课程 |C语言程序设计 |
    |作业要求 |https://edu.cnblogs.com/campus/zswxy/computer-scienceclass1-2018/homework/3205|
    |课程目标 |学会将多个函数组织起来,学会使用递归函数解决问题|
    |在哪方面帮我实现目标 |知道了什么是递归及其复杂性 |
    |参考文献 |https://i.cnblogs.com/EditPosts.aspx?opt=1|

    一、基础作业

    第一题

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

    题图1.jpg

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

    实验代码

    #include<stdio.h>
    void Hanot(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);
        Hanot(n,a,c,b);
        
        return 0; 
     } 
     
     void Hanot(int n,char a,char c,char b)
     {
        if(n==1)
               printf("1: %c -> %c
    ",a,c);
        else{
            Hanot(n-1,a,b,c);
            printf("%d: %c -> %c
    ",n,a,c);
            Hanot(n-1,b,c,a);
         }
     }
    

    设计思路

    第一步:编译头文件
    第二步:汉诺塔函数声明
    第三步:定义各种变量,输入n
    第四步:a为起始柱,c为目的柱,b为过渡柱
    第五步:定义汉诺塔函数
    第六步:完成步骤

    本题调试遇到的问题及解决方法


    错误:格式出现错误
    解决方法:读题认真

    流程图

    运行结果截图

    后面几题不会难度太大,所以我并未写。

    预习题

    1、指针数组
    例:
    char *a[5];(字符指针数组)
    数组的每个元素都是指针类型,用于存放内存地址。

    2、数组指针
    例:
    int a[4]={1,2,3,4};
    int *p;
    p=a;

    3、指针函数
    定义一个指针变量,接收函数的入口地址,让它指向函数,这就是函数指针通过指针调用函数。
    一般格式:(函数指针名) (参数表)
    例:
    fun函数
    (
    funptr)(3,5)

    4、函数指针
    一般格式:类型名(变量名)(参数类型名)
    例:int (
    funptr)(int int);

    5、二级指针
    一般定义:
    类型名 * *变量名
    例:
    int a=10,b=20,
    int pa=&a,pb=&b;
    int * ppa=&pa; ppb=&pb;
    所以
    ppa=10, *ppb=20;
    6、单向链表 (https://baike.sogou.com/v10718780.htm?fromTitle=单向链表)
    单向链表(单链表)是链表的一种,其特点是链表的链接方向是单向的,对链表的访问要通过顺序读取从头部开始。 通过指针连接起来,但是只能单向遍历的内存块。由于它是单向的,或者说不可逆的,所以我们可以把它比作我们的人生:小学->中学->大学->工作->养老。

    二、学习进度条


    三、描述结对编程的过程和结对编程的优缺点


    优缺点:在我思考问题时,编程对象会主动提出帮助,我写代码,他输入代码,合作愉快,互帮互助。

    四、学习感悟

    1、看书很重要,明白怎样运用知识来写代码。
    2、团结协作很重要,大家一起思考,共同完成作业。
    3、好好学习,天天向上。

  • 相关阅读:
    2020软件工程个人作业06——软件工程实践总结作业
    2020软件工程作业05
    2020软件工程作业00——问题清单
    2020软件工程作业03
    2020软件工程作业02
    2020软件工程作业01
    Ubuntu中安装最新 Node.js 和 npm
    英语学习单词篇一
    Golang之内存读写
    Golang之正则表达式的使用
  • 原文地址:https://www.cnblogs.com/yuhaner/p/10846343.html
Copyright © 2020-2023  润新知