第十一周作业

本周作业头

这个作业属于那个课程 C语言程序设计II
这个作业要求在哪里 https://www.cnblogs.com/pengchen511/p/10564067.html
我在这个课程的目标是 掌握递归函数
这个作业在那个具体方面帮助我实现目标 汉诺塔问题
参考文献 C语言程序设计

基础作业

单选题


编程题

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

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

题图1.jpg

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

输入格式

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

输出格式

移动汉诺塔的步骤
每行显示一步操作,具体格式为:
盘片号: 起始柱 -> 目的柱
其中盘片号从 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 hanio (int n, char a, char b, char c);
int main()
{
    int n;
    char a,b,c;
    
    scanf("%d
",&n);
    scanf("%c %c %c",&a,&b,&c);
    hanio(n,a,b,c);
    
    return 0;
}

void hanio (int n, char a, char b, char c)
{
    if(n==1)
    	printf("%d: %c -> %c
",n,a,b);
    else
	{
        hanio (n-1,a,c,b);
        printf("%d: %c -> %c
",n,a,b);
        hanio (n-1,c,b,a);
    }
}

2)设计思路

3)本体调试过程中遇到的问题及解决办法

本体书上有解题思路,以及类似的题,跟上书上的思路没有什么问题

4)运行结果截图

预习作业

第十二周的教学内容是:第十一章 指针进阶

请大家查阅资料,思考如下问题:

请举实例解释以下几个概念:数组指针,指针数组,指针函数,函数指针,二级指针,单向链表。(无实例不给分)

请用自己的理解回答。如果有引用他人的文字,请一定要标出出处(使用Markdown的链接方式)。

数组指针:就是指向数组的指针。 例:int (*p)[10];

指针数组:数组元素全为指针的数组。 例:int *p[n];

指针函数:返回类型为指针的函数。 例:int *max(int x, int y)

函数指针:指向函数的指针变量。 例:int (*max)(int a, int b)

二级指针:一个指针指向另一个指针。

例:假设有一个 int 类型的变量 a,p1是指向 a 的指针变量,p2 又是指向 p1 的指针变量,它们的关系如下图所示:

将这种关系转换为C语言代码:
?
1
2
3

int a =100;
int *p1 = &a;
int **p2 = &p1;

指针变量也是一种变量,也会占用存储空间,也可以使用&获取它的地址。C语言不限制指针的级数,每增加一级指针,在定义指针变量时就得增加一个星号。p1 是一级指针,指向普通类型的数据,定义时有一个;p2 是二级指针,指向一级指针 p1,定义时有两个*。
引用:https://www.jb51.net/article/91090.htm

单向链表:由若干个同一结构类型的“结点”依次串接,其方向为单向。 例:head p1->next p2->next pn->next

学习进度统计

周/日期 这周所花时间 代码行 学到知识点简介 目前比较困惑的问题
3/9--3/15 6h 88 文件的储存 文件的数据处理
3/16--3/22 9h 69 二维数组 ···
3/23--3/29 11h 112 二维数组 ···
3/30--4/6 8h 58 字符串的使用 ···
4/7--4/13 6h 66 指针的运用 ···
4/14--4/20 7h 98 指针的运用 ···
4/21--4/27 9h 108 指针与字符串 内存动态分配
4/28--5/4 7h 87 结构的运用 ···
5/5--5/11 6h 69 递归函数 ···

学习感悟

本周学完了递归函数,马上就要结课了,要自己课后多学习了。

结队编程

本周题目过难结队编程效果不佳,两个人都无从下手。

原文地址:https://www.cnblogs.com/H468/p/10846900.html