计算机程序设计比赛:加密解密、魔方矩阵与找茬挑战

版权申诉
0 下载量 111 浏览量 更新于2024-06-25 收藏 61KB DOCX 举报
"计算机程序设计比赛试卷包含了多项编程竞赛题目,涉及C、C++和VB语言,要求参赛者在限定时间内完成。试卷共六道题目,涵盖了基础算法、加密解密算法以及魔方方阵的生成。比赛规定,程序应保存在指定目录,并标明班级、姓名、机号和成绩。活动总结指出‘技能接力赛——程序找茬’是计信系为提升学生计算机知识和软件技能举办的,活动成功得益于充分准备、团队协作、任务分工明确和深入的宣传教育。总结中也反思了活动组织中的不足,如现场管理、任务执行和时间安排的问题。" 计算机程序设计比赛试卷的内容涉及多个编程相关知识点,以下是详细解释: 1. 温度转换:题目要求输入摄氏温度并输出华氏温度,涉及到温度单位间的转换算法。在C、C++或VB中,可以通过用户输入处理、浮点数运算实现Fahrenheit = (Celsius * 9/5) + 32的公式。 2. 整数排序:输入三个整数a、b、c,按从小到大的顺序输出,需要实现基本的排序算法,如冒泡排序、插入排序或选择排序。 3. 最大公约数(GCD)求和:计算两个数74和68的最大公约数后,加上另一个数,这需要使用欧几里得算法计算GCD,然后进行加法运算。 4. 字母加密:字母按照字母表逆序加密,数字反向映射,需要实现字符和数字的逻辑判断与转换操作,可以使用ASCII码进行处理。 5. 解密程序:基于上一题的加密规则,编写解密程序,这需要理解加密算法并编写对应的逆运算代码。 6. 魔方方阵:生成满足特定条件的魔方方阵,需要递归或循环算法,以及二维数组操作。首先定位"1"的位置,然后按照规则放置后续数字,确保每行、每列和对角线的和相等。 活动总结中提到的“技能接力赛——程序找茬”比赛,旨在提升学生的编程技能和问题解决能力,通过选择题、填空题和程序题的形式,考察学生对编程语言的理解和应用。评分规则关注完成时间和程序效果,强调了实际操作能力和效率。 在计算机程序设计的发展历程中,程序设计不仅是编写代码,还涵盖了问题分析、系统设计、错误调试等多个阶段。程序设计语言作为描述计算过程的工具,是编程的基础。不同的编程语言有着不同的语法和语义,适合解决不同类型的问题。随着技术进步,编程方法论也在不断演进,如面向对象编程、函数式编程等,以适应更复杂的需求。
2023-02-27 上传
1. 俄罗斯套娃问题 伊万洛夫在比武大会上力克群雄,成为新一届"草原雄鹰",为部落赢得了莫大荣誉。首 领决定要重重奖赏,他对伊万洛夫说:"孩子,你是知道的,面前的这片草原,南北向和 东西向的道路纵横交错。现在,路口放着纯金打造的俄罗斯娃娃,重量大小不等,重的 都能装下轻的。你可以沿着道路飞奔,拾取路口的娃娃,要求是任何时刻必须是一个套 娃,装好后就不能再拆开了。注意不要走重复路。" 请你为伊万洛夫规划路线,使得他能够有最大的收获。 Input: cross.txt 输入包括多组测试用例; 每个测试用例开始是一对整数<R, C>,R表示东西向道路数,C表示南北向道路总数;接下来R行,每行包括C个正整数W[r, c] ,分别表示第r条东西向道路与第c条南北向道路交叉处路口放置的俄罗斯娃娃的重量。 Output: 输出能有最大收获的路径规划。 假设1: cross.txt 2 7 1 2 13 6 7 12 11 14 3 4 5 8 9 10 输出: 1 2 3 4 5 6 7 8 9 10 11 12 假设2: cross.txt 5 5 1 16 15 14 13 2 17 24 23 12 3 18 25 22 11 4 19 20 21 10 5 6 7 8 9 输出: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 注释: 1)从<0,0>出发; 2)路线不能重复; 3)不要求最后回到出发点。 2. 教师安排家访 输入文件:student.txt distance.txt 你是小学某班主任,需要安排周六进行家访。于是打电话与家长联系,他们表示虽然比 较忙,但还是会为你抽出一点时间。 由于有些家长时间上有冲突,并且一天内不能拜访所有家长,你需要一个程序安排一天 的工作,使得你可以拜访最多的家长。注意,如果与某个家长见面,拜访时间不得少于 45分钟(M),否则可能引起家长不满意。另外从一个家长到另外一个家长需要花费一些 时间。 Input1: student.txt 输入包括多个测试数据,每个测试数据开头是一个整数n(1<=n<=40),表示家长总数。 接下来n行每行包括三个正整数m、s、t。m表示家长的序号,s、t分别表示该家长空闲时 间段的起始时间和终止时间,s小于t。注意两个数字的最后两位表示分钟。 比如1645 表示16时45分 样本如下: 6 1 800 1100 2 800 900 3 845 1000 4 1300 1400 5 1345 1800 6 1500 1700 Input2: distance.txt 第一行为 家长总数 随后为一个二维表格,记录每2个用户之间的距离。第二行和第一列数据为家长顺序编号 。其他数据为2个家长之间的距离。 样本如下: 6 0 1 2 3 4 5 6 1 0 1 2 4 3 1 2 1 0 3 5 3 2 3 2 3 0 6 1 3 4 4 5 6 0 4 14 5 3 3 1 4 0 15 6 1 2 3 14 15 0 Output: 拜访的家长总数 拜访的家长的序号和开始结束时间 3. 布雷程序 在一个10*10的方格中,随机分布10个地雷,并在其它没有地雷的格中显示该方格周 围相邻的方格中共有几枚地雷。 样例输出:(图中- 1的位置表示地雷,其它值表示该位置相邻的八个格子中的地雷数) 基本要求:掌握程序循环和算法设计的基本方法;掌握复杂算法设计的方法。 Example: 0 1 -1 1 0 1 -1 2 1 1 0 1 1 1 0 1 2 3 -1 1 0 0 0 1 1 1 1 -1 2 1 1 2 2 2 -1 1 1 1 1 0 1 -1 -1 2 1 1 0 0 1 1 1 2 2 1 0 0 1 1 2 -1 0 0 0 0 0 0 1 -1 2 1 1 1 1 0 0 0 1 1 1 0 1 -1 1 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 0 0 4. 电路业务合并 在网络电路,为了表示1条电路表示成速率、A、方向、Z. 1、速率有VC12,VC4等。 2、方向为单向-->、双向<->。 3、节点A(或Z)包括网元名称、单板、端口号。 电路在开通时,为了方便管理,往往每组电路是连续的。如: VC12 22局S385扩1 EPE1[1-1-2] [2] <--> 23局S385扩1 EPE1[1-1-2] [2] 如果电路太多一条一条显示则信息量太大,用户查看很不方便。现在用户要求连续的 电路合并起来显示。连续的电路是如果两条业务A1Z1,A2Z2. 如速率一样,A1和A2网元名称,单板一样,断口号相邻。Z1和Z1网元名称,单板一样, 断口号相邻。且