搜档网
当前位置:搜档网 › 《数据结构与算法》课程设计题目及要求

《数据结构与算法》课程设计题目及要求

《数据结构与算法》课程设计题目及要求
《数据结构与算法》课程设计题目及要求

课程名称: 数据结构与算法

学院:计算机科学与技术

学号:11003070429

姓名张茂盛

指导教师:陈媛

设计时间: 2012/12/09

1.运动会分数统计(限1 人完成)

任务:参加运动会有n个学校,学校编号为1……n。比赛分成m个男子项目,和w个女子项目。项目编号为男子1……m,女子m+1……m+w。不同的项目取前五名或前三名积分;取前五名的积分分别为:7、5、3、2、1,前三名的积分分别为:5、3、2;哪些取前五名或前三名由学生自己设定。(m<=20,n<=20)

功能要求:

1)可以输入各个项目的前三名或前五名的成绩;

2)能统计各学校总分,

3)可以按学校编号或名称、学校总分、男女团体总分排序输出;

4)可以按学校编号查询学校某个项目的情况;可以按项目编号查询取得前三或前五名的学校。

5)数据存入文件并能随时查询

6)规定:输入数据形式和范围:可以输入学校的名称,运动项目的名称

输出形式:有合理的提示,各学校分数为整形

界面要求:有合理的提示,每个功能可以设立菜单,根据提示,可以完成相关的功能要求。

存储结构:学生自己根据系统功能要求自己设计,但是要求运动会的相关数据要存储在数据文件中。(数据文件的数据读写方法等相关内容在c语言程序设计的书上,请自学解决)请在最后的上交资料中指明你用到的存储结构;

测试数据:要求使用1、全部合法数据;2、整体非法数据;3、局部非法数据。进行程序测试,以保证程序的稳定。测试数据及测试结果请在上交的资料中写明;

2.飞机订票系统

任务:通过此系统可以实现如下功能:

录入:

可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)查询:

可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);

可以输入起飞抵达城市,查询飞机航班情况;

订票:(订票情况可以存在一个数据文件中,结构自己设定)

可以订票,如果该航班已经无票,可以提供相关可选择航班;

退票:可退票,退票后修改相关数据文件;

客户资料有姓名,证件号,订票数量及航班情况,订单要有编号。

修改航班信息:

当航班信息改变可以修改航班数据文件

要求:

根据以上功能说明,设计航班信息,订票信息的存储结构,设计程序完成功能;

3.文章编辑

功能:输入一页文字,程序可以统计出文字、数字、空格的个数。

静态存储一页文章,每行最多不超过80个字符,共N行;要求(1)分别统计出其中英文字母数和空格数及整篇文章总字数;(2)统计某一字符串在文章中出现的次数,并输出该次数;(3)删除某一子串,并将后面的字符前移。

存储结构使用线性表,分别用几个子函数实现相应的功能;

输入数据的形式和范围:可以输入大写、小写的英文字母、任何数字及标点符号。

输出形式:(1)分行输出用户输入的各行字符;(2)分4行输出"全部字母数"、"数字个数"、"空格个数"、"文章总字数"(3)输出删除某一字符串后的文章;

4.宿舍管理查询软件

1)任务:为宿舍管理人员编写一个宿舍管理查询软件, 程序设计要求:

A.采用交互工作方式

B.建立数据文件,数据文件按关键字(姓名、学号、房号)进行排序(冒泡、选择、插入排序等任选一种)

2)查询菜单: (用二分查找实现以下操作)

A.按姓名查询

B.按学号查询

C.按房号查询

3)打印任一查询结果(可以连续操作)

5.校园导航问题(限1 人完成)

设计要求:设计你的学校的平面图,至少包括10个以上的场所,每两个场所间可以有不同的路,且路长也可能不同,找出从任意场所到达另一场所的最佳路径。

6.教学计划编制问题

设计要求:针对计算机系本科课程,根据课程之间的依赖关系(如离散数学应在数据结构之前开设)制定课程安排计划,并满足各学期课程数目大致相同。

7.散列法的实验研究

散列法中,散列函数构造方法多种多样,同时对于同一散列函数解决冲突的方法也可以不同。两者是影响查询算法性能的关键因素。对于几种典型的散列函数构造方法,做实验观察,不同的解决冲突方法对查询性能的影响。

8.图书借阅管理系统

主要分为两大功能:

1)图书管理(增加图书、查询图书、删除图书、图书借阅、还书);

2)会员管理(增加会员、查询会员、删除会员、借书信息);

9.学生成绩管

实现功能:输入、输出、插入、删除、查找、追加、读入、显示、保存、拷贝、排序、退出。

10.活期储蓄帐目管理

活期储蓄处理中,储户开户、销户、存入、支出活动频繁,系统设计要求:

1)能比较迅速地找到储户的帐户,以实现存款、取款记账;

2)能比较简单,迅速地实现插入和删除,以实现开户和销户的需要。

11.二叉排序树的实现

用顺序和二叉链表作存储结构

1)以回车('\n')为输入结束标志,输入数列L,生成一棵二叉排序树T;

2)对二叉排序树T作中序遍历,输出结果;

3)输入元素x,查找二叉排序树T,若存在含x的结点,则删除该结点,并作中序遍历(执行操作2);否则输出信息“无x”;

12.最小生成树问题

设计要求:在n个城市之间建设网络,只需保证连通即可,求最经济的架设方法。存储结构采用多种。求解算法多种。

13.通讯录的制作

设计目的:用〈〈数据结构〉〉中的双向链表作数据结构,结合C语言基本知识。编写一个通讯录管理系统。以把所学数据结构知识应用到实际软件开发中去。

设计内容:本系统应完成一下几方面的功能:

1)输入信息——enter();

2)显示信息———display( );

3)查找以姓名作为关键字———search( );

4)删除信息———delete( );

5)存盘———save ( );

6)装入———load( ) ;

设计要求:

1)每条信息至包含:姓名(NAME )街道(STREET)城市(CITY)邮编(EIP)国家(STATE)几项

2)作为一个完整的系统,应具有友好的界面和较强的容错能力

3)上机能正常运行,并写出课程设计报告

14.哈夫曼编码/译码器

【问题描述】

设计一个利用哈夫曼算法的编码和译码系统,重复地显示并处理以下项目,直到选择退出为止。

【基本要求】

1)将权值数据存放在数据文件(文件名为data.txt,位于执行程序的当前目录中)

2)分别采用动态和静态存储结构

3)初始化:键盘输入字符集大小n、n个字符和n个权值,建立哈夫曼树;

4)编码:利用建好的哈夫曼树生成哈夫曼编码;

5)输出编码;

6)设字符集及频度如下表:

字符空格 A B C D E F G H I J K L M

频度186 64 13 22 32 103 21 15 47 57 1 5 32 20

字符N O P Q R S T U V W X Y Z

频度57 63 15 1 48 51 80 23 8 18 1 16 1

【进一步完成内容】

1)译码功能;

2)显示哈夫曼树;

3)界面设计的优化。

15.图书管理系统

【问题描述】

设计一个计算机管理系统完成图书管理基本业务。

【基本要求】

1)每种书的登记内容包括书号、书名、著作者、现存量和库存量;

2)对书号建立索引表(线性表)以提高查找效率;

3)系统主要功能如下:

*采编入库:新购一种书,确定书号后,登记到图书帐目表中,如果表中已有,则只将库存量增加;

*借阅:如果一种书的现存量大于0,则借出一本,登记借阅者的书证号和归还期限,改变现存量;

*归还:注销对借阅者的登记,改变该书的现存量。

【进一步完成内容】

1)系统功能的进一步完善;

2)索引表采用树表。

3)设计内容

4)程序流程图

5)源程序

6)软件测试报告(包括所用到的数据及结果)

16.散列表的设计与实现

【问题描述】

设计散列表实现电话号码查找系统。

【基本要求】

1)设每个记录有下列数据项:电话号码、用户名、地址;

2)从键盘输入各记录,分别以电话号码和用户名为关键字建立散列表;

3)采用一定的方法解决冲突;

4)查找并显示给定电话号码的记录;

5)查找并显示给定用户名的记录。

【进一步完成内容】

1)系统功能的完善;

2)设计不同的散列函数,比较冲突率;

3)在散列函数确定的前提下,尝试各种不同类型处理冲突的方法,考察平均查找长度的变化。

17.顺序结构、动态链表结构下的一元多项式的加法、减法、乘法的实现。

设有一元多项式A m(x)和B n(x).

A m(x)=A0+A1x1+A2x2+A3x3+… +A m x m

B n(x)=B0+B1x1+B2x2+B3x3+… +B n x n

请实现求M(x)= A m(x)+B n(x)、M(x)= A m(x)-B n(x)和M(x)= A m(x)×B n(x)。

要求:

1)首先判定多项式是否稀疏

2)分别采用顺序和动态存储结构实现;

3)结果M(x)中无重复阶项和无零系数项;

4)要求输出结果的升幂和降幂两种排列情况

18.简易文本编辑器

要求:

1)具有图形菜单界面;

2)查找,替换(等长,不等长),插入(插串,文本块的插入)、块移动(行块,列块移动),删除

3)可正确存盘、取盘;

4)正确显示总行数。

19.二叉树的中序、前序、后序的递归、非递归遍历算法,层次序的非递归遍历算法的实现,应包含建树的实现。(限1 人完成)

要求:遍历的内容应是千姿百态的。

树与二叉树的转换的实现。以及树的前序、后序的递归、非递归遍历算法,层次序的非递归遍历算法的实现,应包含建树的实现。

要求:遍历的内容应是千姿百态的。

20.学生搭配问题

一班有m个女生,有n个男生(m不等于n),现要开一个舞会. 男女生分别编号坐在舞池的两边的椅子上.每曲开始时,依次从男生和女生中各出一人配对跳舞, 本曲没成功配对者坐着等待下一曲找舞伴.

请设计一系统模拟动态地显示出上述过程,要求如下:

1)输出每曲配对情况

2)计算出任何一个男生(编号为X)和任意女生(编号为Y),在第K曲配对跳舞的情况.至少求出K的两个值.

3)尽量设计出多种算法及程序,可视情况适当加分

提示:用队列来解决比较方便.

21.猴子吃桃子问题

有一群猴子摘了一堆桃子,他们每天都吃当前桃子的一半且再多吃一个,到了第10天就只余下一个桃子。用多种方法实现求出原来这群猴子共摘了多少个桃子。

要求:

1)采用数组数据结构实现上述求解

2)采用链数据结构实现上述求解

3)采用递归实现上述求解

22.数制转换问题

任意给定一个M进制的数x ,请实现如下要求

1)求出此数x的10进制值(用MD表示)

2)实现对x向任意的一个非M进制的数的转换。

3)至少用两种或两种以上的方法实现上述要求(用栈解决,用数组解决,其它方法解决)。

23.排序综合

利用随机函数产生N个随机整数(20000以上),对这些数进行多种方法进行排序。要求:

1)至少采用三种方法实现上述问题求解(提示,可采用的方法有插入排序、希尔排序、起泡排序、快速排序、选择排序、堆排序、归并排序)。并把排序后的结果保存在不同的文件中。

2)统计每一种排序方法的性能(以上机运行程序所花费的时间为准进行对比),找出其中两种较快的方法。

3)如果采用4种或4种以上的方法者,可适当加分。

24.学生成绩管理系统

现有学生成绩信息文件1(1.txt),内容如下

姓名学号语文数学英语

张明明01 67 78 82

李成友02 78 91 88

张辉灿03 68 82 56

王露04 56 45 77

陈东明05 67 38 47

…... .. .. …

学生成绩信息文件2(2.txt),内容如下:

姓名学号语文数学英语

陈果31 57 68 82

李华明32 88 90 68

张明东33 48 42 56

李明国34 50 45 87

陈道亮35 47 58 77

…. .. .. .. …

试编写一管理系统,要求如下:

1)实现对两个文件数据进行合并,生成新文件3.txt

2)抽取出三科成绩中有补考的学生并保存在一个新文件4.txt

3)合并后的文件3.txt中的数据按总分降序排序(至少采用两种排序方法实现)

4)输入一个学生姓名后,能查找到此学生的信息并输出结果(至少采用两种查找方法实现)

5)要求使用结构体,链或数组等实现上述要求.

6)采用多种方法且算法正确者,可适当加分.

25.图的遍历的实现

要求:

1)先任意创建一个图;

2)图的DFS,BFS的递归和非递归算法的实现

3)要求用有向图和无向图分别实现

4)要求用邻接矩阵、邻接表多种结构存储实现

26.线索二叉树的应用

要求:实现线索树建立、插入、删除、恢复线索的实现。

27.稀疏矩阵应用

要求:实现三元组,十字链表下的稀疏矩阵的加、转、乘的实现。

(1)稀疏矩阵的存储

(2)稀疏矩阵加法

(3)矩阵乘法

(4)矩阵转置

28.树的应用

要求:实现树与二叉树的转换的实现。以及树的前序、后序的递归、非递归算法,层次序的非递归算法的实现,应包含建树的实现。

29. 文本文件单词的检索与计数

设计要求与分析:

要求编程建立一个文本文件,每个单词不包含空格且不跨行,单词由字符序列构成且区分大小写;统计给定单词在文本文件中出现的总次数;检索输出某个单词出现在文本中的行号、在该行中出现的次数以及位置。该设计要求可分为三个部分实现:其一,建立文本文件,文件名由用户用键盘输入;其二,给定单词的计数,输入一个不含空格的单词,统计输出该单词在文本中的出现次数;其三,检索给定单词,输入一个单词,检索并输出该单词所在的行号、该行中出现的次数以及在该行中的相应位置。(1).建立文本文件

(2)给定单词的计数

(3)检索单词出现在文本文件中的行号、次数及其位置

(4)主控菜单程序的结构

①头文件包含

②菜单选项包含

建立文件、单词定位、单词计数、退出程序

③选择1-4执行相应的操作,其他字符为非法。

30.任意长的整数加法)

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

基本要求:利用双向循环链表,设计一个实现任意长的整数进行加法运算的演示程序。要求输入和输出每四位一组,组间用逗号隔开。如:1,0000,0000,0000,0000。

31.串的查找和替换

问题描述:打开一篇英文文章,在该文章中找出所有给定的单词,然后对所有给定的单词替换为另外一个单词,再存盘。

32.约瑟夫环

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

基本要求:

1、利用单循环链表作为存储结构模拟此过程;

2、键盘输入总人数、初始报数上限值m及各人密码;

3、按照出列顺序输出各人的编号。

33.构造可以使n个城市连接的最小生成树

问题描述:给定一个地区的n个城市间的距离网,用Prim算法或Kruskal算法建立最小生成树,并计算得到的最小生成树的代价。

基本要求:

1、城市间的距离网采用邻接矩阵表示,邻接矩阵的存储结构定义采用课本中给出的定义,若两个城市之间不存在道路,则将相应边的权值设为自己定义的无穷大值。要求在屏幕上显示得到的最小生成树中包括了哪些城市间的道路,并显示得到的最小生成树的代价。

2、表示城市间距离网的邻接矩阵(要求至少6个城市,10条边)

3、最小生成树中包括的边及其权值,并显示得到的最小生成树的代价。

34.客户消费积分管理系统

问题描述:针对客户的消费情况,进行客户管理,根据客户的消费积分对客户实行不同程度的打折优惠。

基本要求:

1.采用一定的存储结构进行客户信息的存储;

2.对客户的信息可以进行修改、删除、添加;

3.能够根据消费情况进行客户积分的计算;

4.根据积分情况实行不同程度的打折优惠;

35.产品进销存管理系统

问题描述:针对某一种行业的库房的产品进销存情况进行管理。

基本要求:

1.采用一定的存储结构对库房的货品及其数量进行分类管理;

2.可以进行产品类的添加、产品的添加、产品数量的添加;

3.能够查询库房每种产品的总量、进货日期、销出数量、销售时间等;

36. 特殊矩阵的压缩存储算法的实现)

问题描述:对于特殊矩阵可以通过压缩存储减少存储空间。

基本要求:

1.针对多种特殊矩阵进行压缩存储,并能显示压缩后的相关地址和值;

2.输入在原来特殊矩阵中的地址,要求能从压缩后的矩阵中读出相应的值;

37.算术表达式的求解

问题描述:给定一个算术表达式,通过程序求出最后的结果。

基本要求:

1.从键盘输入要求解的算术表达式;

2.采用栈结构进行算术表达式的求解过程;

3.能够判断算术表达式正确与否;

4.对于错误表达式给出提示;

5.对于正确的表达式给出最后的结果;

38.实时监控报警系统

问题描述:建立一个报警和出警管理的系统

基本要求:

1.采用一定的存储结构存储报警信息,要求有内容、时间;

2.有一次的出警就应该在待处理的信息中删除这条信息;

3.记录出警信息;

4.待处理信息过多时会发出警告;

39. 车厢调度

问题描述:假设停在铁路调度站入口处的车厢序列的编号一次为1,2,3,4。设计一个程序,求出所有可能由此输出的长度为4的车厢序列。

40.迷宫问题(栈)

问题描述:

以一个m*n的长方阵表示迷宫,0和1分别表示迷宫中的通路和障碍。设计一个程序,对任意设定的迷宫,求出一条从入口到出口的通路,或得出没有通路的结论。

基本要求:

首先实现一个以链表作存储结构的栈类型,然后编写一个求解迷宫的非递归程序。求得的通路以三元组(i,j,d)的形式输出,其中:(i,j)指示迷宫中的一个坐标,d表示走到下一坐标的方向,如:对于下列数据的迷宫,输出的一条通路为:(1,1,1),(1,2,2),(3,2,3),(3,1,2),…。

测试数据:

迷宫的测试数据如下:左下角(1,1)为入口,右下角(8,9)为出口。

实现提示:

计算机解迷宫通常用的是“穷举求解”方法,即从入口出发,顺着某个方向进行探索,若能走通,则继续往前进;否则沿着原路退回,换一个方向继续探索,直至出口位置,求得一条通路。假如所有可能的通路都探索到而未能到达出口,则所设的迷宫没有通路。

可以二维数组存储迷宫数据,通常设定入口点的下标为(1,1),出口点的下标为(n,n)。为处理方便起见,可在迷宫的四周加一圈障碍。对于迷宫中任一位置,均可约定有东、

南、西、北四个方向可通。

选做内容:

(1)编写递归形式的算法,求得迷宫中所有可能的通路;

(2)以方阵形式输出迷宫及其通路。

二.本课程设计的时间安排和组织实施

本课程设计是在的16周到18周进行的,学生在三周内完成了四个题目,在第19周的星期一到星期二进行检查和收取学生所做的设计(包括打印的报告,电子文档和源程序,同时进行简单的答辩)。

此设计为了培养学生独立分析问题和解决问题的能力,以及团队合作的精神,采用三(四)人分为一组,共完成6个题目,前3个为参考题目(一)中的题目,这是个人独立完成,最后3个题目选参考题目(二)中,为小组合作完成,同时要体现出不同的地方。

每周固定安排两次辅导,如果过程中有什么问题随时安排时间辅导,也通过电子邮件进行辅导。

三、成绩评定:

设计成绩根据口试时程序运行答辩情况(20分),程序的结构是否合理(10分),算法说明的清晰程度(10分),上交磁盘中程序存放的规范程度(10分),课程设计总结情况(10分),课程设计过程中的课程设计进展情况(10分),独立完成情况(学生间不相互雷同)(20分),以及团队配合情况(10分)来评判。

总体设计要求与设计报告

设计要求:

模块化程序设计

锯齿型书写格式

必须上机调试通过

小组独立完成、不得抄袭、结合最终结果和答辩情况给出成绩。

设计报告格式

1、设计目的

2、总体设计(程序设计组成框图、流程图)

3、详细设计(模块功能说明(如函数功能、入口及出口参数说明,函数调用关系描述等)

4、调试与测试:调试方法,测试结果的分析与讨论,测试过程中遇到的主要问题及采取的解决措施

5、源程序清单和执行结果:清单中应有足够的注释

6、报告的字数,不算源代码清单不少于4页,按规定的模板封面输出,不准自定义封面格式。

提交报告的格式

正文宋体小四号字

每个自然段开始空两格.

文中英文用新罗马(time new roman),四号

源程序清单用英文新罗马五号

数据结构课程设计题目及要求

实验一~实验四任选一题;实验五~实验九任选一题。 实验一运动会分数统计 一、实验目的: (1)熟练掌握线性表的两种存储方式 (2)掌握链表的操作和应用。 (3)掌握指针、结构体的应用 (4)按照不同的学校,不同项目和不同的名次要求,产生各学校的成绩单、团体总分报表。 二、实验内容: 【问题描述】 参加运动会的n个学校编号为1~n。比赛分成m个男子项目和w个女子项目,项目编号分别为1~m和m+1~m+w。由于各项目参加人数差别较大,有些项目取前五名,得分顺序为7,5,3,2,1;还有些项目只取前三名,得分顺序为5,3,2。写一个统计程序产生各种成绩单和得分报表。 【基本要求】 产生各学校的成绩单,内容包括各校所取得的每项成绩的项目号、名次(成绩)、姓名和得分;产生团体总分报表,内容包括校号、男子团体总分、女子团体总分和团体总分。 【测试数据】 对于n=4,m=3,w=2,编号为奇数的项目取前五名,编号为偶数的项目取前三名,设计一组实例数据。 【实现提示】 可以假设m≤20,m≤30,w≤20,姓名长度不超过20个字符。每个项目结束时,将其编号、类型符(区分取前五名还是前三名)输入,并按名次顺序输入运动员姓名、校名(和成绩)。 【选作内容】 允许用户指定某些项目可采取其他名次取法。

实验二停车场管理 一、实验目的: (1)熟练掌握栈顺存和链存两种存储方式。 (2)掌握栈的基本操作及应用。 (3)以栈模拟停车场,以队列模拟车场外的便道,按照从终端读入的输入数据序列进行模拟管理。 二、实验内容: 【问题描述】 设停车场是一个可停放n辆汽车的长通道,且只有一个大门可供汽车进出。汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车信放在车场的最北端),若车场内已停满n辆汽车,则后来的汽车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时,在它之后进入的车辆必须先退出车场为它让路,待该辆车开出大门外,其他车辆再按原次序进入车场院,每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用。试为停车场编制按上述要求进行管理的模拟程序。 【基本要求】 以栈模拟停车场,以队列模拟车场外的便道,按照从终端读入的输入数据序列进行模拟管理。每一组输入数据包括三个数据项:汽车“到达”或“离去”信息、汽车牌照号码以及到达或离去的时刻。对每一组输入数据进行操作后的输出信息为:若是车辆到达,则输出汽车在停车场内或便道上的停车位置;若是车辆离去,则输出汽车在停车场内停留的时间和应交纳的费用(在便道上停留的时间不收费)。栈以顺序结构实现,队列以链表结构实现。 【测试数据】 设n=2,输入数据为:(A,1,5),(A,1,15),(A,3,20),(A,4,25),(A,5,30),(D,2,35),(D,4,40),(E,0,0)。其中:A表示到达(Arrival);D表示离去(Departure);E表示输入结束(End)。 【实现提示】 需另设一个栈,临时停放为给要离去的汽车让路而从停车场退出来的汽车,也用顺序存储结构实现。输入数据按到达或离去的时刻有序。栈中每个元素表示一辆汽车,包含两个数据项:汽车的牌照号码和进入停车场的时刻。 【选作内容】 (1)两个栈共享空间,思考应开辟数组的空间是多少? (2)汽车可有不同种类,则他们的占地面积不同收费标准也不同,如1辆客车和1.5辆小汽车的占地面积相同,1辆十轮卡车占地面积相当于3辆小汽车的占地面积。(3)汽车可以直接从便道开走,此时排在它前面的汽车要先开走让路,然后再依次排到队尾。 (4)停放在便道上的汽车也收费,收费标准比停放在停车场的车低,请思考如何修改结构以满足这种要求。

数据结构课程设计报告模板

课程设计说明书 课程名称:数据结构 专业:班级: 姓名:学号: 指导教师:成绩: 完成日期:年月日

任务书 题目:黑白棋系统 设计内容及要求: 1.课程设计任务内容 通过玩家与电脑双方的交替下棋,在一个8行8列的方格中,进行棋子的相互交替翻转。反复循环下棋,最后让双方的棋子填满整个方格。再根据循环遍历方格程序,判断玩家与电脑双方的棋子数。进行大小判断,最红给出胜负的一方。并根据y/n选项,判断是否要进行下一局的游戏。 2.课程设计要求 实现黑白两色棋子的对峙 开发环境:vc++6.0 实现目标: (1)熟悉的运用c语言程序编写代码。 (2)能够理清整个程序的运行过程并绘画流程图 (3)了解如何定义局部变量和整体变量; (4)学会上机调试程序,发现问题,并解决 (5)学习使用C++程序来了解游戏原理。 (6)学习用文档书写程序说明

摘要 本文的研究工作在于利用计算机模拟人脑进行下黑白棋,计算机下棋是人工智能领域中的一个研究热点,多年以来,随着计算机技术和人工智能技术的不断发展,计算机下棋的水平得到了长足的进步 该程序的最终胜负是由棋盘上岗双方的棋子的个数来判断的,多的一方为胜,少的一方为负。所以该程序主要运用的战术有削弱对手行动战术、四角优先战术、在游戏开局和中局时,程序采用削弱对手行动力战术,即尽量减少对手能够落子的位置;在游戏终局时则采用最大贪吃战术,即尽可能多的吃掉对手的棋子;而四角优先战术则是贯穿游戏的始终,棋盘的四角围稳定角,不会被对手吃掉,所以这里是兵家的必争之地,在阻止对手进角的同时,自己却又要努力的进角。 关键词:黑白棋;编程;设计

java课程设计要求与题目

《面向对象程序设计》综合实验指导书一.课程设计的目的和任务 《面向对象程序设计》课程设计是软件工程专业本科学生在学习完《面向对象程序设计》课程之后的一个重要的实践环节。要求学生在教师的指导下,综合运用在《面向对象程序设计》课程中学过的面向对象程序设计思想与Java编程技巧,独立完成一项较为完整、并具有一定难度的课程设计任务,加深对面向对象程序设计思想的理解,掌握利用Java语言编写具体的应用程序。培养学生的团队合作精神、良好的程序设计风格以及了解应用程序的设计开发过程和Java程序编程与测试的能力。二.总体要求: 1、每个班分若干个组,每组2-3人(自由组合)课程设计题目由任 课老师指定; 2、人员分工:组长1人、组员1到2人。组长可由小组人员自行选出 或自荐,组长的职责是负责与老师交流,合理安排分配本组的各项任务,任务有:系统总体设计、编码、测试、写文档。 3、程序编码总体要求: 编程工具统一使用Eclipse。 统一使用Java的AWT组件进行GUI编程(或Applet编程), 必须有登录界面,登录的用户名和密码为组长的名字的全 拼;非Applet程序要求有一个框架窗口,关闭窗口时要注意 处理窗口事件退出程序。 程序编码时,必须严格遵守Java程序标识符的一般约定,并 要加适量的注释。 4、程序编码完成后,一定要进行严密的测试工作。 5、文档内容要求: 封面(见封面文件)。以下每个内容为一章; 项目计划(内容是:小组人员名单与所负责的工作)。 程序详细功能描述(描述你的程序能完成什么功能)。要求 200字左右。 程序使用说明(对程序的每个操作步骤的屏幕画面进行载 图,并加以文字说明)。 此次课程设计的编程心得。要求每人50字以上。 文档的字体与大小,统一采用“宋体五号字”;要将以上内容 合写成一篇完整的文档;文档头要加入标题和目录索引。 6、程序完成后,要提交文档与程序(包括源码,每组提交一份),

数据结构课程设计(附代码)-数据结构设计说明

应用技术学院课程设计报告 课程名称《数据结构课程设计》 设计题目猴子选大王;建立二叉树;各种排序;有序表的合并;成绩管理系统;院系计算机科学与信息工程专业计算机科学与技术班级 学号指导教师日期 一.目的与要求 1. 巩固和加深对常见数据结构的理解和掌握 2. 掌握基于数据结构进行算法设计的基本方法 3. 掌握用高级语言实现算法的基本技能 4. 掌握书写程序设计说明文档的能力 5. 提高运用数据结构知识及高级语言解决非数值实际问题的能力 二.课程设计容说明 1. 项目一 (1) 对设计任务容的概述 学生成绩管理** 任务:要现对学生资料的录入、浏览、插入和删除等功能。 输入:设学生成绩以记录形式存储,每个学生记录包含的信息有:学号和各门课程的成绩,设学生成绩至少3门以上。存储结构:采用线性链式结构。 (2) 详细设计 LinkList *create():输入学生成绩记录函数; void print(LinkList *head):显示全部记录函数 LinkList *Delete(LinkList *head):删除记录函数 LinkList *Insert(LinkList *head):插入记录函数 void menu_select():菜单选择 void ScoreManage():函数界面 (3) 程序流程图

(4) 程序模块及其接口描述 该程序可以分为以下几个模块: 1、菜单选择:void menu_select(); 提供五种可以选择的操作,在main函数过switch语句调用菜单menu_select()函数,进入不同的功能函数中完成相关操作。 2、输入功能:LinkList *create(); 通过一个for循环语句的控制,可以一次完成无数条记录的输入。并将其存入链

课程设计选题及要求

嵌入式系统课程设计选题及要求 一.课程设计目的 嵌入式课程设计是计算机科学与技术专业集中实践性环节之一,是学习完《嵌入式系统》课程后进行的一次全面的综合练习。其目的在于加深对嵌入式系统理论和基本知识的理解,掌握使用嵌入式软件设计的基本方法,提高解决实际问题的能力。 二.课程设计选题 1)打地鼠,android,难度☆☆ 2)打地鼠,裸机开发,打中1个LED闪1下,全部打中LED跑马灯3圈,难度 ☆☆ 3)贪吃蛇,android,难度☆☆ 4)电子计算器,android,难度☆ 5)电子广告牌:裸机开发,能自动轮流显示多张广告图片,难度☆ 6)电子相框:裸机开发,能显示相片,点击屏幕左、右边可以向前、后翻阅相 片,难度☆☆ 7)电子公告板:裸机开发,能向上滚动显示公告或通知。难度☆ 8)电子横幅:裸机开发,能向左滚动显示横幅,横幅的内容由串口输入和修改, 难度☆☆ 9)电子定时器:裸机开发,能设置几时、几分后响音乐。难度☆☆ 10)电子钟:LINUX网络编程,PC机通过SOCKET读取和设置开发板时间。难度 ☆☆ 11)本地控制LED灯:LINUX,控制开发板上的4个LED灯闪烁的类型和速度。 类型包括:一起闪、随机闪、跑马灯,速度分3档。难度☆ 12)远程控制LED灯:LINUX网络编程,PC机通过SOCKET控制开发板上的4个 LED灯闪烁的类型和速度。难度☆☆ 13)远程控制LED灯:LINUX网络编程+ android,使用安卓手机控制开发板上的 4个LED灯闪烁的类型和速度。难度☆☆☆ 14)远程读写SD卡:LINUX网络编程,PC机通过SOCKET读写开发板上的SD卡。 难度☆☆

课程设计题目及要求

题目: 应变管式测压传感器 一、技术要求 第一组: 1、满量程压力 100kg.f/cm 2 (10Mpa ) 2、最大应变 1000με 3、连接用螺纹 M12×1.25 4、最大外径 Φ20mm 5、应变管固有频率在10KHz 以上 6、供桥电压 3V 第二组: 1、满量程压力 200kg.f/cm 2(20Mpa )) 2、最大应变 1000-1500με 3、连接用螺纹 M16×1.5 4、最大外径 Φ24mm 5、应变管固有频率在10KHz 以上 6、供桥电压 3V 第三组: 1、满量程压力 300kg.f/cm 2(30Mpa )) 2、最大应变 1000-1500με 3、连接用螺纹 M20×1.5 4、最大外径 Φ26mm 5、应变管固有频率在10KHz 以上 6、供桥电压 3V (三组题:学号为1、4、7选做第一题;学号为2、5、8选做第二题;学号为3、6、9选做第三题,以后的学号依次类推) 二、设计内容 1、方案论证 结构选择 2、应变管设计及计算 (1) 材料选择 Qbe2 E= 1.31×105Mpa σb =1250 Mpa 35CrMnSiA E= 2. 1×105Mpa σb =1650 Mpa 安全系数:n=5 材料密度: ρ=8.23g/cm 3 许用应力[σ]=250 Mpa (也可以自己选择其他弹性材料) (2) 应变管设计 ①环向应力 h pd x 20=σ

②轴向应力 h pd t 40=σ ③合成应力 []σσσσ≤+=22max x y ④最大应变值 E σ ε≈ ⑤有效工作长度 g w L h d L )5.1~2.1(2 5.2+?= Lg=3mm 应变片的长度 ⑥螺纹强度校核 按仪器零件螺纹强度校核连接螺纹的长度 ⑦应变管固有频率 ρE L f 13.0= (g W L L L L L +++=21) ⑧最大输出电压 εK U U sc 04 1= 3、绘出装配草图(坐标纸) 4、绘出装配图 5、拆出全部零件图 6、书写设计说明书

数据结构课程设计报告范例

Guangxi University of Science and Technology 课程设计报告 课程名称:算法与编程综合实习 课题名称: 姓名: 学号: 院系:计算机学院 专业班级:通信121 指导教师: 完成日期:2012年12月15日

目录 第1部分课程设计报告 (3) 第1章课程设计目的 (3) 第2章课程设计内容和要求 (4) 2.1 问题描述 (4) 2.2 设计要求 (4) 第3章课程设计总体方案及分析 (4) 3.1 问题分析 (4) 3.2 概要设计 (7) 3.3 详细设计 (7) 3.4 调试分析 (10) 3.5 测试结果 (10) 3.6 参考文献 (12) 第2部分课程设计总结 (13) 附录(源代码) (14)

第1部分课程设计报告 第1章课程设计目的 仅仅认识到队列是一种特殊的线性表是远远不够的,本次实习的目的在于使学生深入了解队列的特征,以便在实际问题背景下灵活运用它,同时还将巩固这种数据结构的构造方………………………………………………………………………………………………………………………………………………………………………………………..(省略)

第2章课程设计内容和要求 2.1问题描述: 迷宫问题是取自心理学的一个古典实验。在该实验中,把一只老鼠从一个无顶大盒子的门放入,在盒子中设置了许多墙,对行进方向形成了多处阻挡。盒子仅有一个出口,在出口处放置一块奶酪,吸引老鼠在迷宫中寻找道路以到达出口。对同一只老鼠重复进行上述实验,一直到老鼠从入口走到出口,而不走错一步。老鼠经过多次试验最终学会走通迷宫的路线。设计一个计算机程序对任意设定的矩形迷宫如下图A所示,求出一条从入口到出口的通路,或得出没有通路的结论。 图A 2.2设计要求: 要求设计程序输出如下: (1) 建立一个大小为m×n的任意迷宫(迷宫数据可由用户输入或由程序自动生成),并在屏 幕上显示出来; (2)找出一条通路的二元组(i,j)数据序列,(i,j)表示通路上某一点的坐标。 (3)用一种标志(如数字8)在迷宫中标出该条通路; (4)在屏幕上输出迷宫和通路; (5)上述功能可用菜单选择。

计算机网络课程设计题目和要求

计算机网络课程设计通过课程设计,使学生在对计算机网络技术与发展整体了解的基础上,掌握网络的主要种类和常用协议的概念及原理,初步掌握以TCP/IP协议族为主的网络协议结构,培养学生在TCP/IP协议和LAN、WAN上的实际工作能力;学会网络构建、网络日常维护以及网络管理的方法,使学生掌握在信息化社会建设过程中所必须具备的计算机网络组网和建设所需的基本知识与操作技能。运用网络工程和软件工程思想,按照需求分析、规划、设计、配置的基本流程,经历一个完整的网络工程过程,培养学生调查研究、查阅技术文献、资料、手册以及编写技术文档的能力,培养学生将理论知识应用于实践的能力。 一、格式要求及须知: (1)使用学院网站的课程设计模版,要求格式美观,字体及编号要求见表1。 表1 字体及编号要求

(2)参考文献:参考课本的参考文献格式(附录C)。但编号换成[1]、[2]……(3)附录:课程设计中的代码或得到的数据包等数据将作为该设计附件或附录,题目需要但没有的相应代码及数据包文件的将记整组不及格,需要重做。 (4)成绩记录:该设计成绩将记录到教务处成绩管理系统中。 (5)打印:经审查(发邮件到指导老师处或当面交流修改)后,方可打印、存档。打印后递送到指导老师的信箱。 (6)如发现两组设计雷同或抄袭互联网,该组重做! 二、任务完成形式: 交付课程设计说明书、设计作品(需要验收)。 设计作品指的是完整的源程序代码(对于第二类题目为仿真文件)。 课程设计说明书(纸质+电子版),内容包括:设计任务、需求分析、总体设计、详细设计(相应地给出关键的代码)、设计总结(评价/遇到的问题/体会/建议等)、使用说明等。 设计工作计划与进度安排: 根据所选题目,合理安排进度计划,总体上需要40个小时。以下仅供参考: 1. 原理知识 4小时 2. 程序设计技术 4小时 3. 开发环境与程序调试环境 4小时 4. 总体设计、关键环节的详细设计 8小时

数字逻辑电路课程设计题目及要求

数字逻辑电路课程设计题目及要求 项目一:高精密数控电源的设计和制作: 要求:电源输出电压为:0—9.9V,步进为0.1V,有两位数码管显示,每位有两个按键能加能减的作用。功率大小不做具体的要求,电路设计不能有专业的A/D芯片。项目二:自行车的里程表设计和制作: 要求:设计一个自行车里程表电路,有两位数码管显示,显示数字的单位为百米,自行车轮胎直径为0.99M。 项目三:自行车的速度测定仪表的设计和制作: 要求:设计一个自行车测速电路,有两位数码管显示,显示数字的单位为M/S,采样时间不能超过5S,自行车轮胎直径为0.99M。 项目四:多功能抢答器的设计和制作: 要求:多功能抢答器为八路的,具有数码和指示灯双重指示,电路的附加的电路一个有计时、报警等电路,所用芯片必须为我们所学的。 项目五:数字频率计的设计和制作: 要求:数字频率计的显示为两位数码管,单位为KHZ,具有溢出报警功能,附带震荡电路,频率可调几K到几百KHZ。 项目六:交通灯的设计和制作: 要求:具有真正模拟十字路口的交通灯的能力,红灯5秒,绿灯4秒,黄灯1秒等的时间也可以自己设定。 项目七:数字电子钟逻辑电路的设计和制作: 要求:数字电子钟逻辑电路要具有电子手表的功能,例如时间的设定,整点报时,可以设定闹钟等功能,只需四位数码。 项目八:定时控制器电路的设计和制作: 要求:定时控制器电路能够定时控制家用电器的开关,例如能按时开启、关断电饭煲煮饭等,电器用灯泡代替,时间可以缩短60倍。 项目九:LED广告牌电路设计和制作: 要求:LED广告牌电路能够模拟市面上的LED广告灯箱,能有四个字显示能力(共青学院),可以的话周围有霓虹灯闪烁。 项目十:易拉罐技术电路的设计与制作: 要求:易拉罐在传送带上过时,记录数值,以20灌为一个单位,满二十灌重新 计数并给出提示音,此过程模拟工厂易拉罐装箱过程. 项目十一:数显风扇调速器电路 要求:具有中低高三档,0为停止,1为低档。2为中档,3为高档。调节开关设 置成触摸,遥控等。可以的话加入温度自动控制电路。 项目十二:出租车计价器电路

数据结构课程设计说明书讲解

安徽理工大学 数据结构 课程设计说明书题目: 一元多项式计算 院系:计算机科学与工程学院 专业班级:数字媒体13-1班 学号: 2013303102 学生姓名:钱福琛 指导教师:梁兴柱 2015年 1月 9 日

安徽理工大学课程设计(论文)任务书计算机科学与工程学院

2014年 11 月 10 日安徽理工大学课程设计(论文)成绩评定表

目录 1 问题描述 2 功能描述 2.1 课题要求........................................... 2.2 软件格式规定....................................... 3 设计 2 3.1 相关函数介绍说明................................... 3.2 主程序的流程基函数调用说明......................... 4 程序设计 4 4.1 多项式存储的实现................................... 4.2 加减乘除算法....................................... 4.2.1加法运算的实现............................... 4.2.2减法运算的实现............................... 4.2.3乘法运算的实现............................... 4.2.4除法运算的实现............................... 4.3 函数调用关系图..................................... 5 运行测试

液压课程设计要求及题目2014-5

题目1: 一卧式钻镗组合机床动力头要完成快进-工进-快退-原位停止的工作循环;最大切削力为F L=11500N,动力头自重F G=19500N;工作进给要求能在0.02~1.2m/min范围内无级调速,快进、快退速度为6m/min;工进行程为100mm,快进行程为300mm;导轨型式式平导轨,其摩擦系数取fs=0.2,fd=0.1;往复运动的加减速时间要求不大于0.5s。 设计要求: (1)确定执行元件(液压缸)的主要结构尺寸(D、d等) (2)确定系统的主要参数; (3)选择各类元件及辅件的形式和规格,列出元件明细表; (4)绘制正式液压系统图(A3手绘) (5)进行必要的性能估算(系统发热计算和效率计算)。

题目1: 一台专用双面铣床,最大的切削力为9000N,工作台、夹具和行程的总重量4000N,工件的总重量为1800N,工作台最大行程为600mm,其中工进行程为350mm。工作台的快进速度为4.5m/min,工进速度在50~100mm/min范围内无级调速。工作台往复运动的启制(加速减速时间)为0.05s,工作台快退速度等于快进速度,滑台采用平面导轨。静摩擦系数为0.2s,动摩擦系数为0.1。(夹紧力大于等于最大静摩擦力) 机床的工作循环为:工作定位-工件夹紧-工作台快进-工作台工进-加工到位后停留-快退-原位停止-工件松开-定位销拔出。 要求系统采用电液结合实现自动化循环,速度换接无冲击,且速度要平稳,能承受一定量的反向负载。 试完成: (1)按机床要求设计液压系统,绘制液压系统图;(A3手绘) (2)确定夹紧缸、主工作液压缸的结构参数; (3)计算系统各参数,选择液压元件型号,列出元件明细表; (4)列出设计系统中的电磁铁动作顺序表。

数据结构课程设计(附代码)

上海应用技术学院课程设计报告 课程名称《数据结构课程设计》 设计题目猴子选大王;建立二叉树;各种排序;有序表的合并;成绩管理系统;院系计算机科学与信息工程专业计算机科学与技术班级 姓名学号指导教师日期 一.目的与要求 1. 巩固和加深对常见数据结构的理解和掌握 2. 掌握基于数据结构进行算法设计的基本方法 3. 掌握用高级语言实现算法的基本技能 4. 掌握书写程序设计说明文档的能力 5. 提高运用数据结构知识及高级语言解决非数值实际问题的能力 二.课程设计内容说明 1. 项目一 (1) 对设计任务内容的概述 学生成绩管理** 任务:要求实现对学生资料的录入、浏览、插入和删除等功能。 输入:设学生成绩以记录形式存储,每个学生记录包含的信息有:学号和各门课程的成绩,设学生成绩至少3门以上。存储结构:采用线性链式结构。 (2) 详细设计 LinkList *create():输入学生成绩记录函数; void print(LinkList *head):显示全部记录函数 LinkList *Delete(LinkList *head):删除记录函数 LinkList *Insert(LinkList *head):插入记录函数 void menu_select():菜单选择 void ScoreManage():函数界面

(3) 程序流程图 (4) 程序模块及其接口描述 该程序可以分为以下几个模块: 1、菜单选择:void menu_select(); 提供五种可以选择的操作,在main函数中通过switch语句调用菜单menu_select()函数,进入不同的功能函数中完成相关操作。

中南大学《数据结构》课程设计题目及要求

《数据结构》课程设计指导书 (一):设计目的: 1)了解并掌握数据结构与算法的设计方法,具备初步的独立分析和设计能力; 2)初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;3)提高综合运用所学的理论知识和方法独立分析和解决问题的能力; 4)进行全面综合的训练,对课堂教学、实验等环节的有益补充。 5)提高解决实际问题和培养软件工作所需的动手能力。 6)深化理解和灵活掌握教学内容 7)进行软件工程的综合训练。训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风。 (二):设计要求: 1) 学生必须仔细阅读《数据结构》课程设计方案,认真主动完成课设的要求。有问题及时主动通过各种方式与教师联系沟通。 2) 学生要发挥自主学习的能力,充分利用时间,安排好课设的时间计划,并在课设过程中不断检测自己的计划完成情况,及时向教师汇报。 3) 课程设计按照教学要求需要两周时间完成,两周中每天(按每周5天)至少要上3-4小时的机来调试C/C++语言/JAVA设计的程序,总共至少要上机调试程序30小时 4) 课程设计题目如下,题后有要求的按要求完成,没有要求的至少从中选择并完成二个题目。 5) 设计期间,要求严格遵守学校规章制度和实验室管理制度。 6) 按指定时间上机,服从指导教师和实验室其他老师的安排。 7) 上机前,应编写相应的程序,禁止无准备的上机。 (三):课程设计题目: 一、试设计一个航空客运订票系统。基本要求如下: 1、每条航线所涉及的信息有:终点站名、航班号、飞机号、飞机周日(星期几)、 乘员定额、余票量、订定票的客户名单(包括姓名、订票量、舱位等级1,2或3)以及等候替补的客户名单(包括姓名、所需数量)。

C语言课程设计参考题目及要求

C语言课程设计参考设计题目 1、学生信息管理 (1)问题描述 学生信息包括:学号,姓名,年龄,性别,出生年月,地址,电话,E-mail等。试设计一学生信息管理系统,使之能提供以下功能: ●系统以菜单方式工作 ●学生信息录入功能(学生信息用文件保存)---输入 ●学生信息浏览功能——输出 ●查询、排序功能——算法 1、按学号查询 2、按姓名查询 ●学生信息的删除与修改(可选项) (2)功能要求 ●界面简单明了; ●有一定的容错能力,比如输入的成绩不在0~100之间,就提示不合法,要求重新 输入; ●最好用链表的方式实现。 (3)算法分析 首先,一个学生包括这么多的属性,应该考虑定义一个结构,其次,我们应该考虑数据的存储形式:是定义一个数组来存储,还是定义一个链表呢?在这里假如我们以数组的方式来存储,当然可以,但是我们知道,假如我们定义一个数组的话,我们首先必须知道学生人数大概是多少,以便我们确定数组的大小,但是题目中没有给出,而且题目要求中有大量的删除、插入操作,所以用链表的方式比较方便。 对于菜单的实现,其实也比较简单,首先我们用printf语句把程序的功能列出来,然后等待用户输入而执行不同的函数,执行完了一个功能后又回到菜单。文件的读写操作大家参照书中的有关文件的章节。 2、学生综合测评系统 每个学生的信息为:学号、姓名、性别、家庭住址、联系电话、语文、数学、外语三门单科成绩、考试平均成绩、考试名次、同学互评分、品德成绩、任课教师评分、综合测评总分、综合测评名次。考试平均成绩、同学互评分、品德成绩、任课教师评分分别占综合测评总分的60%,10%,10%,20%。 A、学生信息处理 (1) 输入学生信息、学号、姓名、性别、家庭住址、联系电话,按学号以小到大的顺序存入文件中。 提示:学生信息可先输入到数组中,排序后可写到文件中。 (2) 插入(修改)同学信息: 提示:先输入将插入的同学信息,然后再打开源文件并建立新文件,把源文件和输入的信息合并到新文件中(保持按学号有序)若存在该同学则将新记录内容替换源内容, (3) 删除同学信息: 提示:输入将删除同学号,读出该同学信息,要求对此进行确认,以决定是否删除将删

山东建筑大学数据结构课程设计报告

山东建筑大学计算机科学与技术学院 课程设计说明书 题目:基于逆邻接表的有向图基本操作的实现课程:数据结构 院(部):计算机学院 专业:计科 班级:133 学生姓名:潘含笑 学号:20131111092 指导教师:李盛恩 完成日期:2015.07.03

目录 课程设计任务书.................................................. I 课程设计任务书................................................. II 逆邻接链表实现有向图.. (3) 一、问题描述 (3) 二、数据结构 (3) 三、逻辑设计 (3) 四、编码 (5) 五、测试数据 (14) 六、测试情况 (16) 逆邻接链表实现有向图 (17) 一、问题描述 (17) 二、数据结构 (17) 三、逻辑设计 (17) 四、编码 (18) 五、测试数据 (24) 七、测试情况 (24) 结论 (26) 课程设计指导教师评语 (28)

山东建筑大学计算机科学与技术学院 课程设计任务书 指导教师(签字):教研室主任(签字)

山东建筑大学计算机科学与技术学院 课程设计任务书 指导教师(签字):教研室主任(签字)

逆邻接链表实现有向图 二、数据结构 三、逻辑设计 1、总体思路 先实现Network类,通过队列实现BFS,通过堆栈实现DFS和拓扑排序。再构建Graph类,并继承Network类实现以逆邻接链表为存储结构的有向图。 2、模块划分(以图示的方法给出各个函数的调用关系)

3、函数或类的具体定义和功能Network类:

数据库课程设计选题

数据库课程设计选 题

数据库系统综合设计选题 一、总体要求 1)分组要求:按课题组方式开发,每组2~3人,组长一名,角色划分、任务分配 2)开发环境要求 数据库平台:MS SQL Server、Oracle 开发平台:J2EE 软件架构:B/S 3)选题要求:每个班级各个项目组的课题不能相同。 4)设计要求 数据库设计方面:优化的数据库结构、完善的数据完整性控制、视图的正确使用、触发器的应用、存储过程(或函数)的应用、基于索引的物理结构的优化实现。 系统实现方面:JSP程序中实现数据库的连接、使用SQL语言实现数据库的各种操作、完成系统的基本功能。 5)验收项目内容与要求 以小组单位验收,先由组长作项目开发总体情况介绍,人员及其分工情况、相关技术的使用情况,系统的实际运行效果检查,指导老师对每一位成员进行询问,对每一位同学的各项验收指标(每一项指标具有不同的权值)打分。 特别要求:项目组每一位成员均需学会和掌握JSP环境下经过数据库接口连接数据库服务器和进行数据库操作的编程方法。

二、综合设计课题及其要求 1、学生成绩管理系统 要求: 1)了解(需求分析)学生成绩管理系统的功能需求、数据需求以及其它需求; 2)分析从学生入学、课程学习、专业实践、实习、毕业设计等相关环节的业务流程及相关实体; 3)对所涉及的各类实体进行抽象,包括:学生信息、课程信息、教师信息、专业信息等; 4)画出E-R图,转换并优化数据库的逻辑结构及物理结构; 5)设计并实现一个简单系统。 2、教职员工管理系统 要求: 1)了解(需求分析)教职员工管理系统的功能需求、数据需求以及其它需求; 2)分析从新教师入职、岗位变动、业务培训、教学与科研情况、离职或退休等整个业务流程及相关实体 3)对所涉及的各类实体进行抽象,包括:员工基本信息、岗位变动信息、业务培训信息、部门信息、经办人信息等; 4)画出E-R图,转换并优化数据库的逻辑结构及物理结构; 5)设计并实现一个简单系统。

课程设计题目

题目一 题目:广告公司网络的设计 1.基本背景描述 某广告公司现有分公司1(50台pc)和分公司2(40台pc),分公司1和分公司2都拥有各自独立的部门。分公司1和分公司2包括:策划部、市场部、设计部。为提高办公效率,该广告公司决定建立一个内部网络。 该广告公司内部使用私有IP地址/23,要求该广告公司的分公司1和分公司2之间使用路由器进行连接(不使用vpn技术),使用动态的路由协议(RIP)。分公司1和分公司2内部通过划分vlan技术,使不同的部门在不同的局域网内。2.方案设计 写题为“广告公司的网络解决方案”的网络方案设计书。包括: ①完整的校园网络拓扑图(网络拓扑图要求使用visio工具进行设计绘制); ②结合网络拓扑图进行IP地址的规划; ③分公司1的VLAN的设计与规划。 - ④分公司2的VLAN的设计与规划。 ⑤分公司1和分公司2的网络互连互通。 设计内容及工作量 1、写题为“广告公司的网络解决方案”的网络方案设计书。要求画出完整的企业网络拓扑图(网络拓扑图要求使用visio工具进行设计绘制)。 2、结合网络拓扑图进行IP地址的规划,要求通过表格的形式体现。 3、按照任务书的具体要求书写相应的设计书及实现的过程纪录。 题目二 某学院有1900台个人计算机,50台服务器,其中办公用计算机60台,教学用计算机60台,科研用计算机120台,研究生计算机200台。其余为学生实验电脑。 < 分配的IP地址为: 服务器:—/26 网关为:/26 个人计算机:— 学院现在三层交换机6台,每台三层交换机可划VLAN(虚拟局域网)个数为100。24口二层交换机若干台。 1.请为学院的全部计算机分配IP地址,并使用上述设备为学院设计网络。 2.要求: a.画出网络拓扑图。 b.给出每个网段的IP范围,子网掩码,默认网关。 c.为三层交换机规划VLAN。给每个VLAN接口分配IP地址。 [

最新PLC课程设计题目及要求

P L C课程设计题目及 要求

1.电动机顺序的控制 要求:按下启动按钮后,电动机M1运转10S, 停止5S, 电动机M2与M1相反,即M1停止时M2运行,M2运行时M1停止,如此循环往复,直至按下停车按钮。 2.喷泉的控制 要求:有A、B、C、三组喷头,启动后:A组先喷5S;然后B、C同时喷,A 停;5S后B停;再5S后C停,而A、B又喷;再2S,C也喷;持续5S后全部停喷。再过3S重复前述过程 3.压力机控制 要求:压力机冲头停在上方原始位置,行程开关SQ1被压下,其常开触点闭合。按下启动按钮,其常开触点通电一次,液压电磁阀YV1接通,冲头下行。当冲头接触工件后压力迅速升高,压力继电器SP压力值达到预定值后,其常开触点闭合。保压5S,接通电磁阀YV2。冲头上升,返回原始位置再压住行程开关SQ1,冲头停止上升,按上述控制要求设计。 4.液压滑台自动循环运动控制 要求:液压滑台循环工作过程为预备、快进、工进、停留和快退五个工步,分别利用1000~1005作为各步的工进继电器,各工步转换条件由外设SB、SQ1、SQ2、SQ3和压力继电器SP提供,对应各步的动作作为驱动电磁阀YV1、YV2和YV3的线圈。 5.* 物料传送系统的控制 在自动物流生产线上,一般通过加工、检侧、包装等工位的传送带来运送加工的工作。每套传送系统由不同电机控制,为节能运行,没有工件的

传送暂不运行,检测到工件则启动传送带,工件到达传送带的尾端,启动下条传送带,如果前条传送带没有工件则停止运行。 动作要求:按启动按钮后加工工位的传送带开始运行,有工件运行到传送带的尾部时传感器动作,启动检测工位的传送带,再传送到尾部时传感器动作,启动包装工位传送带,该传送带启动2S后,前条传送带没有工件则停止运行。传感器检测到工件到位置3S后,若前条传送带没有工件停止运行。 6. 工业自动清洗机的控制 在工业现场有一种自动清洗机,工作时将需要清洗的部件放在小车上,按启动按钮后小车自动进入清洗池指定位置A,首先加入酸性洗料,小车再继续前行到另一位置B,然后返回到位置A,打开排酸阀门将酸性洗料放出,完成一次酸洗后。再加入碱性洗料,清洗过程同酸洗。等碱性洗料完全放出后,小车从位置A回到起始位置,等待下次启动信号。 动作要求:该清洗设备的小车前进后退通过电动机的正反转控制,酸性洗料的碱性洗料通过两个泵分别注入,通过打开电磁阀排放洗料,再这里洗料的注入和放出都通过时间控制,实际的清洗也可以用液位开关控制。 7.升降控制系统 有一个升降控制系统。在自动控制时,要求上升10S,停5S,下降 10S,停10S,往复循环10次后停止运行。 8.车库自动门的控制系统

嵌入式系统课程设计选题要求及题目

嵌入式系统课程设计—选题要求及课题 1、嵌入式系统课程设计时长两星期,要求学生分组进行课程设计,每组学生人数为2~3人(可在不超过3人的范围内由指导教师具体规定),报告雷同超过60%者,成绩都记不及格! 2、学生需要在附后的设计题目总表中进行选题,原则上需要在6月17号前完成选题,并开始课程设计工作! 附:嵌入式系统课程设计题目 ARM-Linux 嵌入式系统在农业大棚中的应用(温度、湿度和二氧化碳浓度是影响棚栽农作物生长的3 大要素。为了实现农业大棚中这3 种要素数据的远程实时采集,引入了当前嵌入式应用中较为成熟的ARM9 微处理器和Linux 嵌入式操作系统技术, 采用温度传感器PH100TMPA、湿度传感器HM1500 和二氧化碳浓度传感器NAP221A ,设计一种基于TCP/ IP 协议的嵌入式远程实时数据采集系统方案。从硬件设计和软件实现2 方面对该系统进行具 体设计。) 1.ARM系统在LED显示屏中的应用(利用ARM系统控制彩色LED显示屏) 2.ARM 嵌入式处理器在智能仪器中的应用(设计一种基于ARM 嵌入式处理器系统的智 能仪器的硬件和软件设计方案, 并结合uc/o s2II或者Linux嵌入式实时操作系统, 给出一套完整的任务调度和管理的方法, 最后用实例说明) 3.ARM系统在汽车制动性能测试系统中的应用(采用ARM系统构建一个路试法的汽车制 动性能测试系统) 4.ARM 嵌入式控制器在印染设备监控中的应用(针对拉幅热定型机,设计一种基于485 总 线的分布式监控系统。用ARM 嵌入式控制器实现主、从电机的同步运行和烘房温度的控制;在PC 机上用VB6. 0 设计转速和温度的监控画面;实现ARM、变频器和PC 机之间的数据通信。) 5.基于ARM系统的公交车多功能终端的设计(完成电子收费、报站、GPS定位等功能) 6.基于ARM9的双CAN总线通信系统的设计(设计一种基于ARM9内核微处理器的双路 CAN总线通信系统。完成系统的总体结构、部分硬件的设计,系统嵌入式软件的设计,包括启动引导代码U - boot、嵌入式L inux - 214118操作系统内核、文件系统以及用户应用管理软件四个部分。) 7.基于ARM9 和Linux 的嵌入式打印终端系统(嵌入式平台上的打印终端的外围电路连 接设计、嵌入式Linux 的打印机驱动程序开发和应用程序的开发) 8.基于ARM 的车载GPS 终端软硬件的研究(重点研究基于ARM 的导航系统的软硬件设

课程设计题目及要求

课程设计题目及要求1、OA管理系统——考勤及其管理

2、OA管理系统——公用管理功能 3、工资管理系统 系统功能结构图

4、图书馆管理系统

5、高校学生选课系统 系统由四个模块组成(登录模块、学生业务模块、教师业务模块、教务业务模块)。 第一个登录模块主要完成两方面内容,一是实现对当前登录人员的帐号密码进行校验。二是确定人员登录类型并给予相应的流程控制。 第二个学生业务模块主要为学生提供一个快捷清晰的选课方式,前台页面要对当前学生可选课程、已选课程和课程表进行清晰的展示,并明确列出课程的上课时间、地点、任课教师以及课程简介。还要处理学生对所选课程的修正,功能操作要简单便捷明了。 第三个教师业务模块是为教师的提供一个任课工作安排获取渠道。在此模块中教师登录后,可以查看自己所教授的课程时间和地点,并且能查看选修了自己课程的学生名单。 第四个教务业务模块是提供给教务管理人员的操作后台,教务人员对本系统拥有最高权限。处理人员注册业务,将人员注册信息录入数据库,并明确注册类型给予对应的权限。可查看、修改、删除所有学生和教师的信息。教务人员可以

发布课程,指定任课教师、确定上课教室和时间。 6、网上商城购物系统 整个购物车及订单管理系统主要由购物车管理模块、订单管理模块,商品管理模块,用户管理模块,几部分组成,具体功能需求描述如下: 1、顾客可以查看商品,方便地对购物车中的商品进行新增,数量修改、删除及清空操作。 2、成功登陆的会员可购买商品,提交购物车,填写订单及付款。。 3、后台管理员登陆后台可对订单进行管理。处理,未处理,已处理。 4、后台管理员登陆后台可对用户进行管理。 5、后台管理员登陆后台可对商品进行管理。 7、药库库房管理系统 药库库房管理系统为前台显示:前台系统主要的面向工作人员展示,主要的功能有药品录入、药品出库、药品退货、药品模糊查询和添加黑名单。在填入入库药品信息并点击确定按钮后后台逻辑类等会进行操作,并在操作后弹出反馈信息页面,显示各个信息。出库操作会自动在各类库房中相应减少。后台系统的主要是查询出入库信息,库存列表,以及传入数据的各项逻辑操作。主要功能有:药品进出库查询、库存信息查询。出入库药品信息自动分析。 业务流程图 (注:图中总管理员拥有所有操作,而进出库管理员只能进行进库、出库管理)

数据结构课程设计报告模板

课程设计说明书 课程名称:数据结构与算法 专业:计算机科学与技术班级:103013 姓名:徐粤玲学号:03 指导教师:苑擎飏成绩: 完成日期:2012 年 1 月12 日

任务书 题目:黑白棋系统 设计内容及要求: 1.课程设计任务内容 通过玩家与电脑双方的交替下棋,在一个8行8列的方格中,进行棋子的相互交替翻转。反复循环下棋,最后让双方的棋子填满整个方格。再根据循环遍历方格程序,判断玩家与电脑双方的棋子数。进行大小判断,最红给出胜负的一方。并根据y/n选项,判断是否要进行下一局的游戏。 2.课程设计要求 实现黑白两色棋子的对峙 开发环境:vc++6.0 实现目标: (1)熟悉的运用c语言程序编写代码。 (2)能够理清整个程序的运行过程并绘画流程图 (3)了解如何定义局部变量和整体变量; (4)学会上机调试程序,发现问题,并解决 (5)学习使用C++程序来了解游戏原理。 (6)学习用文档书写程序说明

摘要 本文的研究工作在于利用计算机模拟人脑进行下黑白棋,计算机下棋是人工智能领域中的一个研究热点,多年以来,随着计算机技术和人工智能技术的不断发展,计算机下棋的水平得到了长足的进步 该程序的最终胜负是由棋盘上岗双方的棋子的个数来判断的,多的一方为胜,少的一方为负。所以该程序主要运用的战术有削弱对手行动战术、四角优先战术、在游戏开局和中局时,程序采用削弱对手行动力战术,即尽量减少对手能够落子的位置;在游戏终局时则采用最大贪吃战术,即尽可能多的吃掉对手的棋子;而四角优先战术则是贯穿游戏的始终,棋盘的四角围稳定角,不会被对手吃掉,所以这里是兵家的必争之地,在阻止对手进角的同时,自己却又要努力的进角。 关键词:黑白棋编程设计 s

相关主题