集合运算课程设计报告..doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
学号 1508020118 2015-2016 学年 第二学期 《高级语言程序设计》 课程设计报告 题 目 : 会合的运算 专 业 : 网络工程 班 级 : 15(1) 姓 名 : 邱敏 指导教师: 代美丽 成 绩 : 计算机学院 2016年 4月 22日 计算机学院 《高级语言程序设计》课程设计报告 目录 一、需求剖析 II 1、程序的实现 1 ( 1)功能 1 ( 2)实施 1 2、设计的要求 1 二、纲要设计 1 1、问题剖析 1 2、模块构造 2 ( 1)构造剖析 2 ( 2)构造剖析图 2 三、详尽设计 3 1、解题思路 3 ( 1)数据构造设计 3 ( 2)逻辑构造存储构造 3 2、算法设计 3 四、调试剖析和测试结果 4 1、模块剖析 4 ( 1)定义单链表结点种类 4 ( 2)运用尾插法成立单链表 4 ( 3)成立有序链表 5 2、结果剖析 5 五、总结 6 1、解决的问题 6 ( 1)会合的运算算法 6 ( 2)解决方式 7 2、心得体会 7 六、参照文件(资料不得少于 5 篇) 7 I 计算机学院 《高级语言程序设计》课程设计报告 七、道谢 7 八、附录(含程序源码) 8 II 计算机学院 《高级语言程序设计》课程设计报告 一、需求剖析 1、程序的实现 (1)功能 使用链表来表示会合,达成会合的归并,求交集等操作。 2)实施 初步达成总体设计,搭好框架,确定函数个数; 达成最低要求; 持续达成进一步要求。 2、设计的要求 界面友好,函数功能要区分好; 总体设计应画流程图; 程序要加必要的说明; 要提供程序测试方案; 程序要经得起测试, 宁愿功能少一些, 也要能运行起来, 不能运行的程序是没有价值的。 二、纲要设计 1、问题剖析 该问题主要实现以下功能: 利用尾插法成立单链表; 关于输入的链表进行有序排列 删除有序链表中不切合要求的元素 调用函数对单链表进行交、并运算并输出 1 计算机学院 《高级语言程序设计》课程设计报告 2、模块构造 ( 1)构造剖析 程序以用户和计算机的对话方式执行,即在计算及终端显示提示信息之后,由用户在键盘输入演示程序中规定的运算命令;相应的输入数据(过滤输入中的非法字符)和运算结果闲时间在后来。系统由以下几个模块组成,分别是: 单链表的成立 单链表的有序排列 删除单链表中不切合条件的元素 会合交集 会归并集 单链表输出 主函数 2)构造剖析图 主函数 main() 创建链表 求交集 求并集 LinkList * void jiao() void bing() 单链表结点种类 比较并保留相同 删除重复的元素 typedef struct 元素 while 语句 void shangchu() LNode 2 计算机学院 《高级语言程序设计》课程设计报告 三、详尽设计 1、解题思路 (1)数据构造设计 创建三个带头结点的单链表 , 用来存储两个会合中的元素和最终的结果 , 为实现会合的交、并运算功能,应以有序链表表示会合。为此,需要两个抽 象数据种类:有序表和会合。 2)逻辑构造存储构造 逻辑构造:创造一个带结点的单链表包括(头结点 L、结点若干、尾结 点);单链表中每个结点包括( *next 表示指针 data 表示域) 2、算法设计 程序执行的命令包括: 定义单链表结点种类 typedef struct LNode 运用尾插法成立单链表 void CreatListR (LinkList *L,ElemType a[],int n ) 创建头结点,为头结点分派空间 创建新结点 成立有序链表 void Sort ( LinkList *head ) 将两个会合的元素进行比较while 语句 删除有序链表中的重复元素 void shanchu(LinkList *head) (8) 求交集 void jiao (struct Lnode **L1 ,struct Lnode **L2 ,struct Lnode **L3 ) (9) 求并集 void bing (struct Lnode ** L1 ,struct Lnode **L2 , struct Lnode **L3 ) (10) 输出单链表 void Display ( LinkList *L ) 3 计算机学院 《高级语言程序设计》课程设计报告 四、调试剖析和测试结果 1、模块剖析 (1)定义单链表结点种类 typedef struct LNode { ElemType data; struct LNode *next; } LinkList; 2)运用尾插法成立单链表 void CreatListR (LinkList*L , ElemType a[],int n ) { LinkL

文档评论(0)

150****9100 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档