《课程设计备选题目(20151220).》由会员分享,可在线阅读,更多相关《课程设计备选题目(20151220).(13页珍藏版)》请在金锄头文库上搜索。
1、1 基础类/算法类1.1 长整数运算器(难度系数:3级)【任务描述】编写程序,实现任意长度正整数的加法、减法运算。【功能要求】(1)长整数长度在10位以上,1000位以下。(2)任意输入两个长整数,可进行它们的加、减运算,输出运算结果。1.2 求解自守数(难度系数:2级)【任务描述】判断任意输入的某数,是否是自守数。如果一个自然数的平方数的尾部仍然为该自然数本身,则称其为自守数。例如:5x5=2576x76=5776625x625=390625【功能要求】可任意输入一个整数,输出其是否是自守数的结论。1.3 进制转换(难度系数:4级)【任务描述】将输入的任意进制正整数,转换成制定的进制数,并输
2、出结果。【功能要求】设计并实现一个可进行交互操作的菜单,实现二进制、八进制、十六进制、十进制之间的相互转换,并输出转换结果。1.4 数字乘积根问题。【难度系数:2级】【任务描述】对任意输入的正整数,求其数字乘积根。正整数的数字乘积的定义是:这个整数中非零数字的乘积。例如,整数999的数字乘积为9*9*9,即729。正整数的数字乘积根的定义是:求一个正整数的数字乘积,再求该乘积的数字乘积,如此反复计算,直至乘积含一位数字,这个一位数字就叫该整数的数字乘积根。例如:10025的非零数字积为1*2*5=10,10的非零数字积为1,1就是10025的数字乘积根。729的数字乘积为7*2*9,即126;
3、126的数字乘积为1*2*6,即12;12的数字乘积为1*2,则2就是729的数字乘积根。1.5 整数拆分(难度系数:3级)【任务描述】对任意正整数n,将其拆分成若干个正整数之和,输出所有的拆分方案。整数的分拆,就是把一个自然数表示成若干个自然数之和的形式。每一种表示方法,就是自然数的一个分拆。例如:21131211121【功能要求】(1)输入任意正整数,输出其所有拆分方案(允许重复)。(2)输入任意正整数,输出其所有拆分方案(允许重复)。(3)输入任意正整数,输出其所有拆分成奇数的方案(允许重复)。1.6 分数加法计算问题。(难度系数:3级)【任务描述】分别给出两个正分数的分子和分母,按分数
4、运算的方法,求出两个分数之和。【功能要求】(1)加数和被加数都是真分数。(2)如果和的分子分母有公因子,要约分。(3)如果和大于1,要化为带分数。1.7 整数乘除法练习器。(难度系数:3级)【任务描述】编写一个练习器,提供给小学生使用,可进行100以内任意两个整数的乘除法练习。【功能要求】(1)随机生成乘法或除法运算符。(2)随机生成100以内的两个正整数。(3)乘法的计算机结果不得大于100,否则重新生成题目。(4)除法的结果必须为整数,否则重新生成题目。(5)每次练习开始前,由用户指定要做的题目数(=100题)。根据题目,随机产生满足上述要求的试题。要求所有试题不重复。(6)对用户输入的答
5、案判断正确与否,并计分。答对一题得10分。(7)练习结束后,统计并输出回答正确和错误的题目数、最后得分,并给出相应的评语。1.8 整数加减法练习器(难度系数:3级)【任务描述】编写一个练习器,提供给小学生使用,可进行100以内任意三个整数的加减法混合练习。【功能要求】(1)随机生成加减混合运算题目,题目中的三个正整数在100以内,随机生成。(2)要求无论中间结果和最后结果都不得大于100。(3)要求无论中间结果和最后结果都不得为负数。(4)每次练习开始前,由用户指定要做的题目数(=100题)。根据题目,随机产生满足上述要求的试题。要求所有试题不重复。(5)对用户输入的答案判断正确与否,并计分。
6、答对一题得10分。(6)练习结束后,统计并输出回答正确和错误的题目数、最后得分,并给出相应的评语。1.9 回文数问题。(难度系数:4级)【任务描述】对任意输入的十进制正整数,判断该数在二进制、八进制、十进制、十六进制表示方法中是否为回文数。只要该数在某一个进制中是回文数,就输出“进制、对应回文数”。如果一个数从左往右读与从右往左读是一样的,就说该数是回文数。例如32623是一个回文数。回文数的特征与数字表示进制有关。例如十进制数字9,不是回文数字,但如果改用二进制表示,为1001,则它就是回文数字。1.10 八皇后问题(难度等级:4级)【任务描述】八皇后问题,是一个古老而著名的问题,是回溯算法
7、的典型案例。该问题是国际西洋棋棋手马克斯贝瑟尔于1848年提出:在88格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法。高斯认为有76种方案。1854年在柏林的象棋杂志上不同的作者发表了40种不同的解,后来有人用图论的方法解出92种结果。计算机发明后,有多种计算机语言可以解决此问题。【功能要求】输出八皇后问题所有可能的方案(建议输出到文件),以及方案总数。1.11 24点游戏(难度等级:5级)【任务描述】任意给出4张牌,计算能否用、将其组合成24。输出其可能的组合式。1.12 清除数字游戏(难度等级:4级)【任务描述】玩家从该二维
8、数组中选择两个数字,如果两者之和为a,则将这两个数字清除(相应数组元素置0)。然后计算机再给出一个数字b,由玩家从剩下的数组中选择两个数字,看是否能清除,依次进行,直到数组中所有数字被清除。【功能要求】(1)用户可指定生成的矩阵阶数n。(2)游戏中,玩家输入两个数字的坐标,计算机判断两者之和是否为给定数字,如是,则将这两个数字清0。(3)游戏结束后,显示游戏时间。1.13 万年历(难度等级:5级)【任务描述】设计并生成一个万年历。【功能要求】(1)输入一个年份,在屏幕上输出该年的年历(包括每月的天数,和所对应的星期几),并且在每月的左上角或右上角打印出相应的年份和月份,要求输出界面尽可能整齐、
9、美观,符合年历显示规范。假定输入的年份在1-9999年之间。(2)输入年、月,输出该月的月历。(3)输入年、月、日,输出距今天还有多少天,输出改天是星期几,输出该天是否是公历节日。1.14 迷宫问题(难度等级:5级)【任务描述】给定一个迷宫,入口为左上角,出口为右下角,找出所有从入口到出口可能的路径。【功能要求】(1)迷宫数据记录在磁盘文件中,初始时,从磁盘文件导入迷宫数据:输入0表示可走,输入1表示墙。(2)程序开始时,从键盘指定迷宫的入口坐标。(3)移动可以从上、下、左、右、上左、上右、下左、下右八个方向进行。2字符串类2.1 单词统计和替换(难度系数:4级)【任务描述】对任意一篇英文文章
10、,统计其中每个单词分别出现了多少次,并可替换指定的单词。【功能要求】(1)英文文章以文件形式输入。(2)统计结果保存为文件。(3)对单词进行替换时,允许用户选择全部替换,或逐个替换。替换完成后,将文章存盘。2.2 单词匹配(难度系数:3级)【任务描述】已知一个包含若干英文单词的词典(1n100),对任意输入的某一个单词word,进行如下查询操作:(字典中的单词和给定单词长度上限为255);(1)word在词典中的位置;(2)词典中仅有一个字符与word不匹配的单词序号;(3)词典中,比word多(或少)一个字符(除此字符外其余字符均匹配)的单词位置。(4)上述查找时,如有多个单词符合条件,仅输
11、出其第一个单词的位置即可。【功能要求】(1)词典以TXT文件格式存放,每行一个单词。(2)查找后,输出找到的单词在词典中的位置,以及该单词。如未找到相关单词,应给出提示信息。2.3 简单翻译程序(难度系数:4)【任务描述】建立一个包含若干英文单词的词汇表文件。输入一个英文单词或者句子,在屏幕上显示相应的中文翻译。【功能要求】(1)自行建立一个包含若干英文单词的词汇表文件,在系统初始化时导入内存,用于进行句子翻译。(2)用户可以输入单词或者句子,在屏幕上显示翻译结果。(3)用户可对词汇表进行添加和删除,并能将更新的词汇表存储到文件中。2.4 高级语言源程序注释部分的处理(难度系数:4级)【任务描
12、述】将C语言程序中的所有注释都去掉,并将去掉注释的文件和注释分别放入一个新的文件中。【功能描述】(1)读取用户指定名字的源程序,例如,用户输入:exercise.cpp,程序能读取该文件进行处理。(2)将文件中的注释(同一行中/之后的部分,以及/*和*/之间的部分,包括/、/*和*/)部分删除。(3)将去掉的注释部分和删除注释后的C语言程序,分别保存到两个不同的文件中,文件名允许用户指定。2.5 模拟C语言语法分析器(难度系数:3级)【任务描述】编写一个程序,检测C语言程序中的简单语法错误。【功能要求】(1)读取用户指定名字的源程序,例如,用户输入:exercise.cpp,程序能读取该文件进
13、行处理。(2)能检测C语言程序中的语法错误,包括:不配对的圆括号、方括号和花括号、双引号、单引号;不合法的注释;不匹配的if-else。(3)程序能输出有语法错误的行号,以及错误的原因。2.6 英文打字训练程序(难度系数:3级)【任务描述】随机产生包含100个英文字母的范文,要求用户按范文打字录入。录入开始时进行计时,录入结束后,计算录入的时间和正确率。【功能要求】(1)随机产生100个字母的范文,范文既要显示在终端上,同时又要保存在文件中。(2)用户录入的结果也应保存到单独的文件。(3)录入开始前应有提示和倒计时。(4)录入结束后提示录入所用时间和正确率:正确率=正确的字符数/1002.7
14、简单的文件相似度统计(难度系数:3级)【任务描述】任意给定两篇英文文章,统计其中相同的单词数在各自文章中所占的百分比。【功能要求】(1)文章1和文章2的文件名由用户输入。(2)将两篇文章中相同的单词、相同单词的数量、相同单词在两篇文章中出现的次数、相同单词分别占各自文章单词总数的百分比,输出到屏幕,同时也保存在一个单独的文件中。2.8 背单词程序(难度系数:3级)【任务描述】建立一个包含若干英文词条的词汇表文件。其中每个词条由单词和解释两部分组成,例如:apple 苹果利用该词汇表文件,实现背单词的功能。【功能要求】(1)读取已有的词汇表文件。(2)能浏览词汇表的全部词条。(3)背单词功能:由
15、用户指定每次背单词的数目,随机挑选给定个数的单词(不重复)。给出中文提示,用户输入相应英文单词。判断输入单词的正误,输入正确记1分。对每个单词计算总得分,总得分低的单词,为生疏单词,让这类单词多出现。2.9 数据构建器(难度系数:3级)【任务描述】对任意输入的字符串,将其按指定次数插入到指定的文件中。【功能要求】(1)能读取指定的磁盘文件:文件可以是纯英文、纯中文或中英文混合等不同样式。对于中文,字串必须插入在两汉字之间。(2)用户输入要插入的字符串,以及插入的次数n。程序将字符串插入到文件的n个随机位置上,并将文件存盘。(3)用户输入某字符串,统计该字符串在文件中出现的次数。(4)至少需要测试三个文件:纯英,纯中,中英。2.10 源程序简单分析器(难度系数:3级)【任务描述】从文件读入C语言程序,统计其中的代码行,注释和空行的个数;统计函数个数、函数的平均行数,以及规模最大和最小的函数及其开始行号。【功能要求】(1)用户指定要读取的C程序文件名,从