返回 课程

信奥AC之路-第一级-A学段

0% 完成
0/0 步骤
  1. 第一课 开发环境与基础输出
    4 主题|小节
  2. 第二课 算数运算符
    6 主题|小节
  3. 第三课 输入与运算
    3 主题|小节
  4. 第四课 数值操作
    4 主题|小节
  5. 第五课 表达式与运算符
    3 主题|小节
  6. 第六课 三目运算与双分支(缺导语+本课目标)
    2 主题|小节
  7. 第七课 多分支结构(缺导语+本课目标)
    1 主题|小节
  8. 第八课 多if语句
    1 主题|小节
  9. 第九课 三种分支结构的比较
    1 主题|小节
  10. 第十课 巩固学习分支结构
    1 主题|小节
  11. 第十一课 switch与复合语句
    3 主题|小节
  12. 第十二课 while循环
    2 主题|小节
  13. 第十三课 while循环的简单条件输出
    1 主题|小节
  14. 第十四课 while循环的输入序列处理
    1 主题|小节
  15. 第十五课 while循环的复杂条件输出
    2 主题|小节
  16. 第十六课 while循环与数据统计
    1 主题|小节
  17. 第十七课 for循环结构
    3 主题|小节
  18. 第十八课 for循环的输入序列处理)
    1 主题|小节
  19. 第十九课 深入探索for循环
    2 主题|小节
  20. 第二十课 三种循环的对比
    2 主题|小节
  21. 第二十一课 程序调试(一)
    3 主题|小节
  22. 第二十二课 调试工具的使用
    2 主题|小节
  23. 第二十三课 综合复习
    2 主题|小节
  24. 第二十四课 学习评估
    1 主题|小节
课 进展
0% 完成

“现在我们的魔法门变得更神奇了!”我在黑板上画出了多个门,”它不再只有两个选择,而是可以根据不同的条件,选择不同的房间。”

“比如说,”我继续解释,”如果你考了95分以上,就能进入’优秀奖励屋’;如果考了80分以上,就能进入’进步奖励屋’;如果考了60分以上,就能进入’鼓励屋’。”

小朋友们的眼睛都亮了起来,这个比喻让他们很容易理解了多分支结构。

##### 🔬 实验八A:成绩等级评定

题目描述:
编写一个成绩等级评定程序。根据输入的分数,将其划分为不同等级:90分及以上为优秀,80-89分为良好,60-79分为及格,60分以下为不及格。这个程序展示了多分支结构在成绩评定中的应用。

输入格式:
一个整数score,表示考试分数

输出格式:
一行字符串,表示对应的成绩等级

数据范围:
0 ≤ score ≤ 100

样例输入1:

“`
95
“`

样例输出1:

“`
优秀
“`

样例输入2:

“`
85
“`

样例输出2:

“`
良好
“`

样例输入3:

“`
55
“`

样例输出3:

“`
需要努力
“`

解题思路:

1. 使用if-else if结构处理多个分数区间
2. 从高分到低分依次判断
3. 注意分数区间的边界条件
4. 验证输入分数的有效性

代码实现:

“`cpp
#include
using namespace std;

int main() {
int score; // 存储考试分数

// 提示用户输入并获取分数
cout << "请输入你的分数:"; cin >> score;

// 检查分数是否在有效范围内
if(score < 0 || score > 100) {
cout << "无效的分数!" << endl; return 1; // 异常退出 } // 使用多分支结构评定等级 if(score >= 90) {
cout << "优秀" << endl; // 90分及以上 } else if(score >= 80) {
cout << "良好" << endl; // 80-89分 } else if(score >= 60) {
cout << "及格" << endl; // 60-79分 } else { cout << "需要努力" << endl; // 60分以下 } return 0; } ``` 代码说明: 1. 使用if-else if结构实现多分支 2. 分数判断从高到低排列 3. 添加了分数有效性检查 4. 使用恰当的提示信息 注意事项: 1. 分数必须是0-100的整数 2. 判断条件的顺序很重要 3. 分数区间边界值的归属 4. 提示信息要积极正面 ##### 🔬 实验八B:年龄段判断 题目描述: 编写一个程序,根据输入的年龄判断属于哪个年龄段。划分标准为:18岁及以上为成年人,13-17岁为青少年,7-12岁为儿童,6岁及以下为幼儿。这个程序展示了如何使用多分支结构处理年龄分类问题。 输入格式: 一个整数age,表示年龄 输出格式: 一行字符串,表示对应的年龄段类别 数据范围: 0 ≤ age ≤ 150 样例输入1: ``` 20 ``` 样例输出1: ``` 成年人 ``` 样例输入2: ``` 15 ``` 样例输出2: ``` 青少年 ``` 样例输入3: ``` 5 ``` 样例输出3: ``` 幼儿 ``` 解题思路: 1. 使用if-else if结构处理不同年龄段 2. 从大到小依次判断年龄范围 3. 注意年龄段的边界划分 4. 验证输入年龄的合理性 代码实现: ```cpp #include
using namespace std;

int main() {
int age; // 存储年龄

// 提示用户输入并获取年龄
cout << "请输入年龄:"; cin >> age;

// 检查年龄是否在合理范围内
if(age < 0 || age > 150) {
cout << "无效的年龄!" << endl; return 1; // 异常退出 } // 使用多分支结构判断年龄段 if(age >= 18) {
cout << "成年人" << endl; // 18岁及以上 } else if(age >= 13) {
cout << "青少年" << endl; // 13-17岁 } else if(age >= 7) {
cout << "儿童" << endl; // 7-12岁 } else { cout << "幼儿" << endl; // 6岁及以下 } return 0; } ``` 代码说明: 1. 使用if-else if实现多级年龄判断 2. 年龄判断从大到小排列 3. 添加了年龄合理性检查 4. 使用简洁明了的分类名称 注意事项: 1. 年龄必须是非负整数 2. 判断条件的顺序很重要 3. 年龄段边界值的归属 4. 考虑年龄上限的合理性 ##### 🔬 实验八C:季节判断系统 题目描述: 编写一个程序,根据输入的月份(1-12)判断属于哪个季节。规定:3-5月为春天,6-8月为夏天,9-11月为秋天,12、1、2月为冬天。这个程序展示了如何使用多分支结构处理不连续的月份区间。 输入格式: 一个整数month,表示月份 输出格式: 一行字符串,表示对应的季节。如果输入无效,输出错误提示。 数据范围: 1 ≤ month ≤ 12 样例输入1: ``` 3 ``` 样例输出1: ``` 春天 ``` 样例输入2: ``` 12 ``` 样例输出2: ``` 冬天 ``` 样例输入3: ``` 13 ``` 样例输出3: ``` 月份输入错误 ``` 解题思路: 1. 使用if-else if结构处理四个季节 2. 使用逻辑运算符处理冬季的特殊情况 3. 注意月份的有效性验证 4. 使用清晰的季节划分标准 代码实现: ```cpp #include
using namespace std;

int main() {
int month; // 存储月份

// 提示用户输入并获取月份
cout << "请输入月份(1-12):"; cin >> month;

// 使用多分支判断季节
if(month >= 3 && month <= 5) { cout << "春天" << endl; // 3-5月 } else if(month >= 6 && month <= 8) { cout << "夏天" << endl; // 6-8月 } else if(month >= 9 && month <= 11) { cout << "秋天" << endl; // 9-11月 } else if(month == 12 || month == 1 || month == 2) { cout << "冬天" << endl; // 12、1、2月 } else { cout << "月份输入错误" << endl; // 无效输入 } return 0; } ``` 代码说明: 1. 使用if-else if结构处理多种情况 2. 使用逻辑运算符&&和||组合条件 3. 最后用else处理无效输入 4. 注意冬季月份的特殊处理 注意事项: 1. 月份必须是1-12的整数 2. 冬季月份不连续需要特别处理 3. 使用逻辑运算符简化判断 4. 需要处理无效输入情况 ##### 🔬 实验八D:游乐园票价计算 题目描述: 编写一个游乐园票价计算程序。根据游客年龄确定票价:6岁以下免票,6-12岁购买儿童票(50元),13-60岁购买成人票(100元),60岁以上购买老年票(60元)。这个程序展示了多分支结构在实际票务系统中的应用。 输入格式: 一个整数age,表示游客年龄 输出格式: 一行字符串,说明对应的票价类型和金额 数据范围: 0 ≤ age ≤ 150 样例输入1: ``` 4 ``` 样例输出1: ``` 免票 ``` 样例输入2: ``` 25 ``` 样例输出2: ``` 成人票:100元 ``` 样例输入3: ``` 65 ``` 样例输出3: ``` 老年票:60元 ``` 解题思路: 1. 使用if-else if结构处理不同年龄段 2. 从小到大依次判断年龄范围 3. 为每种票价类型提供明确的价格 4. 验证年龄输入的有效性 代码实现: ```cpp #include
using namespace std;

int main() {
int age; // 存储游客年龄

// 提示用户输入并获取年龄
cout << "请输入年龄:"; cin >> age;

// 检查年龄是否在有效范围内
if(age < 0 || age > 150) {
cout << "无效的年龄!" << endl; return 1; // 异常退出 } // 使用多分支结构计算票价 if(age < 6) { cout << "免票" << endl; // 6岁以下 } else if(age <= 12) { cout << "儿童票:50元" << endl; // 6-12岁 } else if(age <= 60) { cout << "成人票:100元" << endl; // 13-60岁 } else { cout << "老年票:60元" << endl; // 60岁以上 } return 0; } ``` 代码说明: 1. 使用if-else if结构实现多级票价 2. 年龄判断从小到大排列 3. 添加了年龄有效性检查 4. 清晰显示票价类型和金额 注意事项: 1. 年龄必须是非负整数 2. 注意年龄段的边界划分 3. 票价信息要清晰完整 4. 考虑特殊年龄的处理 ##### 🔬 实验八E:BMI指数判断 题目描述: 编写一个BMI(身体质量指数)计算和判断程序。程序接收用户输入的体重(千克)和身高(米),计算BMI值并判断身体状况。BMI = 体重/身高²,判断标准: - BMI < 18.5:体重偏轻 - 18.5 ≤ BMI < 24:体重正常 - 24 ≤ BMI < 28:体重偏重 - BMI ≥ 28:肥胖 输入格式: 两个浮点数:weight(体重)和height(身高) 输出格式: 两行文本: 第一行显示计算出的BMI值 第二行显示身体状况判断结果 数据范围: 20.0 ≤ weight ≤ 200.0 1.0 ≤ height ≤ 2.5 样例输入1: ``` 65 1.75 ``` 样例输出1: ``` 你的BMI是:21.22 体重正常 ``` 样例输入2: ``` 80 1.70 ``` 样例输出2: ``` 你的BMI是:27.68 体重偏重 ``` 解题思路: 1. 计算BMI值并保留两位小数 2. 使用if-else if结构进行多级判断 3. 注意输入数据的有效性验证 4. BMI值的区间判断要准确 代码实现: ```cpp #include
#include // 用于设置输出精度
using namespace std;

int main() {
double weight, height, bmi; // 存储体重、身高和BMI值

// 提示用户输入并获取数据
cout << "请输入体重(kg)和身高(m):"; cin >> weight >> height;

// 检查输入数据是否在合理范围内
if(weight < 20 || weight > 200 || height < 1.0 || height > 2.5) {
cout << "输入数据超出合理范围!" << endl; return 1; // 异常退出 } // 计算BMI值 bmi = weight / (height * height); // 输出BMI值,保留两位小数 cout << "你的BMI是:" << fixed << setprecision(2) << bmi << endl; // 判断身体状况 if(bmi < 18.5) { cout << "体重偏轻" << endl; } else if(bmi < 24) { cout << "体重正常" << endl; } else if(bmi < 28) { cout << "体重偏重" << endl; } else { cout << "肥胖" << endl; } return 0; } ``` 代码说明: 1. 使用double类型保证计算精度 2. 使用iomanip库控制输出格式 3. 添加了输入数据的合理性检查 4. BMI判断标准清晰明确 注意事项: 1. 体重和身高必须是正数 2. BMI计算公式的正确使用 3. 输出结果的精度控制 4. 注意区间边界的处理 ##### 🔬 实验八F:小游戏评级系统 题目描述: 编写一个游戏评级系统,根据玩家的得分(0-100分)评定等级。评级标准: - 100分:SSS级(完美通关) - 90-99分:SS级(超神表现) - 80-89分:S级(非常棒) - 70-79分:A级(还不错) - 60-69分:B级(继续加油) - 60分以下:C级(请重新挑战) 输入格式: 一个整数score,表示游戏得分 输出格式: 一行字符串,显示评级结果和对应评语 数据范围: 0 ≤ score ≤ 100 样例输入1: ``` 100 ``` 样例输出1: ``` SSS级 - 完美通关! ``` 样例输入2: ``` 85 ``` 样例输出2: ``` S级 - 非常棒! ``` 代码实现: ```cpp #include
using namespace std;

int main() {
int score; // 存储游戏得分

// 提示用户输入并获取分数
cout << "请输入游戏得分(0-100):"; cin >> score;

// 检查分数是否在有效范围内
if(score < 0 || score > 100) {
cout << "无效的得分!" << endl; return 1; // 异常退出 } // 使用多分支结构评定等级 if(score == 100) { cout << "SSS级 - 完美通关!" << endl; } else if(score >= 90) {
cout << "SS级 - 超神表现!" << endl; } else if(score >= 80) {
cout << "S级 - 非常棒!" << endl; } else if(score >= 70) {
cout << "A级 - 还不错!" << endl; } else if(score >= 60) {
cout << "B级 - 继续加油!" << endl; } else { cout << "C级 - 请重新挑战!" << endl; } return 0; } ``` 代码说明: 1. 使用if-else if结构实现多级评定 2. 特别处理满分(100分)情况 3. 添加了分数有效性检查 4. 每个等级都附带鼓励性评语 注意事项: 1. 分数必须是0-100的整数 2. 满分需要单独判断 3. 评语要有激励作用 4. 等级划分要清晰准确 ##### 🔬 实验八G:点餐系统 题目描述: 编写一个简单的点餐系统。系统提供四种选择:1-汉堡(20元),2-披萨(50元),3-炸鸡(30元),4-饮料(10元)。用户输入选择编号后,系统显示所选商品和价格。这个程序展示了多分支结构在菜单选择中的应用。 输入格式: 一个整数choice,表示菜品编号 输出格式: 一行字符串,显示所选菜品和价格,或错误提示 数据范围: 1 ≤ choice ≤ 4 样例输入1: ``` 1 ``` 样例输出1: ``` 你选择了汉堡,价格20元 ``` 样例输入2: ``` 5 ``` 样例输出2: ``` 输入错误,请重新选择 ``` 解题思路: 1. 显示菜单供用户选择 2. 使用if-else if结构处理不同选项 3. 为每个选项显示对应价格 4. 处理无效输入情况 代码实现: ```cpp #include
using namespace std;

int main() {
int choice; // 存储用户选择

// 显示菜单
cout << "欢迎使用点餐系统!" << endl; cout << "1-汉堡 2-披萨 3-炸鸡 4-饮料" << endl; cout << "请输入你的选择(1-4):"; cin >> choice;

// 使用多分支结构处理选择
if(choice == 1) {
cout << "你选择了汉堡,价格20元" << endl; } else if(choice == 2) { cout << "你选择了披萨,价格50元" << endl; } else if(choice == 3) { cout << "你选择了炸鸡,价格30元" << endl; } else if(choice == 4) { cout << "你选择了饮料,价格10元" << endl; } else { cout << "输入错误,请重新选择" << endl; } return 0; } ``` 代码说明: 1. 清晰显示菜单选项 2. 使用if-else if结构处理选择 3. 每个选项显示商品和价格 4. 处理无效输入 注意事项: 1. 选择必须是1-4的整数 2. 显示明确的价格信息 3. 提供友好的操作提示 4. 必须处理错误输入