3.9 KiB
3.9 KiB
第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 分钟)
- 输入两个数,输出较大的数
- 输入 n,输出 n 的阶乘
- 输入一个字符串,判断是否为回文
练习组二(限时 30 分钟)
- 输入 n 个数,求平均值
- 找出 100 以内的所有素数
- 输入一个正整数,输出它的逆序数
练习组三(限时 30 分钟)
- 输入年份,判断是否为闰年
- 输入 n,打印左下直角三角形
- 输入一个字符串,统计其中数字的个数
解题技巧
1. 仔细审题
2. 先想后写
3. 测试验证
4. 时间管理
常见错误检查清单
- 头文件是否包含
using namespace std;是否写了- 变量是否初始化
- 数组下标是否越界
- 循环边界是否正确
- 输出格式是否正确
- 是否处理了边界情况
- 整数除法是否需要转浮点数
- string 输入是否用了
getline(含空格时)
课后作业
请完成本课对应的课后作业,见编程题文件。