c语言综合训练报告范例

c语言综合训练报告范例

ID:1343165

大小:248.55 KB

页数:19页

时间:2017-11-10

c语言综合训练报告范例_第1页
c语言综合训练报告范例_第2页
c语言综合训练报告范例_第3页
c语言综合训练报告范例_第4页
c语言综合训练报告范例_第5页
资源描述:

《c语言综合训练报告范例》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、C语言综合训练报告范例1绪论(本部分描写程序或系统开发的背景,意义,你对题目的理解以及题目要求)1.1开发背景计算机技术发展,信息化普及的状况下,运算高效快速化成为主流。1.2开发意义可以节省工作人员在对集合运算时的时间,得以有更多地时间做其它操作。1.3开发要求根据课程设计任务书要求,本系统开发主要完成以下功能和性能。①能够实现集合的并、交、差运算;②实现集合的元素判定和子集判定运算;③求集合的补集。2系统分析1、程序的实现(1)功能使用链表来表示集合,完成集合的合并,求交集等操作。(2)实施1)初步完成总体设

2、计,搭好框架,确定函数个数;2)完成最低要求;3)继续完成进一步要求。2、设计的要求(1)界面友好,函数功能要划分好;(2)总体设计应画流程图;(3)程序要加必要的注释;(4)要提供程序测试方案;(5)程序要经得起测试,宁可功能少一些,也要能运行起来,不能运行的程序是没有价值的。3总体设计1、问题分析该问题主要实现以下功能:(1)利用尾插法建立单链表;(2)对于输入的链表进行有序排列(3)删除有序链表中不符合要求的元素(4)调用函数对单链表进行交、并运算并输出2、模块结构(1)结构分析程序以用户和计算机的对话方式

3、执行,即在计算及终端显示提示信息之后,由用户在键盘输入演示程序中规定的运算命令;相应的输入数据(过滤输入中的非法字符)和运算结果闲时间在其后。系统由以下几个模块组成,分别是:1)单链表的建立2)单链表的有序排列3)删除单链表中不符合条件的元素4)集合交集5)集合并集1)双链表输出2)主函数(2)结构分析图4详细设计(描写各个功能模块界面和程序的详细实现,里面要用到的算法,函数的具体实现,并画出对应的程序流程图。)先做整体介绍,然后再分各个模块介绍实现过程,对于每个模块要画出主要程序或算法的程序流程图1、解题思路(

4、1)数据结构设计创建三个带头结点的单链表,用来存储两个集合中的元素和最终的结果,为实现集合的交、并运算功能,应以有序链表表示集合。为此,需要两个抽象数据类型:有序表和集合。(2)逻辑结构存储结构逻辑结构:创造一个带结点的单链表包括(头结点L、结点若干、尾结点);单链表中每个结点包括(*next表示指针data表示域)2、算法设计程序执行的命令包括:(1)定义单链表结点类型typedefstructLNode(2)运用尾插法建立单链表voidCreatListR(LinkList*&L,ElemTypea[],in

5、tn)(3)创建头结点,为头结点分配空间(4)创建新结点(5)建立有序链表voidSort(LinkList*&head)(6)将两个集合的元素进行比较while语句(7)删除有序链表中的重复元素voidshanchu(LinkList*&head)(8)求交集voidjiao(structLnode**L1,structLnode**L2,structLnode**L3)(9)求并集voidbing(structLnode**L1,structLnode**L2,structLnode**L3)(10)输出单链

6、表voidDisplay(LinkList*L)5调试与测试1、模块分析(1)定义单链表结点类型typedefstructLNode{ElemTypedata;structLNode*next;}LinkList;(2)运用尾插法建立单链表voidCreatListR(LinkList*&L,ElemTypea[],intn){LinkList*s,*r;intI;L=(LinkList*)malloc(sizeof(LinkList));//创建并为头结点分配空间L->next=NULL;r=L;for(i=0

7、;idata=a[i];r->next=s;r=s;}r->next=NULL;//尾结点指向空(3)建立有序链表voidSort(LinkList*&head){LinkList*p=head->next,*q,*r;if(p!=NULL){r=p->next;p->next=NULL;p=r;while(p!=NULL)//后续元素与第一个元素进行比较{r=p->next;q=head;while(

8、q->next!=NULL&&q->next->datadata)q=q->next;p->next=q->next;q->next=p;p=r;}}}2、结果分析选择数字1,进行排序输出;选择数字2,输出集合1与集合2的交集;选择数字3,输出集合1与集合2的并集。可以看出,该程序成功是实现了集合的排序和两个集合的交集运算,而两个集合的并集运算显然还存在问题,在以

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。