首页 > 编程语言 >C/C++《数据结构课程设计》任务书[2022-12-27]

C/C++《数据结构课程设计》任务书[2022-12-27]

时间:2022-12-27 21:14:13浏览次数:52  
标签:选题 课程设计 12 C++ 停车场 任务书 设计 数据结构

C/C++《数据结构课程设计》任务书[2022-12-27]

《数据结构课程设计》任务书
一、任务总体安排:
班级 设计时间 地点 指导老师
21软件开发 17周每周一至周五五六节 徐青翠
二 、《数据结构课程设计》目的与要求
1.目的:
1)复习、巩固数据结构的基础知识,进一步加深数据结构的理解和掌握。
2)培养学生对于实际应用建立数学模型,分析问题、解决问题的能力。
3)提高学生适应实际,实践编程的能力。
4)培养学生在项目开发中团队合作精神、创新意识及能力。
5)培养学生对于数据结构的应用能力,对学生进行软件工程的规范训练,养成良好的科学作风。
2.要求:
1)、分组完成,每组成员1人,独立完成。
2)、按照软件工程的思想进行软件的设计:要有需求分析、概要设计、详细设计、编码实现及静态检查、上机调试及测试程序、总结及整理设计报告各阶段。
3)、程序要上机调试通过,并按按时上交设计报告及源文件。
4)、针对课程设计的选题,进行系统功能模块分析,并实现相应功能,学生可以增加额外的功能,使程序更加完善、合理。系统设计要实用,编程简练。
5)、设计报告中要有较为详细的设计说明书、设计流程图等。
6)、设计上交内容:设计报告一份(按格式书写)纸质档及电子档,设计源代码。

三、课程设计选题及相关规定:
本课程设计备有如下选题,每个小组选择其中一个题目,不同的小组选题应该尽量不同,全班的设计中绝不允许有雷同,否则相关同学的设计成绩都按不及格处理。具体选题如下:

源码

https://pan.baidu.com/s/1pq1Nwwo0hlc_J84F93HM4A?pwd=1111

1、学生成绩管理系统

设计目的:
(1) 掌握线性链表的建立。
(2) 掌握线性链表的基本操作。
(3) 掌握查找的基本算法。
设计内容:
利用线性链表实现学生成绩管理系统,具体功能:输入、输出、插入、删除、查找、追加、读入、显示、保存、拷贝、排序、索引、分类合计、退出,并能在屏幕上输出操作前后的结果。
设计要求:
 写出系统需求分析、概要设计、详细设计、编码实现及静态检查、上机调试及测试程序,并建模。
 输出操作前后的结果。

2、停车场管理系统

设计目的:
(1) 掌握栈和队列的建立。
(2) 掌握栈和队列的基本操作。
(3) 深入了解栈和队列的特性,以便在解决实际问题中灵活运用它们。
(4) 加深对栈和队列的理解和认识。
设计内容:
设有一个可以停放n辆汽车的狭长停车场,它只有一个大门可以供车辆进出。车辆按到达停车场时间的早晚依次从停车场最里面向大门口处停放(最先到达的第一辆车放在停车场的最里面)。如果停车场已放满n辆车,则后来的车辆只能在停车场大门外的便道上等待,一旦停车场内有车开走,则排在便道上的第一辆车就进入停车场。停车场内如有某辆车要开走,在他之后进入停车场的车都必须先退出停车场为它让路,待其开出停车场后,这些车辆在依原来的次序进场。每辆车在离开停车场时,都应依据它在停车场内停留的时间长短交费。如果停留在便道上的车未进停车场就要离去,允许其离去,不收停车费,并且仍然保持在便道上等待的车辆的次序。编制一程序模拟该停车场的管理。
设计要求:
 以栈模拟停车场,以队列模拟车场外的便道,按照从终端读入的输入数据序列进行模拟管理。
 每一组输入数据包括三个数据项:汽车“到达”或“离去”信息、汽车牌照号码以及到达或离去的时刻。
 对每一组输入数据进行操作后的输出信息为:若是车辆到达,则输出汽车在停车场或便道上的停车位置;若是车辆离去,则输出汽车在停车场内停留的时间和应交纳的费用(在便道上停留的时间不收费,功能可自己添加)。

3、家谱管理系统

设计目的:
(1) 掌握树的逻辑结构、存储结构及其特点。
(2) 掌握树的基本操作,并在在解决实际问题中灵活运用它们。
(3) 加深对树的理解和认识。
设计内容:
家谱(或称族谱)是一种以表谱形式,记载一个以血缘关系为主体的家族世系繁衍和重要人物事迹的特殊图书体裁。家谱是中国特有的文化遗产,是中华民族的三大文献(国史、地志、族谱)之一,属珍贵的人文资料,对于历史学、民俗学、人口学、社会学和经济学的深入研究,均有其不可替代的独特功能。本课程设计对家谱管理进行简单的模拟,以实现查看祖先和子孙个人信息、插入家族成员、删除家族成员等功能。
设计要求:
完成对家谱成员信息的建立、查找、修改、删除等功能,可以首先定义家族成员的数据结构,然后将每个功能写成一个函数来完成对数据的操作,最后完成主函数以验证各个函数功能并得出运行结果。

4、医院寻址

设计目的:
(1) 掌握图的逻辑结构、存储结构及其特点。
(2) 掌握图的基本操作,并在在解决实际问题中灵活运用它们。
(3) 加深对图的理解和认识。
设计内容:
n个村庄的交通图可用有向图来表示,图中的边<vi,vj>上的权值表示从村庄i到村庄j的道路的长度。现有要求从这n个村庄中选择一个村庄新建一所医院,问这所医院就建立在哪个村庄,才能使所有的村庄离医院都比较近?
设计要求
 建立数据模型,设计存储结构
 设计算法完成问题的求解
 分析算法的时间复杂度。

5、其他自选题

基本要求
(1) 要求给出问题的描述,难度与前述选题相近
(2) 建立相应的数据模型并设计相应的数据结构
(3) 设计算法完成问题的求解
(4) 分析算法的时间复杂度
四、设计时间安排
设计分阶段进行,具体安排如下:
第一阶段:
1、 选定课题。
2、 分析问题,完成需求分析,给出需求设计文档。
3、 进行概要设计,给出设计思想,提出数据模型,给出概要设计文档。
第二阶段:
1、 根据概要设计及数据模型,设计存储结构。
2、 设计算法,给出算法伪代码。
3、 编码实现存储结构及算法。
4、 对于代码进行静态检查。
5、 对于编制源程序进行上机调试。
6、 进行算法的分析。
7、 对于系统进行完善。
第三阶段:
1、 整理相应的设计文档。
2、 对于课程设计进行总结。
3、 撰写课程设计报告(1份/人)。
4、 提交课程设计的报告及设计的源代码(纸质及电子档)
五、考核内容和方式
1.设计成绩考核办法(共100分):
(1) 完成选题程序的基本功能(40分),功能比较完善(10分)。
(2) 按要求书写课程设计报告(50分)。
2.总评成绩
课程设计成绩评定:按优秀、良好、中等、及格、不及格五级评定。
优秀:出色完成设计任务书所规定的全部内容,设计方案正确、基本概念清楚、有独立见解或创造性。设计中能正确地综合运用本专业的基础知识,熟练掌握设计计算方法,设计结果正确,表现出较好的基本技能训练和较强的独立工作能力。全面正确地完成规定的设计任务,设计说明书条理清楚、系统性强。说明书内容完整,分析透彻、书写清晰,计算机程序代码的书写格式符合要求。
良好:较好地完成设计任务书规定的全部内容,设计方案正确,基本概念清楚。在设计选题中能联系生产实际,正确掌握设计计算方法,态度端正,工作认真,表现出较好的基本技能训练和独立工作能力。能正确完成规定的设计任务的全部内容。设计说明书编写清楚,计算机程序能完成预定任务,得到预期结果。 设计中存在个别缺陷与错误,但基本不影响主要问题的正确性。
中等:能完成设计任务书规定的全部内容,设计方案基本正确。在设计过程中态度端正、工作认真,但基本技能训练和独立工作能力表现设计说明书符合一般要求,表达清楚,算法及流程图正确。计算机程序通过调试,程序代码书写格式基本符合要求。
及格: 基本完成设计任务书规定的全部内容。设计方案基本合理。在设计过程中工作态度、工作质量一般,基本技能训练和独立工作能力较弱。设计说明书符合基本要求,算法及流程图等尚清楚、完整,计算机程序通过调试。
不及格:没有完成设计任务书规定的全部内容,设计方案不合理。对设计不认真,缺乏独立工作能力,设计时不加消化地照般照抄参考书籍或他人设计成果。
六、课程设计报告格式
(一)、封面;
(二)、目录;
(三)、任务描述;
(四)、功能设计与实现;(该部分是主体,可分为若干个小标题书写)
(五)、总结;
(七)、参考文献(可选)

注意:.

  1. 可参考以上述要求格式书写设计报告,相同题目杜绝抄袭,设计要突出自己的特点,如发现雷同者,一律按不及格论处。
  2. 正文标题用:宋体、小四、 加粗 字体,正文用:宋体、五号 字体,正文采用1.5倍行距,排版打印后统一上交。
  3. 统一使用“下一页”的页面格式作为报告的首页。

江西理工大学软件学院
《数据结构课程设计》报告
2022—2023学年第一学期
课程名称 数据结构课程设计
设计题目
专业班级
姓 名
学 号
指导教师
年 月 日

标签:选题,课程设计,12,C++,停车场,任务书,设计,数据结构
From: https://www.cnblogs.com/codewriter/p/17008996.html

相关文章

  • 编程语言那么多,为什么说C++无可替代?
    C++,一门名声在外的编程语言。作为一门多范式的通用编程语言,它适用的领域非常广泛,小到嵌入式,大到分布式服务器,到处可以见到C++的身影。  它的发展前景也非常广阔,作为未来......
  • RK3588 Android12 一个固件兼容多个板型方案
    一、专业术语:DTB,DTBO,DTC,DTO,DTS,FDT。它们之间的关系可以描述为:DTS 是用于描述 FDT 的文件;DTS 经过 DTC 编译后可生成 DTB/DTBO;DTB 和 DTBO 通过 DTO ......
  • c/c++ 大小写转换(位运算)
    #include<iostream>//大写转小写小写转大写staticcharUpperOrLower(charch){return(ch^0x20);}//转大写staticcharToUpper(charch){ret......
  • c++一些常用的知识
    时间复杂度:数量级     能承受的大致规模     常见算法0(1)         任意               输出O(lo......
  • 20221227ping命令+格西调试精灵的使用
      先用格西调试精灵,”通信接口“连接后才能ping通 ping是什么?ping就是windows、Unix或者Linux系统下达的一个命令,也可以说是一个通信协议,并且是TCP/IP协议的一......
  • django 12 csrf跨站请求伪造
    今日内容详细目录今日内容详细csrf跨站请求伪造csrf校验策略csrf相关装饰器auth认证模块auth认证相关模块及操作扩展auth_user表csrf跨站请求伪造钓鱼网站:模仿一个正规......
  • the fifth——2022.12.26
    %c按照ASCII码转换字符  例如: #include<stdio.h>intmain(void){ charch; printf("Pleaseenteracharacter.\n"); scanf("%c",&ch); printf("Thecodefor......
  • Navicat Premium 12 永久破解激活
    下载安装包和破解工具链接:https://pan.baidu.com/s/1OtiavR1QrX7vp_jge4snQA提取码:p8t2 下载好后首先安装NavicatPremium12,此工具安装比较简单,我就不一步一步来了,疯狂......
  • cocos2d-x 通过JNI实现c/c++和Android的java层函数互调
    文章摘要: 本文主要实现两个功能:(1)通过Androidsdk的API得到应用程序的包名(PackageName),然后传递给c++层函数。(2)通过c++函数调用Android的java层函数,显示一个对话框......
  • C++11 新特性之Lambda函数(匿名函数)
    声明:本文参考了AlexAllain的文章​​http://www.cprogramming.com/c++11/c++11-lambda-closures.html​​加入了自己的理解,不是简单的翻译C++11终于知道要在语言中加入......