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级) 【任务描述】