闽江学院数据结构之林宏课程设计任务书
数据结构课程设计任务书

数据结构课程设计任务书一、课程设计的目的数据结构课程设计是为数据结构课程独立开设的实践性教学环节。
数据结构课程设计对于巩固数据结构知识,加强学生的实际动手能力和提高学生综合素质是十分必要的。
课程设计的目的:1.要求学生达到熟练掌握C语言的基本知识和技能。
2.了解并掌握数据结构与算法的设计方法,具备初步的独立分析和设计能力。
3.提高程序设计和调试能力。
学生通过上机实习,验证自己设计的算法的正确性。
学会有效利用基本调试方法,迅速找出程序代码中的错误并且修改。
4.培养算法分析能力。
分析所设计算法的时间复杂度和空间复杂度,进一步提高程序设计水平。
5.初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能。
二、课程设计的要求数据结构课程设计用C/C++编程实现。
课程设计的一般步骤:1.问题描述与分析:根据设计题目的要求,充分地分析和理解问题,明确问题要求做什么?限制条件是什么?2.数据结构设计:为实现每个功能选择的逻辑结构和存储结构,分析原因及合理性。
3.软件结构设计:设计软件模块之间的结构。
4.算法设计:算法的设计及算法分析。
每个部分的算法设计说明,可以用流程图描述算法。
5.程序编码:把详细设计的结果进一步求精为程序设计语言程序。
源程序要按照软件工程的规则来编写,要求结构清晰,重要功能部分要加上清晰的程序注释。
6.调试分析:掌握调试工具的各种功能,设计测试数据,测试输出的结果。
并进行算法的时间复杂度和空间复杂度的分析。
7.总结:课程设计过程的收获,遇到问题以及解决问题的思路和方法,程序调试能力的思考,对数据结构这门课程的认识及思考等。
8.编写课程设计报告。
三、课程设计题目及分组1、栈的应用:表达式求值1)设计题目设计一个表达式求值的程序。
该程序必须可以接受包含(,),+,-,*,/,%,和^(求幂运算符,a^b=a b)的中缀表达式,并求出结果。
如果表达式正确,则输出表达式的结果;如果表达式非法,则输出错误信息。
《数据结构》课程设计任务书

算法与数据结构课程设计任务书课程编号:2409080S 课程性质:专业实践课学时/学分:1周/1. 适用专业:计算机科学与技术(交通信息工程)教材:《数据结构》C语言版,严蔚敏、吴伟民编著,清华大学出版社课程设计目的:1.训练学生灵活应用所学数据结构知识,独立完成问题分析,结合数据结构理论知识,编写程序求解指定问题的能力。
2.初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;3.培养学生在分析问题和解决问题过程严谨的科学态度和良好的工作作风课程设计要求:1.18周周1至周5完成选题、问题分析、算法设计、程序编写、程序测试和程序验收。
2.按照课设格式提交课程设计报告(7月10日)。
3.分数=80%程序+20%报告课程设计题目课程设计题一:学生成绩管理系统设计目的:1.掌握线性链表的建立。
2.掌握线性链表的基本操作。
3.加深对线性链表及其基本操作的理解。
利用线性链表实现学生成绩管理系统。
具体功能:输入、输出、插入、删除、查找、追加、显示、分类合计,并能在屏幕上输出操作前后的结果。
设计要求:1.初始化线性链表。
可以通过键盘输入,进行学生信息的录入。
并根据命令,进行插入、删除、追加、遍历、分类合计等操作。
2.输出操作前后的结果。
3.如果有时间,可以添加保存功能。
即将链表中的学生记录保存到一个文本文件中。
课程设计题二:停车场管理系统设计目的:1.掌握栈和队列的建立。
2.掌握栈和队列的基本操作。
3.深入了解栈和队列的特性,以便在解决实际问题中灵活运用它们。
4.加深对栈和队列的理解和认识。
设计内容:设有一个可以停放n辆汽车的狭长停车场,它只有一个大门可以供车辆进出。
车辆按到达停车场时间的早晚依次从停车场最里面向大门口处停放(最先到达的第一辆车放在停车场的最里面)。
如果停车场已放满n辆车,则后来的车辆只能在停车场大门外的便道上等待,一旦停车场内有车开走,则排在便道上的第一辆车就进入停车场。
《数据结构》课程设计任务书

《数据结构》课程设计任务书《数据结构》课程设计任务说明一、题目及选题规定1、课程设计题目1)航空客运订票系统2)用二叉树实现家谱的相关运算3)电话客户服务模拟2、选题规定数据结构课程设计需独立完成1个选题内容。
1)~3)选题中任选一个。
二、课程设计进度安排1.问题分析和任务定义(3学时)内容:根据设计题目的要求,充分分析和理解问题,明确问题要求做什么(不是怎么做?),限制条件是什么。
要求:掌握问题分析的方法,以无歧义的陈述说明程序设计的任务;了解以用例图来明确系统功能的方法。
重难点:以无歧义的陈述说明程序设计的任务;对问题作透彻分析,避免出现需求分析错误。
说明:本阶段是解决“做什么”的问题,就是要全面理解用户的各项要求,并准确表达所接受的用户需求。
2.逻辑设计和数据结构的选择(3学时)内容:为操作对象定义相应的数据结构,以结构化程序设计的思想方法为原则划分各个模块,定义数据的抽象数据类型。
要求:掌握逻辑设计和数据结构选择的方法。
重难点:逻辑设计和数据结构选择。
说明:本阶段的主要任务是把需求分析得到得数据流图转换为软件结构和数据结构。
设计软件结构的具体任务是:将一个负责系统按功能进行模块划分、建立模块的层次结构及调用关系、确定模块间的接口及人机界面等。
数据结构设计包括数据特征的描述、确定数据的结构特性、以及数据库的设计。
总体设计建立的是目标系统的逻辑模型,与计算机无关。
3.详细设计和编码(5个学时)内容:算法的具体描述和代码的书写要求:掌握在逻辑设计基础上作详细设计的方法把详细设计的结果进一步求精为程序设计语言程序。
同时加入一些注解和断言,使程序中逻辑概念清楚。
重难点:在逻辑设计基础上作详细设计并编码实现。
说明:本阶段主要任务是设计每个模块的实现算法、所需的局部数据结构。
详细设计的目标有两个:实现模块功能的算法要逻辑上正确和算法描述要简明易懂。
4.上机调试(4个学时)内容:源程序的输入和代码的调试要求:能够熟练掌握调试工具的各种功能,设计测试数据确定疑点,通过修改程序来证实它或绕过它。
《数据结构》课程设计任务书

《数据结构》课程设计任务书一、设计目的《数据结构》是一门实践性较强的软件基础课程,为了学好这门课程,必须在掌握理论知识的同时,加强上机实践。
本课程设计的目的就是要达到理论与实际应用相结合,使同学们能够根据数据对象的特性,学会数据组织的方法,能把现实世界中的实际问题在计算机内部表示出来,并培养基本的、良好的程序设计技能。
二、设计要求1.通过这次设计,要求在数据结构的逻辑特性和物理表示、数据结构的选择应用、算法的设计及其实现等方面加深对课程基本内容的理解。
同时,在程序设计方法以及上机操作等基本技能和科学作风方面受到比较系统和严格的训练。
2.学生必须仔细研读《数据结构》课程设计要求,以学生自学为主、指导教师指导为辅,认真、独立地完成课程设计的任务,有问题及时主动与指导教师沟通。
3.本次课程设计按照教学要求需要在一周时间内独立完成,学生要发挥自主学习的能力,充分利用时间,安排好课程设计的时间计划,并在课程设计过程中不断检测自己的计划完成情况,及时地向指导教师汇报。
4.编程语言任选。
三、设计选题选题说明:前面6个为基础题(必选一题,可达60分),后面题目*越多难度越大,根据实际选做题目的难度和数量以及实现程序的完善性可以适当加减分;同学们在选题时,要结合个人实际情况,确保及格,力争多做。
1.集合的并、交和差运算任务:编制一个能演示执行集合的并、交和差运算的程序。
要求:(1) 集合的元素限定为小写字母字符[‘a’..’z’] 。
(2) 演示程序以用户和计算机的对话方式执行。
实现提示:以链表表示集合。
选作内容:(1) 集合的元素判定和子集判定运算。
(2) 求集合的补集。
(3) 集合的混合运算表达式求值。
(4) 集合的元素类型推广到其他类型,甚至任意类型。
2.停车场管理任务:设停车场是一个可以停放n辆汽车的狭长通道,且只有一个大门可供汽车进出。
汽车在停车场内按车辆到达时间的先后顺序,依次有北向南排列(大门在最南端,最先到达的第一车停放在车场的最北端),若车场内已停满n辆车,那么后来的车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时,在它之后进入的车辆必须先退出车场为它让路,待该辆车开出大门外,其他车辆再按原次序进入车场,每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用。
《数据结构》课程设计任务书

《数据结构》课程设计任务书一、课程设计教学目的及基本要求1. 了解并掌握数据结构与算法的设计方法,具备初步的独立分析和设计能力;2. 初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;3. 提高综合运用所学的理论知识和方法独立分析和解决问题的能力;4. 训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风;5. 独立完成或分组完成;6. 题材不限,或从参考题目中任选一题;7. 仅限用C语言编写程序;8. 7月3日前完成。
9./jsjxy/jpkc/中课程资源有五份课程设计样例,格式可以参照,不能抄袭!10.允许分小组完成,每组最多3人组成,每人分别都要提交自己的课程设计报告,并填写附录文件“09软工数据结构课程设计分组情况.xls”。
11.同一个题目不能超过6个小组选作,“整个专业分组表”请2个班班长一起汇总,6月15日前发我信箱huangsix@。
12.每个同学设计报告命名“学号姓名.doc”,7月3日前“按班级”打一个压缩包发我信箱。
二、课程设计步骤1. 问题分析和任务定义:根据设计题目的要求,充分地分析和理解问题,明确问题要求做什么?(而不是怎么做?)限制条件是什么?2. 逻辑设计:对问题描述中涉及的操作对象定义相应的数据类型,并按照以数据结构为中心的原则划分模块,定义主程序模块和各抽象数据类型。
逻辑设计的结果应写出每个抽象数据类型的定义(包括数据结构的描述和每个基本操作的功能说明),各个主要模块的算法,并画出模块之间的调用关系图;3. 详细设计:定义相应的存储结构并写出各函数的伪码算法。
在这个过程中,要综合考虑系统功能,使得系统结构清晰、合理、简单和易于调试,抽象数据类型的实现尽可能做到数据封装,基本操作的规格说明尽可能明确具体。
详细设计的结果是对数据结构和基本操作作出进一步的求精,写出数据存储结构的类型定义,写出函数形式的算法框架;4. 程序编码:把详细设计的结果进一步求精为程序设计语言程序。
《数据结构(Java)》课程设计方案任务书

采用邻接多重表表示存储有向图,实现插入、删除、遍历操作算法。
在一个字符串中统计各字符的出现次数,分别采用顺序表和散列表存储,分析查找效率。
从指定文本文件中统计出各单词及其出现次数,分别采用顺序表和散列表存储,分析查找效率。
生成一个具有n个整数的互异随机数序列,范围是-size~size。怎样实现互异?有哪些存储结构可以存储随机数序列?分析它们的特点、功能和查找效率,有哪些提高查找效率的措施?
采用排序顺序表存储电话簿数据元素,按姓氏排序,实现查找、增加和删除元素操作,分析各算法效率。
采用排序循环双链表存储电话簿数据元素,按姓氏排序,实现查找、增加和删除元素操作,分析各算法效率。
采用索引单链表<类似图的邻接表)存储电话簿数据元素,按姓氏建立索引表,每个索引项指向一条同姓的单链表,采用分块查找技术,支持增加和删除元素操作,分析各算法效率。索引表可按姓氏排序。
采用二叉链表表示二叉树,返回两结点最近的共同祖先结点,判断是否子树。
声明静态三叉链表表示的二叉树类,实现第6章二叉树的基本操作,以及求最近祖先结点、求直径、以广义表构造并输出二叉树、判断是否为完全二叉树等操作,并与二叉链表存储结构进行比较。
采用创建表达式二叉树的方法计算表达式值。要求增加关系等运算符,为各运算符约定优先级,设置若干优先级。将运算符及其优先级声明为运算符对象。
2.课程设计题目及要求
数据结构课程设计的要求是,综合运用数据结构的基础知识和算法设计的基本原则,独立编制一个具有中等规模的、一定难度的、解决实际问题的应用程序;通过题意分析、选择数据结构、算法设计、编制程序、调试程序、软件测试、结果分析、撰写课程设计报告等环节完成软件设计的全过程,完善算法并提高程序性能。
数据结构课程设计任务书

课程设计任务书《数据结构》课程设计一、课程设计的目的课程设计是《数据结构》课程教学必不可缺的一个重要环节,可加深学生对该课程所学内容的进一步的理解与巩固,是将计算机课程与实际问题相联接的关键步骤。
通过课程设计,能够提高学生分析问题、解决问题,从而运用所学知识解决实际问题的能力,因而必须给予足够的重视。
二、课程设计的要求1.明确课设任务,复习与查阅有关资料。
2.按要求完成课设内容,课设报告要求文字和图工整、思路清楚、正确。
3.应用程序应具有一定的可用性。
凡用户输入时,给出足够的提示信息。
格式明显易懂,使用户感到方便使用。
4.程序具有一定的健壮性,不会因为用户的输入错误引起程序运行错误而中断执行:对输入值的类型、大小范围、字符串的长度等,进行正确性检查,对不合法的输入值给出出错信息,指出错误类型,等待重新输入。
三、课程设计报告内容课程设计报告中应包括封面、内容摘要、关键词、目录、正文、参考文献、附录、致谢等几部分。
正文包括绪论、需求分析、概要设计、详细设计、调试分析、测试结果、总结等。
具体:(1)封面包括设计题目、所在系、专业、班级、姓名、指导教师姓名和完成日期。
(2)内容摘要应扼要叙述课设的主要内容、特点,文字要精练,是一篇具有独立性和完整性的短文,包括基本研究方法、理论与实际意义。
关键词是供检索用的主题词条,应采用能够覆盖课程设计报告主要内容的通用专业术语。
(3)绪论一般作为第1章,综述课程设计选题的目的、背景和意义,所要研究的主要内容。
(4)需求分析陈述说明课程设计的任务。
明确规定:输入/输出形式和输出值的范围;程序所能达到的功能;测试的数据:包括正确的输入和错误的输入及其相应的输出结果。
(5)概要设计包括设计思想、实现方法、系统中主要函数及各函数间的关系描述。
(6)详细设计包括实现概要设计中定义的所有数据类型,对每个操作需要写出伪代码算法。
(7)调试分析包括:调试过程中遇到的问题,如何解决的以及对设计实现的回顾讨论和分析;对算法的分析和改进设想;经验和体会等。
《数据结构》课程设计教学任务书

不要为已消尽之年华叹息,必须正视匆匆溜走的时光。 ——布莱希特
5、二叉树遍历算法集成
功能要求:
(1) 界面友好,易于操作。可采用菜单或其它人机对话方式进行选择。
(2) 实现各种二叉树的遍历。包括先序遍历、中序遍历、后序遍历的递归或非递归算法。
(3) 要求能查找任一结点在某种遍历序列中的前驱和后继。
基本要求:
分别选择顺序表和单向循环链表作为存储结构模拟整个过程,并依次输出出列的各猴子的编号和最终所选出猴王的编号。
12、停车场管理
问题描述:
设停车场是一个可以停放n辆汽车的狭长通道,且只有一个大门可以供车辆进出。车辆按到达停车场时间的早晚依次从停车场最里向大门口处停放(最先到达的第一辆车放在停车场的最里面)。如果停车场已放满n辆车,则后来的车只能在停车场大门外的便道上等待,一旦停车场内有车开走,则排在便道上的第一辆车就进入停车场。停车场内如有某辆车要开走,在它之后进入停车场的车都必须先退出停车场为它让路,待其开出停车场后,这些车辆再依原来的次序进场。每辆车在离开停车场时,都应根据它在停车场内停留的时间长短交费。如果停留在便道上的车未进停车场就要离去,允许其离去,不收停车费,并且仍然保持在便道上等待的车辆次序。编制一程序模拟该停车场的管理。
设计一个哈夫曼编码/译码系统,对一个文本文件中的字符进行哈夫曼编码,生成编码文件(压缩文件,后缀名.cod);反过来,可将一个压缩文件译码还原为一个文本文件(.txt)。
【基本要求】
(1) 输入一个待压缩的文本文件名, 统计文本文件中各字符的个数作为权值,生成哈夫曼树;
(2) 将文本文件利用哈夫曼树进行编码,生成压缩文件(后缀名cod),
(2)查询:可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);可以输入起飞抵达城市,查询飞机航班情况;
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
闽江学院数据结构之林宏课程设计任务书(简单计算器l r s)(总4页)
-本页仅作为预览文档封面,使用时请删除本页-
附录1 课程设计任务书模板
闽江学院物理学与电子信息工程系
课程设计(程序设计)任务书
题目简单计算器
专业、班级
学号
姓名
完成期限: 2014-01-04
指导教师签名:
年月日
一、主要内容
写一个程序来实现算术计算器。
通过结构体数组和共用体数组来存放输入的每一数字或运算符号的记录(包括1、2、3等数字,+、--、*、等运算符号),然后将其信息存入文件中。
输入一个算术计算式,就在屏幕上显示结果。
二、具体要求
(一)功能要求
基本要求:
(1)用C语言实现程序设计;
(2)利用结构体、共用体进行相关信息处理;
(3)画出查询模块的流程图;
(4)系统的各个功能模块要求用函数的形式实现;
(5)界面友好(良好的人机互交),程序要有注释。
(二)界面要求/输入输出要求
(1)定义一个结构体类型数组,输入0~9及+、--、*等符号的信息,将其信息存入文件中;
(2)输入简单的加减乘除算术计算式,并在屏幕上显示计算结果;
(3)画出部分模块的流程图;
说明:此任务书由指导教师填写,一式三份,一份发给学生使用,一份给指导教师留存,一份存档。