数据结构与数据库课程设计指导书

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据结构与数据库课程设计指导书

数据结构与数据库课程设计指导书

一、课程设计的目的、要求和任务

本课程设计通过设计完整的程序,使学生掌握数据结构的应用、算法的编写等基本方法。掌握数据库应用程序设计的步骤和方法。

1.课程的目的

(1)使学生进一步理解和掌握课堂上所学各种基本抽象数据类型的逻辑结构、存储结构和操作实现算法,以及它们在程序中的使用方法。

(2)使学生掌握数据库设计的基本内容和设计方法,并培养学生进行规范化软件设计的能力。

(3)使学生掌握使用各种计算机资料和有关参考资料,提高学生进行程序设计的基本能力;

2.课程的基本要求与任务

(1)巩固和加深对数据结构基本知识的理解,提高综合运用所学课程知识的能力。

(2)培养学生自学参考书籍,查阅手册、图表和文献资料的能力。

(3)通过实际课程设计,初步掌握简单软件的分析方法和设计方法。

(4)了解与课程有关的工程技术规范,能正确解释和分析实验结果。

(5)题目具有足够的工作量。

(6)有能力的同学可以按照数据库的原理设计数据库表逻辑结构,通过数据结构的方法用C++/Java/C语言编写程序实现表中数据的插入、删除、查找等操作。

二、课程设计的一般步骤

选题与搜集资料:

分析与概要设计:根据搜集的资料,进行程序功能与数据结构分析,并选择合适的数据结构、并在此基础上进行实现程序功能的算法设计。

程序设计:运用掌握C++/Java/C语言编写程序,实现程序的各个模块功能。

调试与测试:调试程序,并记录测试情况。

完成课程设计报告。

验收与评分:指导教师对每个同学的开发的系统进行综合验收。

三、课程设计报告的规范

课程设计报告(3000字以上,数据结构题目1000字以上,数据库题目2000字以上)数据结构题目要求规范书写,应当包括如下8个部分:

(1)问题描述:描述要求编程解决的问题。

(2)基本要求:给出程序要达到的具体的要求。

(3)算法思想:描述解决相应问题算法的设计思想。

(4)模块划分:描述所设计程序的各个模块(即函数)功能。

(5)数据结构:给出所使用的基本抽象数据类型,所定义的具体问题的数据

类型,以及新定义的抽象数据类型。

(6)源程序:给出所有源程序清单,要求程序有充分的注释语句,至少要注释每个函数参数的含义和函数返回值的含义。

(7)测试数据:设计测试数据,或具体给出测试数据。要求测试数据能全面地测试所设计程序的功能。

(8)测试情况:给出程序的测试情况,并分析运行结果

(9)总结和体会

数据库要求规范书写,应当包括如下6个部分:

(1)系统概述

(2)需求分析

(3)概念结构设计

(4)逻辑设计

(5)物理设计

(6)实现数据库

(7)总结和体会

四、成绩评定标准

学生成绩以优、良、中、及格和不及格5个等级评定。

(1)学生编写的实际软件和运行结果,占总成绩50%;

(2)设计报告,占总成绩50%。

五、数据库题目及要求

一、题目

按照学号的尾号选择以下系统之一:

1、工资管理系统

2、药品管理系统

3、学生宿舍管理系统

4、图书管理系统

5、网上销售管理系统

6、酒店管理系统

7、物业管理系统

8、人事管理系统

9、学生成绩管理系统

10、教室排课管理系统

二、要求

(一)数据库设计

1、对系统进行需求分析。

2、对系统进行概念结构设计。(画出局部和全局E_R图)

3、对系统进行逻辑结构设计(转换成关系模型)

4、对系统进行物理结构设计:

(1)用T-SQL语句创建数据库

(2)用T-SQL语句创建所有的表及设置主键

(3)用T-SQL语句给需要设外键的表设置外键

(4)用T-SQL语句给表加上check约束、UNIQUE约束、DEFAULT约束

5、使用insert语句初始化数据库(给每个表至少插入5条记录)

需求分析、概念结构设计、逻辑结构设计

物理设计、初始化数据(插入记录)

流程控制语句与函数、视图、索引、游标

数据查询

存储过程、触发器、数据备份、课程设计报告的整理和编写

六、数据结构课程设计参考题目

类型一线性表、栈、队列与递归算法设计

1.约瑟夫环

[问题描述]

约瑟夫(Joeph)问题的一种描述是:编号为1,2,…,n的n个人按顺时针方向围坐一圈,每人持有一个密码(正整数)。一开始任选一个正整数作为报数上限值m,从第一个人开始按顺时针方向自1开始顺序报数,报到m时停止报数。报m的人出列,将他的密码作为新的m值,从他在顺时针方向上的下一个人开始重新从1报数,如此下去,直至所有人全部出列为止。试设计一个程序求出出列顺序。

[基本要求]

利用单向循环链表存储结构模拟此过程,按照出列的顺序印出各人的编号。

[测试数据]

m的初值为20;密码:3,1,7,2,4,8,4(正确的结果应为6,1,4,7,2,3,5)。

[实现提示]

程序运行后首先要求用户指定初始报数上限值,然后读取各人的密码。设n≤30。

2、长整数运算

[问题描述]

设计一个程序实现两个任意长的整数求和运算。

[基本要求]

利用双项循环链表实现长整数的存储,每个结点含一个整型变量。任何整型变量的范围是-(215-1)~(215-1)。输入和输出形式:按中国对于长整数的表示习惯,每四位一组,组间用逗号

相关文档
最新文档