linux设计实验报告-模板

2026/1/21 19:54:41

char sex[3]; 以及保存下一节点地址的指针*next。 float grade[6]; struct ST *next; };

struct *SI; *SI为指向结构体ST的的指针变量。 2、单向链表的建立

这里采用动态建立链表的方法,即每次在满足条件的前提下,向内存动态申请大小为一个节点数据类型大小的内存空间,并输入当前节点的相关信息。将新节点通过指针域与已建立的链表相连。由此建立包含N个节点信息的单向链表。

3、有关数据结构的基本操作 (1)单链表的插入 (2)单链表的删除 (3)单链表的查找 (4)单链表的排序

(三)数据存取

数据存取采用的是线性链表的存取结构,其特点是:使用一组任意的存储单元存储线性表中的数据元素,这些存储单元之间在逻辑结构上虽然是相互关联的,但是其在物理结构上并不是连续的。数据元素之间的逻辑关系是由节点中的指针域指示的,这种存储结构是非顺序映像或者叫做链式映像。在使用中,我们只需关心数据元素的逻辑次序而不必关心它的真正存储地址。

我们在单链表第一个元素所在的节点之前设置一个节点—头结点。头结点的指针域存储第一个元素所在节点的存储位置;而数据域并没有存储任何信息。

基于以上建立单向链表的思想,我们在对节点元素进行存取的过程中只需找到该链表的头结点,即可完成对数据元素的存取操作。

(四)数据录入方法设计

链表是一种动态存储结构,所需的存储空间只有在执行malloc之后,才能申请到一个

可用节点空间;free的作用是系统回收一个节点,回收后的空间可以备作再次生成节点时使用。动态建立链表共有两种基本方法:方向建立链表、正向建立链表。这里采用反向建立链表的数据录入方法。

数据录入的方法是:从线性表的最后一个元素开始,从后向前依次插入到当前链表的第一个节点之前。在满足循环条件的前提下,依次输入当前节点的相关信息,并通过节点的指针域将当前节点插入已建立的链表当中。

五、算法分析与流程

(一)函数定义

void display(int Max);信息展示函数定义 void menu();菜单函数定义

int display_module(int Max);输出全部学生信息(按指定课程成绩降序排列,按平均成绩降

序排列)

int read_imformation();在指定的学生前或后再插入一个学生的信息

int add_module(int Max); 输入学生的基本数据(包括学号、姓名、性别和5门课的成绩) int find_num_module(int Max);从磁盘中读入存储的信息 int find_name_module(int Max);

int modify_module(int Max);修改指定学生的信息 int sort_module(int Max);统计指定课程不及格的人数 int save_module(int Max);将信息文件存入磁盘中 int del_module(int Max);删除指定学生的信息

(二)函数流程图


linux设计实验报告-模板.doc 将本文的Word文档下载到电脑
搜索更多关于: linux设计实验报告-模板 的文档
相关推荐
相关阅读
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 10

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219