"实验5-实验报告1:单链表的定义、建立、查找与删除,结点输出与排序方法"

需积分: 0 0 下载量 10 浏览量 更新于2024-01-24 收藏 990KB PDF 举报
实验5-实验报告1:超市商品管理系统链表实现 实验地点:基础实验大楼 实验时间:2019.1.1 学生姓名:袁昊男 学号:2018091618008 指导教师:白忠建 学院名称:电子科技大学信息与软件工程学院 课程名称:C语言程序设计 理论教师:白忠建 实验教师:白忠建 实验学时:4 学时 一、实验目的: 本次实验的目的是为了帮助我们掌握单链表的定义和使用方法,了解单链表的建立方法,掌握单链表中结点的查找与删除,掌握输出单链表结点的方法,学习链表结点排序的一种方法,以及实践C语言创建菜单的方法和结构体的定义和使用方法。 二、实验原理: 1. 结构体:结构体是可能具有不同类型的值(成员)的集合,结构的元素(在C语言中的说法是结构的成员)可能具有不同的类型。而且每个结构成员都有名字,并且可以使用这个名字访问结构成员。 2. 单链表:单链表是由一系列节点组成的数据结构,每个节点都包含一个数据域和一个指向下一个节点的指针。单链表中的第一个节点称为头节点,最后一个节点称为尾节点,头节点不存储有效数据。 3. 创建链表:链表的创建包括头节点的初始化和插入数据节点。通过遍历输入的数据,不断创建新的节点并将其链接到链表的尾部。 4. 查找与删除节点:从头节点开始遍历链表,通过比较每个节点的数据域与目标数据进行查找,找到后进行删除操作。 5. 输出链表节点:通过遍历链表,依次输出每个节点的数据域。 三、实验过程: 1. 首先,我们定义一个结构体来表示商品的信息,包括商品编号、商品名称、商品价格等。 2. 接着,我们通过创建一个头节点来初始化链表。 3. 接下来,我们通过遍历输入的商品信息,依次创建新的节点,并将其插入到链表的尾部。 4. 完成链表的创建后,我们可以通过遍历链表来输出每个商品的信息。 5. 在输出完整链表后,我们可以实现对链表节点的排序,可以选择不同的排序方法,如冒泡排序、插入排序等。 6. 添加了菜单功能,以便用户可以通过输入选择不同的操作,如添加、删除、查找等。 7. 最后,用户可以选择退出程序,结束操作。 通过以上实验步骤,我们能够掌握单链表的定义和使用方法,了解单链表的建立方法,掌握单链表中结点的查找与删除方法,掌握输出单链表结点的方法,学习链表结点排序的一种方法,实践C语言创建菜单的方法,以及结构体的定义和使用方法。 总结起来,本次实验通过实现超市商品管理系统,使用单链表的数据结构,让我们更深入地了解了链表的使用方法和相关操作。这对我们以后的编程学习和实践中,掌握数据结构和算法有着重要的作用。这次实验的成功完成,为我们今后的学习和实践积累了宝贵的经验。