下载此文档

大连海事大学2016-2017-1学期《数据结构》实验报告.docx


文档分类:研究报告 | 页数:约60页 举报非法文档有奖
1/60
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/60 下载此文档
文档列表 文档介绍
大连海事大学2016-2017-1学期《数据结构》实验报告选课序号:42班级:计科(二)班学号:******姓名:***指导教师:***成绩: (链表) (串) (二叉树) (链表) (客房管理程序脚本必须手写) (串) (二叉树) 。熟练掌握串模式匹配算法。熟练掌握二叉树应用的基本算法实现。(链表)实现功能:以带表头结点的单链表为存储结构,实现如下客房管理的设计要求。实验机时:8设计要求:(1)定义客房链表结点结构类型,以Hotel和*HLink命名,数据域:客房名称roomN、标准价格Price、入住价格PriceL(默认值=标准价格*80%)、床位数Beds、入住状态State(空闲、入住、预订,默认值为空闲),指针域:*next;(2)实现创建客房基本情况链表函数voidBuild(HLink&H),输入客房名称、标准价格、床位数,将入住价格、入住状态修改为默认值,建议用文件操作来输入数据;(3)实现函数voidupdateH(HLink&H,intbeds,char*state),将床位数为beds的客房入住状态改为state;(4)实现输出客房基本情况函数voidExp(HLinkH),输出所有客房的客房名称、标准价格、入住价格、床位数、入住状态;(5)函数voidAdd(HLink&H),将该链表中未入住的客房入住价格均加价20%;(6)函数voidupBed(HLink&H,intbeds),将该链表床位数不超过beds的结点都放在床位数超过beds的结点后面;(7)求出入住价格最高的客房函数HLinkFirstH(HLink&H),该函数内return语句返回入住价格最高的客房结点指针,返回前将该结点在链表中删除;(8)函数voidMoveK1(HLink&H,intk),将单链表中倒数第k个结点移到第一个结点位置,注意:严禁采用先计算链表长度n再减k(即n-k)的方法;(9)函数voidReverseN2(HLink&H),将单链表的正中间位置结点之后的全部结点倒置的功能,注意:严禁采用先计算链表长度n再除以2(即n/2)的方法;(10)主控函数main()调用以上函数,输出(3)、(5)、(6)、(7)、(8)、(9)处理后的链表内容、输出入住价格最高的客房基本情况。可能用到的函数: 从文件中读取客房数据:fscanf(文件指针,"%s%f,%d",p->roomN,&p->Price,&p->Beds); 输出客房数据:printf("%s%%%6d%8s\n",p->roomN,p->Price,p->PriceL,p->Beds,p->State); 字符串赋值函数:char*strcpy(char*,constchar*); 字符串比较函数:intstrcmp(constchar*,constchar*)#include<>#include<>#include<>typedefstructHNode//定义客房链表结点结构 { char roomN[7]; //客房名称 floatPrice; //标准价格 floatPriceL; //入住价格(默认值=标准价格*80%) int Beds; //床位数Beds char State[5]; //入住状态(值域:"空闲"、"入住"、"预订",默认值为"空闲" structHNode*next; //指针域 }Hotel,*HLink;(串)实现功能:从主串中第K个字符起,求出子串在主串中首次出现的位置,即模式匹配或串匹配。要求用三种模式匹配算法分别实现:朴素的模式匹配算法(BF算法)KMP改进算法(Next[])KMP改进算法(NextVal[])实验机时:6设计要求:首先设计一个含有多个菜单项的主控菜单程序,然后再为这些菜单项配上相应的功能。程序运行后,给出5个菜单项的内容和输入提示:、(Next[])(NextVal[])

大连海事大学2016-2017-1学期《数据结构》实验报告 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数60
  • 收藏数0 收藏
  • 顶次数0
  • 上传人xiaodengyou
  • 文件大小876 KB
  • 时间2019-01-10