2021年国家开放大学-数据结构-实验报告2-线性表的链式存储结构.docx
《2021年国家开放大学-数据结构-实验报告2-线性表的链式存储结构.docx》由会员分享,可在线阅读,更多相关《2021年国家开放大学-数据结构-实验报告2-线性表的链式存储结构.docx(8页珍藏版)》请在优知文库上搜索。
1、数据结构课程实验报告学生姓名学号班级指导老师实验名称线性表的链式存储结构实验成绩实验报告实验概述实验目的:掌握线性表的链式存储结构及基本操作,深入了解顺序表的基本特性。实验要求:(I)建立一个评委打分的单向链表。(2)显示删除相关结点后的链表信息。(3)显示要求的结果。实验基本原理:用尾插法建立带头结点的单链表,逐次比较求最高分和最低分,用物理删除的方法累加求和,计算总分及平均分。实验内容实验设计思路、步骤和方法等:某项比赛中,评委们给某参赛者的评分信息存储在一个带头结点的单向链表中,编写程序:(1)显示在评分中给出最高分和最低分的评委的有关信息(姓名、年龄、所给分数等)。(2)在链表中删除一
2、个最高分和一个最低分的结点。(3)计算该参赛者去掉一个最高分和一个最低分后的平均成绩。实验过程(实验中涉及的记录、数据、分析):(1)评委信息结点用结构变量存储,包含三个成员项,即姓名、年龄、评分。结构类型定义如下:/定义评委信息structpw(charname8;/姓名shortage;年龄floatscore;/评分;(2)用头插法或尾插法建立带头结点的单链表,本实验采用尾插法。(3)遍历链表并逐次比较求最高分和最低分。(4)在链表中物理删除,即实际删除最高分和最低分结点;也可以进行逻辑删除,即在被删结点的数据域设置个删除标记,本实验采用物理删除的方法。(5)遍历链表,累加求和,计算总分
3、及平均分,并输出相关信息。程序代码如下:实验1.1线性表的链接存储结构#include#include#includedefinePWRS5定义评委人数定义评委信息structpwcharname8;姓名shortage;年龄floatscore;评分;typedefstructpwPW;定义链表结点structnodePWdata;structnode*next;;typedefstructnodeNODE;NODE*create(intn);建立单链表voidinput(NODE*s,inti);/输入第i个评委信息voidoutput(NODE*s);输出评委信息voidtraverse
4、(NODE*head);/遍历链表voidcalc(NODE*head);计算及数据处理voidmain()NODE*head=NULL;head=create(PWRS);建立评委信息单链表printfn所有评委的评分信息如下:n);traverse(head);输出所有评委的评分信息calc(head);/计算成绩Printf(该参赛者去掉一个最高分和一个最低分后的有效评委的评分信息如下:n);traverse(head);/输出有效评委的评分信息尾插法建立带头结点的单链表NODE*create(intn)NODE*head,*p,*q;inti;P=(NODE*)malloc(sizeo
5、f(NODE);head=p;q=p;p-next=NULL;for(i=l;inext=NULL;q-next=p;q二P;return(head);输入评委信息,包括姓名、年龄和评分voidinput(NODE*s,inti)Printf(请输入第%d个评委的姓名、年龄和评分:,i);scanf(%sl%f,&s-data.name,s-data.age,s-data.score);)输出评委信息voidoutput(NODE*s)Printf(评委姓名:%6s年龄:%d评分:%6.2fn”,s-data.name,s-data.age,s-data.score);)遍历链表,输出所有评委
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2021 国家 开放 大学 数据结构 实验 报告 线性 链式 存储 结构