Files
project1/第11课-GESP二级真题训练一/教案-学生版.md

3.9 KiB
Raw Permalink Blame History

第11课综合练习

教学目标

  • 混合题型训练,覆盖一二级核心知识点
  • 查漏补缺,找到薄弱环节
  • 提高解题速度和准确率

核心考点:混合题的拆解与算法组合

考什么

从综合题中识别多个________为它们选择已经学过的代码模板并正确组合。

必须理解

先把题目拆成“”。看到“每个”常想到;看到“最大/最小”想到________看到“出现次数”想到________看到“如果/否则”想到________。

核心写法

1. 圈出输入、输出和________
2. 把处理过程拆成若干________
3. 为每个任务选择________
4. 确定步骤顺序和________变量
5. 用样例与________值检查

常见错误

  • 为什么不能读完题就立刻写代码________________
  • 下标、数值和次数混用会造成什么问题____________
  • 除了题目样例还应测试哪些情况________________

判断是否掌握

  • 我能写出输入—处理—输出结构。
  • 我能把处理过程拆成小任务。
  • 我能说明每一步使用的代码模板。

题目一:成绩等级判断(分支 + 输入输出)

核心代码(一句话)

多分支判断的核心:______ 链条,从大到小或从小到大依次判断,每种情况一个分支。

自然语言思路

伪代码

1. 输入 score
2. if score >= 90     输出 ______
3. else if score >= 80 输出 ______
4. else if score >= 70 输出 ______
5. else if score >= 60 输出 ______
6. else               输出 ______

真实代码


注意点


题目二:数组求最大值及下标(数组 + 循环 + 打擂台)

核心代码(一句话)

带下标记录的打擂台:用一个变量记______另一个变量记______,每次换擂主时两个一起更新。

自然语言思路

伪代码

1. 输入 n
2. 读入数组 arr[n]
3. maxVal = ______, maxIndex = ______
4. for i = ______ 到 ______
5.     if arr[i] ______ maxVal    // 严格大于
6.         maxVal = ______
7.         maxIndex = ______
8. 输出 maxVal 和 maxIndex

真实代码


注意点


题目三字符串分类统计string + 字符判断 + 多计数器)

核心代码(一句话)

字符串分类统计的核心:______ + 多分支判断 + 多个计数器,每个 if 分支对应一个计数器。

自然语言思路

伪代码

1. ______ 读取字符串 s
2. cnt1 = 0, cnt2 = 0, cnt3 = 0, cnt4 = 0
3. for i = 0 到 ______
4.     if ______(s[i])     cnt1++
5.     else if ______(s[i]) cnt2++
6.     else if ______(s[i]) cnt3++
7.     else                cnt4++
8. 输出四个计数结果

真实代码


注意点


限时练习(课堂完成)

练习组一(限时 30 分钟)

  1. 输入两个数,输出较大的数
  2. 输入 n输出 n 的阶乘
  3. 输入一个字符串,判断是否为回文

练习组二(限时 30 分钟)

  1. 输入 n 个数,求平均值
  2. 找出 100 以内的所有素数
  3. 输入一个正整数,输出它的逆序数

练习组三(限时 30 分钟)

  1. 输入年份,判断是否为闰年
  2. 输入 n打印左下直角三角形
  3. 输入一个字符串,统计其中数字的个数

解题技巧

1. 仔细审题

2. 先想后写

3. 测试验证

4. 时间管理


常见错误检查清单

  • 头文件是否包含
  • using namespace std; 是否写了
  • 变量是否初始化
  • 数组下标是否越界
  • 循环边界是否正确
  • 输出格式是否正确
  • 是否处理了边界情况
  • 整数除法是否需要转浮点数
  • string 输入是否用了 getline(含空格时)

课后作业

请完成本课对应的课后作业,见编程题文件。