网站大量收购独家精品文档,联系QQ:2885784924

数据结构线性表实验报告.doc

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《数据结构》实验报告 院系 应用科技学院 专业 电子信息工程 姓名 陈高雪 学号120352010054 10 级 电信 班 2011 年 1.实验目的 1.掌握线性表的基本运算。 2.掌握顺序村存储的概念,学会对顺序存储数据结构进行操作。 3.加深对顺序存储数据结构的理解,逐步培养解决实际问题的编程能力。 2.需求分析 要求用c语言编写一个演示程序,首先建立一个空表,然后根据用户选择,能够在线性表的任意位置实现插入元素、删除元素、初始化线性表、查找某一元素的在线性表中得位置。 (1)建立线性表的功能 输入的形式和输入的范围:调用出入函数,输入插入的位置和数值,用逗号隔开 输出的形式:调用输出函数,按顺序输出线性表所插入的值,以及所对应功能的值。 (2)插入功能 输入的形式和输入值的范围:输入一个表示位置的正整数和一个表示插入元素值的正整数,两个正整数之间用逗号隔开,出入位置的和法取值范围是1sizesize+1。 输出的形式:如果输入的参数合法,则按顺序显示插入后的线性表,否则显示错误。 (3)删除功能 输入的形式和输入值的范围:输入一个表示删除位置或要删除的元素值的正整数,删除位置或删除元素值的取值范围是1sizeesize+1或线性表中的元素,否则显示参数错误的信息。 输出的形式:如果输入参数合法,则按顺序显示删除后线性表中的各个元素值,否则显示参数错误的信息。 (4)查找功能 输入的形式和输入值的范围:输入一个要查找的元素值,元素值的合法取值范围是正整数。 输出的形式:如果存在要查找的元素,则显示要查找元素的位置,否则显示参数错误信息。 3.概要设计 (1)为了实现上述程序功能,需要第一一个简化的线性表抽象数据类型: Typedef struct LinearList{ Int *list; Int size; Int MAXSIZE; }List; 基本操作: 初始化线性表ListInit (L) 操作前提:L是一个未初始化的线性表 操作结果:将L初始化成一个空的线性表 向空表指定位置插入元素 ListInsert (L) 操作前提:L是一个还有位置的线性表 操作结果:将元素插入到指定位子并输出线性表 删除指定元素值 ListDelete_1(L) 操作前提:线性表L存在 操作结果:将线性表中指定的元素值删除,并输出线性表 删除指定位置的元素值 ListDelete_2(L) 操作前提:线性表L存在 操作结果:将线性表中指定位置的元素值删除,并输出线性表 查找线性表中的元素 ListFind(L) 操作前提:线性表L存在 操作结果:在线性表L中查找指定元素e,若存在该元素返回该元素在表中的位置,否则提示错误 输出线性表元素 OutputList(L) 操作前提:线性表存在 操作结果:输出整线性表L的所有元素值 (2)本程序共有6函数: 主函数main() 初始化线性表函数InitList() 输出函数OutputList() 插入函数ListInsert() 删除函数ListDelete() 查找函数ListFind() 各函数的关系如下: 主函数Main()调用初始化线性表函数InitList()、插入函数ListInsert()、删除函数ListDelete()、查找函数ListFind()、查找函数ListFind() 插入函数ListInsert()调用输出函数OutputList(L) 删除函数ListDelete()调用输出函数OutputList(L) 查找函数ListFind()调用输出函数OutputList(L) (3)主函数的伪码 Main() { 定义一个字符参数 ch; 定义整形元素位置参数 i; 定义整形参数e,j=1; 说明一个线性表L; 循环做下面处理,直到读入的为‘y’时推出: { 根据具体选项,读入需要的数据,做下面的选择处理,知道循环结束: { 根据所选择选项调用相关的函数进行处理,然后输出处理后的线性表以及所要执行的内容。 } } } 4.详细设计 采用线性表实现概要设计中的定义的抽象数据类型,有关数据数据类型和伪码算法定义如下: (1)类型定义 typedef struct LinearList { int *list; int size; int MAXSIZE; }List; (2)基本操作的伪码算法 初始化 void InitList(List L) { 构造一个空表L; 定义空表长度为0; 初始存储空间的容量; } 插入操作 void List

文档评论(0)

159****8201 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档