国开数据结构(本)课程实验报告.docx
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构 课程 实验 报告
- 资源描述:
-
数据结构课程实验报告 学生姓名 学 号 班 级 指导老师 实验名称 线性表的链式存储结 构 实验成绩 实验报告 实 验 概 述 实验目的: 掌握线性表的链式存储结构及基本操作,深入了解顺序表的基本特性。 实验要求: 1、建立一个评委打分的单向链表。 2、显示删除相关结点后的链表信息。 3、显示要求的结果。 请认真阅读以上实验的问题描述,按照实验要求认真独立完成实验。如果在实 验过程中遇到困难,你可以通过以下辅助方式,顺利完本钱实验。 实验基本原理: 1、声明线性表的数据类型; 2、一般在头文件中声明(该头文件中还应包括操作接口的声明); 3、告诉编译器该数据类型占内存空间的大小; 4、定义线性表类型的变量; 5、在函数中或实现代码中的定义; 6、告诉编译器为变量分配内存空间; 7、操作线性表类型变量; 8、操作变量中保存的数据; 实 验 内 容 实验设计思路、步骤和方法等: 1、评委信息结点用结构变量存储,包含三个成员项,即姓名、年龄、评分。 结构类型定义如下: 〃定义评委信息 struct pw ( char name [8]; 〃姓名 short age; //年龄 float score; 〃评分 ); 2、用头插法或尾插法建立带头结点的单链表,本实验采用尾插法。 3、遍历链表并逐次比拟求最高分和最低分。 4、在链表中物理删除,即实际删除最高分和最低分结点;也可以进行逻辑删 除,即在被删结点的数据域设置一个删除标记,本实验采用物理删除的方法。 5、遍历链表,累加求和,计算总分及平均分,并输出相关信息。 如果对于自己编写好的程序不知道是否正确,你可以查看“实验程序”进行核查。 实验过程(实验中涉及的记录、数据、分析): 〃实验1.1线性表的链接存储结构 #include#include#include define PWRS 5 〃定义评委人数〃定义评委信息 struct pw (char name [8] ; //姓名 short age; 〃年龄float score; 〃评分 ); typedef struct pw PW;〃定义链表结点 struct node( PW data;struct node * next; };typedef struct node NODE; NODE *create (int n); 〃建立单链表void input (NODE *s, int i) ; //输入第 i 个评委信息 void output (NODE *s); 〃输出评委信息void traverse (NODE *head); 〃遍历链表 void calc (NODE *head) ; //计算及数据处理 void main(){ NODE *head=NULL;head=create (PWRS) ; //建立评委信息单链表 printf (〃\n所有评委的评分信息如下:\n〃);traverse (head); 〃输出所有评委的评分信息 calc (head); 〃计算成绩 printf (〃该参赛者去掉一个最高分和一个最低分后的有效评委的评分信息 如下:\n〃);traverse (head); 〃输出有效评委的评分信息 ) 〃尾插法建立带头结点的单链表 NODE *create(int n) {NODE *head, *p, *q;int i; p=(NODE*)malloc(sizeof(NODE));head=p; q=p; p->next=NULL;for(i=l; i<=n; i++){ p= (NODE*)malloc(sizeof(NODE));input (p, i);p->next=NULL; q->next=p;q=p; return (head);} 〃输入评委信息,包括姓名、年龄和评分void input (NODE *s, int i) { printf (〃请输入第%d个评委的姓名、年龄和评分:〃,i);scanf(〃%s%d%f〃, &s->data. name, &s->data. age, &s->data. score);} 〃输出评委信息void output(NODE *s) {printf (〃评委姓名:%6s年龄:%d评 分:%6. 2f\n〃, s->data. name, s->data. age, s->data. score);) 〃遍历链表,输出所有评委的评分信息void traverse (NODE *head){ NODE *p=head->next; 〃指向第一个结点while (p!=NULL) { output (p);p=p-〉next;} printf(〃\n〃);) 〃输出最高分及最低分评委信息,删除最高分及最低分结点并计算参赛者的最后平 均分void calc(NODE *head){ NODE *q, *p, *pmin, *pmax; float sum=0; 〃总分 float ave=0; 〃平均分 〃查找最高分和最低分并计算总分p=head->next;pmin=pmax=p;while(p!=NULL) { sum+=p->data. score;if (p->data. score>pmax->data. score) pmax=p; //pmax指向最高分结点if(p->data. scoredata, score) pmin=p; //pmin指向最低分结点 C : \Docusient s and Sett ings\All Users\^ffi\sy 1 _ 1 \Debug\sy 1__6 5 0 0 8 8 7 8 9 7 5 6 8 2 8 4 3 4 5 3 a b c d e 6 5 0 0 8 8 7 8 9 7 5 6 8 2 8 4 3 4 5 3 a b c d e 分分分分分 评评评评评 口口 口口口 年禾禾禾不 3N^3E43N3tM =1 -==1 一---=1- rEciEiE左 尔省答苞省 4T7 "/Yr 4TT 4TT 牙£音A开K音K音A 评评评评评 个 12 3 4 5 BBS 入入入入入 ^1 ^HJ A a^i A l^i A i_i A tf " aiBf 青青青青青 s I s S •• 评评评评评 5 6 8 2 8 4 3 4 5 3 T=心心朋蛤心 口三三二-三三 力.耳耳耳耳拜 息 信 a b c d e 分 评 委答答答答答 rr_ L 二二二 _ 二_二__ 历平干平平正 d 年龄:52 评分:90.00 b 年龄:36 评分:75.00 会出.商分的评查姓名: 合出最显分的评委姓名: 81.33 一个最高分和一个最低分后的平均得分为: 个最低分后的有效评委的评分信息如下: 86.00 80.00 78.00 W: 评分, 去掉一个最高分和一 :a年龄,45 :c隼龄:48 :e年龄338 至名名 导三二4二二 费姓姓 参案萋 亥平平平 any key to cont inue实验结果: 实验的心得体会: 实 验 小 结 1、线性表采用链式存储(链表)时,用结构变量存储结点,动态生成结点, 用指针链接结点,能有效利用存储空间,插入删除方便。 2、链表不能随机访问,是顺序访问方式,可从某结点访问到其后继结点, 通常对单链表的遍历即从表头结点顺序访问到表尾结点,任何在链表上做的查找运算都是 在遍历 的基础上进行的。 3、单链表操作的关键步骤包括: (1)建立链表的头插法:指针变量P开辟单元,生成结点,指针变量 q始终指向头结点;操作为:p->next=q->next; q->next=p; (2)建立链表的尾插法:指针变量p开辟单元,生成结点,指针变量 q始终指向尾结 点; 操作为:q->next=p; q=p; (3)插入:p结点的后面插入新结点s;操作为:s->next=p->next; p->next=s; 4、删除:p, q指向相邻结点,q结点是p结点的后继,删除q结点; 操作为: p->next=q->next; 5、遍历:p指向后继结点;操作为:p=p >nex 实验思考: 指 导 教 师 评 语指导教师 日期展开阅读全文
咨信网温馨提示:1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。




国开数据结构(本)课程实验报告.docx



实名认证













自信AI助手
















微信客服
客服QQ
发送邮件
意见反馈



链接地址:https://www.zixin.com.cn/doc/4575445.html