课程设计备选题目(20151220)

发布时间 : 星期三 文章课程设计备选题目(20151220)更新完毕开始阅读

1 基础类/算法类

1.1 长整数运算器(难度系数:3级) 【任务描述】

编写程序,实现任意长度正整数的加法、减法运算。 【功能要求】

(1)长整数长度在10位以上,1000位以下。

(2)任意输入两个长整数,可进行它们的加、减运算,输出运算结果。 1.2 求解自守数(难度系数:2级) 【任务描述】

判断任意输入的某数,是否是自守数。如果一个自然数的平方数的尾部仍然为该自然数本身,则称其为自守数。例如:

5x5=25 76x76=5776 625x625=390625 【功能要求】

可任意输入一个整数,输出其是否是自守数的结论。 1.3 进制转换(难度系数:4级) 【任务描述】

将输入的任意进制正整数,转换成制定的进制数,并输出结果。 【功能要求】

设计并实现一个可进行交互操作的菜单,实现二进制、八进制、十六进制、十进制之间的相互转换,并输出转换结果。 1.4 数字乘积根问题。【难度系数:2级】 【任务描述】

对任意输入的正整数,求其数字乘积根。 正整数的数字乘积的定义是:这个整数中非零数字的乘积。例如,整数999的数字乘积为9*9*9,即729。

正整数的数字乘积根的定义是:求一个正整数的数字乘积,再求该乘积的数字乘积,如此反复计算,直至乘积含一位数字,这个一位数字就叫该整数的数字乘积根。

例如:10025的非零数字积为1*2*5=10,10的非零数字积为1,1就是10025的数字乘积根。729的数字乘积为7*2*9,即126;126的数字乘积为1*2*6,即12;12的数字乘积为1*2,则2就是729的数字乘积根。

1.5 整数拆分(难度系数:3级) 【任务描述】

对任意正整数n,将其拆分成若干个正整数之和,输出所有的拆分方案。

整数的分拆,就是把一个自然数表示成若干个自然数之和的形式。每一种表示方法,就是自然数的一个分拆。例如:

2=1+1

3=1+2=1+1+1=2+1 【功能要求】

(1)输入任意正整数,输出其所有拆分方案(允许重复)。 (2)输入任意正整数,输出其所有拆分方案(允许重复)。

(3)输入任意正整数,输出其所有拆分成奇数的方案(允许重复)。

1.6 分数加法计算问题。(难度系数:3级) 【任务描述】

分别给出两个正分数的分子和分母,按分数运算的方法,求出两个分数之和。 【功能要求】

(1)加数和被加数都是真分数。

(2)如果和的分子分母有公因子,要约分。 (3)如果和大于1,要化为带分数。 1.7 整数乘除法练习器。(难度系数:3级) 【任务描述】

编写一个练习器,提供给小学生使用,可进行100以内任意两个整数的乘除法练习。 【功能要求】

(1)随机生成乘法或除法运算符。 (2)随机生成100以内的两个正整数。

(3)乘法的计算机结果不得大于100,否则重新生成题目。 (4)除法的结果必须为整数,否则重新生成题目。

(5)每次练习开始前,由用户指定要做的题目数(<=100题)。根据题目,随机产生满足上述要求的试题。要求所有试题不重复。

(6)对用户输入的答案判断正确与否,并计分。答对一题得10分。

(7)练习结束后,统计并输出回答正确和错误的题目数、最后得分,并给出相应的评语。 1.8 整数加减法练习器(难度系数:3级) 【任务描述】

编写一个练习器,提供给小学生使用,可进行100以内任意三个整数的加减法混合练习。 【功能要求】

(1)随机生成加减混合运算题目,题目中的三个正整数在100以内,随机生成。 (2)要求无论中间结果和最后结果都不得大于100。 (3)要求无论中间结果和最后结果都不得为负数。

(4)每次练习开始前,由用户指定要做的题目数(<=100题)。根据题目,随机产生满足上述要求的试题。要求所有试题不重复。

(5)对用户输入的答案判断正确与否,并计分。答对一题得10分。

(6)练习结束后,统计并输出回答正确和错误的题目数、最后得分,并给出相应的评语。 1.9 回文数问题。(难度系数:4级) 【任务描述】

对任意输入的十进制正整数,判断该数在二进制、八进制、十进制、十六进制表示方法中是否为回文数。只要该数在某一个进制中是回文数,就输出“进制、对应回文数”。

如果一个数从左往右读与从右往左读是一样的,就说该数是回文数。例如32623是一个回文数。回文数的特征与数字表示进制有关。例如十进制数字9,不是回文数字,但如果改用二进制表示,为1001,则它就是回文数字。

1.10 八皇后问题(难度等级:4级) 【任务描述】

八皇后问题,是一个古老而著名的问题,是回溯算法的典型案例。该问题是国际西洋棋棋手马克斯·贝瑟尔于1848年提出:在8×8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法。高斯认为有76种方案。1854年在柏林的象棋杂志上不同的作者发表了40种不同的解,后来有人用图论的方法解出92种结果。计算机发明后,有多种计算机语言可以解决此问题。

【功能要求】

输出八皇后问题所有可能的方案(建议输出到文件),以及方案总数。 1.11 24点游戏(难度等级:5级) 【任务描述】

任意给出4张牌,计算能否用+、-、×、÷将其组合成24。 输出其可能的组合式。

1.12 清除数字游戏(难度等级:4级) 【任务描述】

玩家从该二维数组中选择两个数字,如果两者之和为a,则将这两个数字清除(相应数组元素置0)。然后计算机再给出一个数字b,由玩家从剩下的数组中选择两个数字,看是否能清除,依次进行,直到数组中所有数字被清除。 【功能要求】

(1)用户可指定生成的矩阵阶数n。

(2)游戏中,玩家输入两个数字的坐标,计算机判断两者之和是否为给定数字,如是,则将这两个数字清0。

(3)游戏结束后,显示游戏时间。 1.13 万年历(难度等级:5级) 【任务描述】

设计并生成一个万年历。 【功能要求】

(1)输入一个年份,在屏幕上输出该年的年历(包括每月的天数,和所对应的星期几),并且在每月的左上角或右上角打印出相应的年份和月份,要求输出界面尽可能整齐、美观,符合年历显示规范。假定输入的年份在1-9999年之间。 (2)输入年、月,输出该月的月历。

(3)输入年、月、日,输出距今天还有多少天,输出改天是星期几,输出该天是否是公历节日。 1.14 迷宫问题(难度等级:5级) 【任务描述】

给定一个迷宫,入口为左上角,出口为右下角,找出所有从入口到出口可能的路径。 【功能要求】

(1)迷宫数据记录在磁盘文件中,初始时,从磁盘文件导入迷宫数据:输入0表示可走,输入1表示墙。

(2)程序开始时,从键盘指定迷宫的入口坐标。

(3)移动可以从上、下、左、右、上左、上右、下左、下右八个方向进行。

2字符串类

2.1 单词统计和替换(难度系数:4级) 【任务描述】

对任意一篇英文文章,统计其中每个单词分别出现了多少次,并可替换指定的单词。 【功能要求】

(1)英文文章以文件形式输入。 (2)统计结果保存为文件。

(3)对单词进行替换时,允许用户选择全部替换,或逐个替换。替换完成后,将文章存盘。 2.2 单词匹配(难度系数:3级) 【任务描述】

已知一个包含若干英文单词的词典(1≤n≤100),对任意输入的某一个单词word,进行如下查询操作:(字典中的单词和给定单词长度上限为255);

(1)word在词典中的位置;

(2)词典中仅有一个字符与word不匹配的单词序号;

(3)词典中,比word多(或少)一个字符(除此字符外其余字符均匹配)的单词位置。 (4)上述查找时,如有多个单词符合条件,仅输出其第一个单词的位置即可。 【功能要求】

(1)词典以TXT文件格式存放,每行一个单词。

(2)查找后,输出找到的单词在词典中的位置,以及该单词。如未找到相关单词,应给出提示信息。 2.3 简单翻译程序(难度系数:4) 【任务描述】

建立一个包含若干英文单词的词汇表文件。输入一个英文单词或者句子,在屏幕上显示相应的中文翻译。 【功能要求】 (1)自行建立一个包含若干英文单词的词汇表文件,在系统初始化时导入内存,用于进行句子翻译。 (2)用户可以输入单词或者句子,在屏幕上显示翻译结果。

(3)用户可对词汇表进行添加和删除,并能将更新的词汇表存储到文件中。 2.4 高级语言源程序注释部分的处理(难度系数:4级) 【任务描述】

将C语言程序中的所有注释都去掉,并将去掉注释的文件和注释分别放入一个新的文件中。 【功能描述】

(1)读取用户指定名字的源程序,例如,用户输入:exercise.cpp,程序能读取该文件进行处理。 (2)将文件中的注释(同一行中//之后的部分,以及/*和*/之间的部分,包括//、/*和*/)部分删除。 (3)将去掉的注释部分和删除注释后的C语言程序,分别保存到两个不同的文件中,文件名允许用户指定。

2.5 模拟C语言语法分析器(难度系数:3级) 【任务描述】

编写一个程序,检测C语言程序中的简单语法错误。 【功能要求】

(1)读取用户指定名字的源程序,例如,用户输入:exercise.cpp,程序能读取该文件进行处理。 (2)能检测C语言程序中的语法错误,包括:不配对的圆括号、方括号和花括号、双引号、单引号;不合法的注释;不匹配的if-else。

(3)程序能输出有语法错误的行号,以及错误的原因。 2.6 英文打字训练程序(难度系数:3级) 【任务描述】

随机产生包含100个英文字母的范文,要求用户按范文打字录入。录入开始时进行计时,录入结束后,计算录入的时间和正确率。 【功能要求】

(1)随机产生100个字母的范文,范文既要显示在终端上,同时又要保存在文件中。 (2)用户录入的结果也应保存到单独的文件。 (3)录入开始前应有提示和倒计时。

(4)录入结束后提示录入所用时间和正确率:正确率==正确的字符数/100 2.7 简单的文件相似度统计(难度系数:3级) 【任务描述】

联系合同范文客服:xxxxx#qq.com(#替换为@)