欢迎来到天天文库
浏览记录
ID:18229236
大小:244.00 KB
页数:25页
时间:2018-09-15
《数据结构(c语言)课程设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、《数据结构与算法》课程设计报告(2012—2013学年第1学期)计算机与信息工程学院2013年7月8日目录一.课程设计的目的与要求(含设计指标)2二.方案实现与调试22.1题目:航班查询系统22.2题目:字符串操作42.3:二叉树的运算262.4二叉树运算18三.课程设计分析与总结10四.源程序清单102.1航班查询系统102.2字符串操作182.3二叉树运算2192.4二叉树运算22设计日志25一.课程设计的目的与要求(含设计指标)设计目的1、培养学生运用算法与数据结构的基本知识解决实际编程中的数据结构设计和算法设计问题。2、培养学生独立设计程序与解决问题的能力,培养学生团队协作集成
2、程序模块及调试能力。3、培养学生初步的软件设计及软件测试的能力。基本要求:学生必须仔细阅读《数据结构》课程设计指导书,认真主动完成课程设计的要求。有问题及时主动通过各种方式与教师联系沟通。学生要发挥自主学习的能力,充分利用时间,安排好课设的时间计划,并在课程设计过程中不断检测自己的计划完成情况,有困难及时向教师汇报。课程设计按照教学要求需要一周时间完成,一周中每天(按每周5天)上机调试程序时间不少于4小时,总共至少要上机调试程序15小时。根据设计报告要求编写设计报告,主要内容包括目的、意义、原理和实现方法简介、过程分析及说明、实验结果情况说明、结论。每位同学必须有可运行的程序,学生能清
3、楚解释各自编写的程序,并回答教师的提问,学生回答的问题和程序运行的结果作为评分的主要衡量标准;(周三开始逐一检查)。二.方案实现与调试2.1题目:航班查询系统2.1.1题目内容飞机航班信息包括:航班号、起点站、终点站、起飞时间、到达时间、机型以及票价,实例如下:设计航班查询系统要求能对飞机航班信息进行增加、删除、排序和查找。可按航班的航班号、起点站、终点站、起飞时间以及到达时间进行查询2.1.2算法描述及实验步骤算法描述该航班查询系统采用线性链表存储。开始,创建链表。然后输出提示操作选项,由用户输入所选项序号。执行选项。当第一次操作结束后,提示是否继续进行操作,再有用户决定。流程图开始
4、初始化变量输入操作选项判断选项执行操作输出执行结果判断是否继续操作结束是否2.1.3调试过程及实验结果(1)完成第一模块:链表创建以及添加,编译时出现警告:“warningC4091:'typedef':ignoredonleftof'structfly'whennovariableisdeclared”,“typedef”时在结构体后面定义一个变量名,所以只需在结构体后面加一个变量名,或者是把结构体的“typedef”去掉。运行,结果提示错误。重新检查,发现调用的创建函数和添加函数位置放反了,修改错误,运行成功。(2)完成其他模块。在编写排序模块时,链表的排序不懂,通过网上查找,用冒
5、泡法,通过调换链表节点的数据进行排序。2.2题目:字符串操作2.2.1题目内容字符串采用数组存储,建立两个字符串String1和String2.输出两个字符串。将字符串String2的头n个字符添加到String1的尾部,输出结果查找String3在串String1中的位置,若String3在String1中不存在,则插入String3在String1中的m位置上。输出结果。2.2.2算法描述及实验步骤算法描述开始,输入两个字符串,然后将string2复制到string1后面。然后输string3,判断string3是否在string1内,若存在,输出找到;若不存在,输入插入位置,然后
6、将string3插入string1中,输出string1,结束。流程图开始初始化变量输入两个字符串合并两个字符串输入字符串3判断3是否存在1中输出结果将3添加到1中结束是否2.2.3调试过程及实验结果(1)拷贝string3到string1时,因为移动string1后面的字符,忘了加结束标志,结果输出乱码。2.3:二叉树的运算22.3.1题目内容任务:请设计一个算法,把二叉树的叶子结点按从左到右的顺序连成一个单链表。二叉树用二叉链存储,链接时用叶子结点的rchild域存放指针。2.3.2算法描述及实验步骤算法描述该题采用线性链表存储结构。开始,创建二叉树,链表。遍历整棵二叉树,查找叶子
7、节点,当找到是,将叶子节点放入链表当中。输出结果,结束。流程图开始初始化变量创建二叉树创建链表输入数据遍历二叉树判断是否为叶子节点加入链表中输出链表结束判断是否结束是是否否2.3.3调试过程及实验结果2.4二叉树运算12.4.1题目内容任务:求二叉树中指定两个结点共同的最近祖先。2.4.2算法描述及实验步骤算法描述开始,创建二叉树。输入要查找的两个节点。判断两个节点位于根节点的哪一侧,若位于两侧,这根节点为它们的最近共同祖先,否则用递归遍历继续
此文档下载收益归作者所有