习题一
题目分析
- 槽子的个数和层数存在这样一种关系——层数=槽子数-1。
- 球下落所产生路径与他所掉入的槽子也存在一定的关系——路径中R的个数就等于他所进入的槽子的序号。
- 路径的个数就是球的个数
解题思路: - 提示用户输入球的个数
- 提示用户输入槽子的个数 层数=槽子数-1;
- 根据槽子数创建一个数组
- 根据球的个数开始生成路径
- 根据路径中R的个数,来返回他所在的槽子的位置
- 打印槽子当中球的情况
参考代码如下:
习题二
题目分析
- 这个猜字游戏的关键就是随机生成的单词的密文显示状态,每一次猜对单词之后密文的显示状态都需要改变
- 所以我们可以利用布尔状态来表示单词字符的显示状态,如果状态为true,则显示但前的字符,如果为false,则显示*。
解题思路
- 建立一个单词的数组
- 在这个单词的数组中随机产生一个单词
- 根据产生的单词,我们创建一个他的布尔型状态数组
- 输入字符开始猜词
- 在猜单词的时候我们就需要获取这个单词的密文状态,可以调用函数来实现
- 得到密文之后,我们开始输入字符,根据输入的字符我们和原单词里的字符相比,如是字符相同并且状态未改变那么我们就改变他的状态,让他显示字符
- 一直到整个单词都显示结束,我们可以利用他的状态数组来辨识这个单词是否猜测结束,如果状态数组中全部为true,那么就表示这一轮游戏结束
- 然后提示用户是否要开始新一轮的游戏。
参考代码如下
习题三
题目分析
- 我们首先要明确所给定的两个序列表是已经排好序的
- 我们可以借用两个标签来遍历我们说给出的序列,依次放入新的列表中
解题思路
- 我们用i来依次遍历上边新建的数组,然后判断黑下标和绿下标的大小
- 如果黑小绿大,则将黑下标此时所指的数字赋给i所在的位置,反之一样
- 此时我们就要判断指标所指的状况了
- 如果遍历的时候出现图中所示的情况,我们则需要将黑指标及其后边所有的数字全部放入新数组中,
参考代码如下: