编程练习解析:递归计算年龄、魔术师猜数与寻找中位数
版权申诉
51 浏览量
更新于2024-07-06
收藏 337KB PDF 举报
"编程题参考答案(7-9周).pdf"
这是一份关于编程题目的参考资料,包含了第七到第九周的学习内容。以下是各题目及其解题思路的详细说明:
1. 递归法计算游戏人员的年龄
这道编程题要求使用递归方法计算第n个人的年龄。在提供的代码中,`ComputeAge` 函数是核心,它接受一个参数 `n` 表示人的编号。当 `n` 等于1时,返回基础年龄10岁;否则,返回 `n-1` 号人物的年龄加2。这是一个典型的递归问题,每个函数调用都依赖于前一次的调用结果。递归在解决问题时应注意避免无限循环,确保存在终止条件,这里是 `n==1`。
2. 魔术师猜数
这个题目要求编写一个程序,根据输入的数字 `m` 找到一个由三个一位数字组成的三位数(a, b, c),满足 `122 * a + 212 * b + 221 * c = m`。程序通过嵌套循环遍历所有可能的组合,并在找到满足条件的数字时输出。如果未找到匹配的数字,提示用户计算错误。这种问题通常涉及穷举法,效率较低,但能确保找到所有可能的解决方案。
3. 寻找中位数v1.0
此编程题的目的是找出三个整数 `a`, `b`, `c` 的中位数。提供的代码首先比较这三个数,然后根据它们的大小关系将它们排序。如果 `a` 大于 `b`,交换它们的位置;接着,如果 `tmp1`(此时可能是 `b` 或 `c`)大于 `tmp3`(可能是 `a` 或 `b`),再次交换它们。最后,`tmp1` 将是中位数。这个程序展示了简单的排序算法,尽管它没有实现完整的排序,而是直接找到中间值。
这些编程题目涵盖了递归、穷举搜索和基本排序等编程概念,对于学习C语言或提升算法理解的初学者来说是非常好的练习。通过解决这些问题,学生可以加深对递归的理解,熟悉循环和条件语句的使用,并掌握基础的数值处理技巧。
2022-01-09 上传
2019-06-11 上传
2024-04-09 上传
2023-06-11 上传
2021-10-07 上传
2021-10-19 上传
2022-12-11 上传
2022-03-15 上传
2023-09-12 上传
念广隶
- 粉丝: 5w+
- 资源: 6万+
最新资源
- MapPlotter:让我们从瑞士创建3D视图
- techBlog:个人博客回购
- C,c语言可以绘制中国地图源码,c语言程序
- bash基础知识:只是一个小项目,它显示了一些基本知识os bash脚本
- 普朗克定律:我们称一个黑体的光子数。-matlab开发
- PHP-CSV-Calculator:示例PHP CLI程序可解析CSV数据并获取指定列的均值,中位数,众数和标准偏差
- openplatform-embedded:嵌入式版本的OpenPlatform
- NejmiYassine-taas-frontend-challenge
- registeringProcess
- main_sleep-timer,c语言有源码为什么编译不过,c语言程序
- Free-Fs 开源文件管理系统
- 小行星:使用html5 canvas和javascript重制经典小行星
- 产品UI设计创意网站模板
- 根据《Shell脚本编程详解》第12章节-Shell脚本编程,自己写的shell脚本。
- LeetCode
- Konntroll.github.io:我的编码项目和经验的简要说明