ImageVerifierCode 换一换
格式:DOCX , 页数:36 ,大小:40.26KB ,
资源ID:28724669      下载积分:10 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/28724669.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(计算机科学与技术专业级课程设计候选题目汇总.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

计算机科学与技术专业级课程设计候选题目汇总.docx

1、计算机科学与技术专业级课程设计候选题目汇总1 电梯调度算法模拟说明:电梯调度算法的基本原则就是如果在电梯运行方向上有人要使用电梯则继续往那个方向运动,如果电梯中的人还没有到达目的地则继续向原方向运动。具体而言,如果电梯现在朝上运动,如果当前楼层的上方和下方都有请求,则先响应所有上方的请求,然后才向下响应下方的请求;如果电梯向下运动,则刚好相反。题目难度:较难设计要求:模拟多人在不同楼层同时要求到各自目的地时电梯的响应顺序,要求使用C语言编程,定义合适的数据结构。最后,需要说明设计思想,同时给出能够运行的源程序,并给出对应的程序流程图。设计提示:可以用一个结构体表示乘电梯的人,其中内容包括人的姓

2、名、起始楼层、目的楼层;建立一个结构体的数组模拟当前所有需要乘电梯的人。把这个结构体数组作为程序的输入,通过对数组中每个人的起始楼层和目的楼层进行分析,确定每个人进出电梯的顺序,并打印输出。比如: 当前楼层是4,结构体数组中共有3个人,A:7 3 B:610 C:78;则输出应该是: 当前楼层为6,B进入 当前楼层为7,C进入 当前楼层为8,C出去 当前楼层为10,B出去 当前楼层为7,A进入 当前楼层为3,A出去2 迷宫求解说明:求迷宫从入口到出口的路径,即从迷宫的入口出发,顺某一方向向前探索,若能走通,则继续往前走;否则沿原路退回,换一个方向继续探索,直到所有可能的通路都探索为止。题目难度

3、:一般设计要求:给出迷宫的入口和出口及相关的通路,求出从入口到出口的路径。要求使用C语言编程,定义合适的数据结构。最后,需要说明设计思想,同时给出能够运行的源程序,并给出对应的程序流程图。设计提示:可以使用一个二维数组来表示迷宫,其中分别用1、0表示通与不通;算法的基本思想是:若当前位置“可通”,则纳入“当前路径”,并继续朝“下一位置”探索,即切换“下一位置”为“当前位置”, 如此重复,到达出口;若当前位置“不可通”,则应顺着“来向”退回到“前一通道块”,然后朝“来向”之外的其它方向探索。若该通道块四周4个方块均“不可通”,则应从“当前路径”中删除该通道块。使用栈结构记录当前路径,当前位置入栈

4、表示向前行,出栈则表示从当前位置退回。3 学生运动会成绩数据库功能:学生运动会成绩数据库系统记录某校运动会上全部运动项目,各系获得的分数及排名的情况,包括50、100、200,400,1500米,跳高,跳远,标枪,铅球铁饼等。进入系统后可以输入和修改某个项目的结果情况,可以按各系院编号输出总分;按总分排序;按男团体总分排序;按系院编号查询;按项目编号查询;按女团体总分排序。分步实施:1) 初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数;2) 完成最低要求:建立一个文件,包括某个系,5个项目的得分情况,能对文件中的信息进行扩充(追加),修改和删除;3) 进一步要求:完成对多个系,多

5、个项目的得分排序,以及完成系统查询功能。有兴趣的同学可以自己扩充系统功能。键盘输入:系院数目,男子项目数女子项目数,(每项目取前三名,分别为10,5,2分)要求:1)界面友好,函数功能要划分好2)总体设计应画一流程图3)程序要加必要的注释4) 要提供程序测试方案5) 程序一定要经得起测试,宁可功能少一些,也要能运行起来,不能运行的程序是没有价值的。 4. 哈夫曼树应用功能: 1从终端读入字符集大小n,以及n个字符和n个权值,建立哈夫曼树并将它存于文件hfmTree中.将已在内存中的哈夫曼树以直观的方式(比如树)显示在终端上;2利用已经建好的哈夫曼树(如不在内存,则从文件htmTree中读入),

6、对文件ToBeTran中的正文进行编码,然后将结果存入文件CodeFile中,并输出结果,将文件CodeFile以紧凑格式先是在终端上,每行50个代码。同时将此字符形式的编码文件写入文件CodePrint中。3利用已建好的哈夫曼树将文件CodeFile中的代码进行译码,结果存入文件TextFile中,并输出结果。分步实施:1) 初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数;2) 完成最低要求:完成功能1;3) 进一步要求:完成功能2和3。有兴趣的同学可以自己扩充系统功能。要求:1)界面友好,函数功能要划分好2)总体设计应画一流程图3)程序要加必要的注释4) 要提供程序测试方案5

7、) 程序一定要经得起测试,宁可功能少一些,也要能运行起来,不能运行的程序是没有价值的。 5. 图的遍历功能:实现图的深度优先, 广度优先遍历算法,并输出原图结构及遍历结果。分步实施:1) 初步完成总体设计,搭好框架;2) 完成最低要求:两种必须都要实现,写出画图的思路;3) 进一步要求:画出图的结构,有兴趣的同学可以进一步改进图的效果。要求:1)界面友好,函数功能要划分好2)总体设计应画一流程图3)程序要加必要的注释4) 要提供程序测试方案5) 程序一定要经得起测试,宁可功能少一些,也要能运行起来,不能运行的程序是没有价值的。 6 n维矩阵乘法:A B1功能:设计一个矩阵相乘的程序,首先从键盘

8、输入两个矩阵a,b的内容,并输出两个矩阵,输出ab1结果。分步实施:1) 初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数;2) 完成最低要求:建立一个文件,可完成2维矩阵的情况;3) 一步要求:通过键盘输入维数n。有兴趣的同学可以自己扩充系统功能。要求:1)界面友好,函数功能要划分好2)总体设计应画一流程图3)程序要加必要的注释4)要提供程序测试方案5)程序一定要经得起测试,宁可功能少一些,也要能运行起来,不能运行的程序是没有价值的。 7 数组应用功能: 按照行优先顺序将输入的数据建成4维数组,再按照列优先顺序输出结果,给出任意处的元素值,并给出对应的一维数组中的序号。分步实施:

9、1初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数;2 完成最低要求:完成第一个功能;3 进一步要求:进一步完成后续功能。有兴趣的同学可以自己扩充系统功能。要求:1)界面友好,函数功能要划分好2)总体设计应画一流程图3)程序要加必要的注释4)要提供程序测试方案5)程序一定要经得起测试,宁可功能少一些,也要能运行起来,不能运行的程序是没有价值的。 8 数组应用2功能: 读入数组下标,求出数组A靠边元素之和;求从A00开始的互不相邻的各元素之和;当m=n时,分别求两条对角线上的元素之和,否则打印出m!=n的信息。分步实施:1 初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数

10、;2 完成最低要求:求出2维数组的功能;3 进一步要求:完成3维以上数组的功能。有兴趣的同学可以自己扩充系统功能。要求:1)界面友好,函数功能要划分好2)总体设计应画一流程图3)程序要加必要的注释4)要提供程序测试方案5)程序一定要经得起测试,宁可功能少一些,也要能运行起来,不能运行的程序是没有价值的。 9n元多项式乘法功能: 完成两个n元多项式作乘法,给出明确的等式形式。分步实施:1 初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数;2 完成最低要求:建立一个文件,实现两个一元二次多项式作乘法。3 进一步要求:实现三元二次多项式的乘法。有兴趣的同学可以自己扩充系统功能。要求:1)

11、界面友好,函数功能要划分好2)总体设计应画一流程图3)程序要加必要的注释4)要提供程序测试方案5)程序一定要经得起测试,宁可功能少一些,也要能运行起来,不能运行的程序是没有价值的。 10 集合运算功能: 使用链表来表示集合,完成集合的合并,求交集等操作。分步实施:1 初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数;2 完成最低要求: 3 进一步要求: 要求:1)界面友好,函数功能要划分好2)总体设计应画一流程图3)程序要加必要的注释4)要提供程序测试方案6) 程序一定要经得起测试,宁可功能少一些,也要能运行起来,不能运行的程序是没有价值的。 11 公园的导游图功能:给出一张某公园

12、的导游图,游客通过终端询问可知:从某一景点到另一景点的最短路径。游客从公园大门进入,选一条最佳路线,使游客可以不重复地游览各景点,最后回到出口(出口就在入口旁边)。分步实施:1 初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数;2 完成最低要求:建立一个文件,包括5个景点情况,能完成遍历功能;3 进一步要求:进一步扩充景点数目,画出景点图,有兴趣的同学可以自己扩充系统功能。要求:1)界面友好,函数功能要划分好2)总体设计应画一流程图3)程序要加必要的注释4)要提供程序测试方案5)程序一定要经得起测试,宁可功能少一些,也要能运行起来,不能运行的程序是没有价值的。 12 商店存货管理系

13、统功能:建立一商店存货管理系统,要求每次出货时取进货时间最早且最接近保质期中止时间的货物。分步实施:1 初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数;2 完成最低要求:建立一个文件,包括5个种类的货物情况,能对商品信息进行扩充(追加),修改和删除以及简单的排序;3 进一步要求:扩充商品数量,以及完成系统查询功能。有兴趣的同学可以自己扩充系统功能。要求:1)界面友好,函数功能要划分好2)总体设计应画一流程图3)程序要加必要的注释4)要提供程序测试方案5)程序一定要经得起测试,宁可功能少一些,也要能运行起来,不能运行的程序是没有价值的。13 汉诺威塔功能:编程序显示n(n0)个人按

14、顺时针方向围坐一圈,每个人持有一个正整数密码。开始时任选一个正整数做为报数上限m,从第一个人开始顺时针方向自1起顺序报数,报到m是停止报数,报m的人出列,将他的密码作为新的m值,从他的下一个人开始重新从1报数。如此下去,直到所有人全部出列为止。令n最大值取30。要求设计一个程序模拟此过程,求出出列编号序列。分步实施:4 初步完成总体设计,搭好框架,确定人机对话的界面,确定函数个数;5 完成最低要求:建立一个文件,包括某人5个人的情况。6 进一步要求:有兴趣的同学可以自己扩充系统功能。要求:1)界面友好,函数功能要划分好2)总体设计应画一流程图3)程序要加必要的注释4)要提供程序测试方案5) 程

15、序一定要经得起测试,宁可功能少一些,也要能运行起来,不能运行的程序是没有价值的。16用下表给出的字符集和频度的实际统计数据建立哈夫曼树,并实现以下报文的编码和译码:“THIS PROGRAM IS MY FAVORITE”字符A B C D E F G H I J K L M频度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 117分词算法-正向最大匹配分词算法说明: 何为分词?中文分词与其他的分词又有什么不同呢?分词就是将连续的字序列按照一定的

16、规范重新组合成词序列的过程。在英文的行文中,单词之间是以空格作为自然分界符的,而中文只是字、句和段可以通过明显的分界符来简单划界,唯独词没有一个形式上的分界符,虽然英文也同样存在短语的划分问题,但是在词这一层上,中文比之英文要复杂的多、困难的多。正向最大匹配分词算法就是从左到右进行切词,以最大词组进行匹配。例如:“中华人民共和国成立了。”这个词可以切分为“中华/人民/共和国/成立/了。”也可以切分成“中华人民共和国/成立/了。”而后一种就是最大正向匹配算法了。题目难度:一般设计要求:利用VC+、JAVA之类有界面的编程工具进行编写。要求输入一篇文章,在一定的时间之内进行分词,并显示分词时间。并

17、根据分词效果,提出改进方案。设计提示:词组数据库由教师给出,学生也可以自己添加词汇,学生建立数据的连接,并进行分词匹配。18 野人过河问题说明:野人过河问题属于人工智能学科中的一个经典问题,问题描述如下: 有三个僧人和野人准备渡过一条河,但是只有一条船,而且船每次最多可以载两个人。现在他同在河的一边,想渡过河去,条件是:在河的任何一边必须保证僧人的数目大于等于野人的数目,否则野人就会把僧人吃掉,请给出渡河方案。题目难度:较难设计要求:模拟僧人和野人的渡河顺序,要求使用C语言编程,定义合适的数据结构。最后,需要说明设计思想,同时给出能够运行的源程序,并给出对应的程序流程图。设计提示:先分析问题的

18、初始状态和目标状态,假设河分为甲岸和乙岸: 初始状态:甲岸,3野人,3牧师; 乙岸,0野人,0牧师; 船停在甲岸,船上有0个人; 目标状态:甲岸,0野人,0牧师; 乙岸,3野人,3牧师; 船停在乙岸,船上有0个人; 整个问题就抽象成了怎样从初始状态经中间的一系列状态达到目标状态。问题状态的改变是通过划船渡河来引发的。考虑用什么样的数据结构和搜索算法19运动会统计问题说明:参加运动会的n个学校编号为1n。比赛分成m个男子项目和w个女子项目,项目编号分别为1m和m+1m+w。由于各项目参加人数差别较大,有些项目取前五名,得分顺序为7,5,3,2,1;还有些项目只取前三名,得分顺序为5,3,2(假设

19、编号为奇数的项目取前五名,编号为偶数的项目取前三名)。写一个统计程序产生各种成绩单和得分报表。题目难度:一般设计要求:要求使用用C语言编程实现,定义合适的数据结构。最后,需要说明设计思想,同时给出能够运行的源程序,并给出对应的程序流程图。完成的具体功能有:1.可以输入各个项目的前三名或前五名的成绩。2.产生各学校的成绩单,内容包括学校编号、项目编号、选手姓名、名次、得分。3.产生团体总分报表,内容包括校号、男子团体总分、女子团体总分和团体总分。设计提示:假设n20,m30,w20,姓名长度不超过20个字符。每个项目结束时,将其编号、类型符(区分取前五名还是前三名)输入,并按名次顺序输入运动员姓

20、名、校名和成绩等。选择一种合适的数据结构实现。20人鬼过河问题河的一边有三个人和三个鬼,河中有一小船,每次最多能乘坐2个人或鬼,而且至少要有一个人或鬼船才能行驶。请设计一种算法,把人和鬼都送到对岸。注:不论是在河边、船上,如果人鬼数量相同,则鬼和人能和谐相处,鬼不吃人,否则,鬼吃掉人。要求算法能给出整个运送过程,包括每次船行驶的方向(是驶向对岸还是返回),船上的人和鬼数量。21循环节(repeating cycle)问题描述:求一个分数对应的十进制小数的循环节。我们定义一个小数的循环节是它的第一个最短的向右无限循环的数字串。下面是一些分数的循环节,循环节部分用括号括住,例如:分数 十进制小数

21、循环节 循环节长度(位数)16 0.1(6) 6 157 0.(714285) 714285 61250 0.004(0) 0 1输入:输入文件的每行包含两个正整数,第一个为分子,第二个为分母,它们之间用一个空格隔开,这两个正整数值均不超过3000,输入以00结束。输出:输出到屏幕。对应输入的每一行,有两行输出,其中第一行输出一个分数和它的小数表示,其中小数由非循环节部分加上第一个出现的循环节或者不大于50位的小数,第二行输出整个循环节的长度,如小数超过50位仍未出现循环节则认为循环节长度为0。输入样例: 输出样例:1 6 160.1(6)5 7 11 250 5/7=0.(714285)00

22、 6 1/250=0.004(0) 122 拼字游戏 (word crosses) 拼字游戏历史悠久,能锻炼人的思维和提高单词记忆量。在欧美报纸的版面中经常会见到。本题只是简单地演示单组交叉词。所谓单组交叉词,是指两个单词交叉放置,一个水平放置,另一个垂直放置,交叉点是两个单词都共用一个字母,而且交叉点遵循交叉靠前原则,即这公用的字母尽量在水平单词的前方,然后也尽量在垂直单词的上方。例如:DEFER,PREFECT(前一个为水平单词)的交叉点是E,而PREFECT,EDFER的交叉点是R。双交叉词是指有两组单组交叉词,它们的水平单词放在同一行。试编程将输入的每四个一组的单词尽可能组成双交叉词。

23、输入:输入文件由若干行组成,每行有四个单词,按顺序每两个为一组,每组第一个单词为水平单词,每个单词由1到10个大写字母组成,单词之间用一个空格隔开。最后一行由一个结束。输出:输出文件由一系列双交叉词组成,每个水平单词之间隔三个空格。若不能构成双交叉词,则显示Unable to make two crosses。每组双交叉词间空一行。输入样例:AT PART RIGHT BUTPEANUT BANANA VACUUM GREEDY输出样例: BP UAT RIGHTRTUnable to make two crosses23校园导游咨询(为来访的客人提供各种信息服务)1、基本要求:1)设计大学城

24、平面图,在校园景点选10个左右景点。以图中顶点表示大学城内各景点,存放景点名称、代号、简介等信息;以边表示路径,存放路径长度等有关信息。2)为来访客人提供图中任意景点相关信息的查询。3)为来访客人提供任意景点的问路查询,即查询任意两个景点之间的一条最短路径。实现提示:一般情况下,校园的道路是双向通行的,可设计校园平面图是一个无向网。顶点和边均含有相关信息。24十进制数与八进制数互换的实现要求: 采用相应的数据结构,实现十进制数到八进制数的转换.25大整数乘法的实现要求: 以数组这种数据结构来实现,整数最大允许的长度为80位.26较难 模拟一种掷骰子游戏有这样一种游戏:4个人(A-D),每个人有4个骰子,各自在一个筒中摇匀后停止。每个人可以看到自己此时4个骰子的点数。由A开始,根据自己骰子点数估计某个点数的总个数,报两个数字:骰子个数和点数,如“4个3”,然后等待下家B报数;B报出的数字中,骰子个数只能大于上家;如此重复;最后当某个人不再报数而叫“停”时,4人均打开摇筒。如果个数和点数恰与叫停者的上家所报相符,则上家胜;如果不相符,则叫停者胜。如果无人叫停,则继续报数直至报出的数字为“16个6”时结束。用

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1