本周C++编程课笔记:for循环练习

📚 本周C++编程课笔记:for循环练习

主题:信奥一本通for循环练习题 + GESP一级2403考点解析


🔍 一、for循环回顾:"数字流水线"

for循环就像一条自动化的流水线

cpp 复制代码
for (int i = 1; i <= 5; i++) {
    cout << "第" << i << "个产品完成!" << endl;
}

🔹 三个关键部件

  1. 起点int i = 1(从1开始计数)
  2. 终点判断i <= 5(到5就停止)
  3. 步进器i++(每次+1)

🧩 二、本周闯关题目解析

🟢 1:均值(1060题)

任务 :算一堆数字的"平均分"
核心技巧

  1. 用for循环读入每个数
  2. sum变量当"储蓄罐"累加
  3. 最后算:平均值 = 总储蓄 / 人数
cpp 复制代码
// 小例子:算3个数的平均
double sum = 0;
for (int i = 1; i <= 3; i++) {
    int num;
    cin >> num;
    sum += num;  // 存钱进储蓄罐
}
cout << fixed << setprecision(4) << sum / 3;

🟡 2:最高分(1062题)

任务 :找出一列分数中的"冠军"
核心技巧

  • 设一个maxScore变量当"擂主"
  • 每个数字来"挑战",比擂主大就替换!
cpp 复制代码
int maxScore = 0;  // 初始擂主是0分
for (int i = 1; i <= n; i++) {
    int score;
    cin >> score;
    if (score > maxScore) maxScore = score;  // 挑战成功!
}

🔵 3:最大跨度值(1063题)

任务 :找"最高分"和"最低分"的差距
双擂主策略

cpp 复制代码
int maxNum = -1000, minNum = 1000;  // 夸张的初始值
for (int i = 1; i <= n; i++) {
    int num;
    cin >> num;
    if (num > maxNum) maxNum = num;  // 最高分擂主
    if (num < minNum) minNum = num;  // 最低分擂主
}
cout << maxNum - minNum;  // 跨度 = 最高 - 最低

🟠 4:奇数求和(1065题)

任务 :只加"单数"(1,3,5...)
奇偶判断口诀num % 2 == 1

cpp 复制代码
int sum = 0;
for (int i = 1; i <= n; i++) {
    int num;
    cin >> num;
    if (num % 2 == 1) sum += num;  // 只存奇数
}

📘 三、GESP一级2403考点链接

这些题目正好对应GESP一级的两大考点

🎯 考点1:循环处理数据序列

  • GESP常考"输入n个数,求xx值"
  • 解题模板
cpp 复制代码
int n;
cin >> n;
for (int i = 1; i <= n; i++) {
    // 这里处理每个数据
}

🎯 考点2:条件筛选与统计

  • 比如"求满足条件的数和"
  • 关键:在循环内加if判断
cpp 复制代码
if (条件成立) {
    // 执行操作
}

💡 四、小贴士

  1. 先画流程图:用纸笔画出"数据流动"再写代码
  2. 变量初始化
    • 求和变量 sum = 0
    • 最大值 max = 很小值
    • 最小值 min = 很大值
  3. 测试用例
    • 输入3 个成绩:90 80 70
    • 手动算一遍,再对比程序输出

🏆 五、本周任务

尝试用一个for循环同时解决:

  1. 计算总分
  2. 找出最高分
  3. 统计及格人数(≥60分)
    提示:需要3个变量!

🌈 趣味总结

  • for循环 = 数字小火车(一站站前进)
  • sum变量 = 存钱罐(越存越多)
  • max/min变量 = 擂主(不断被挑战)
  • if判断 = 守门员(只放符合条件的通过)

相关推荐
sevenlin2 小时前
SpringBoot3.3.0集成Knife4j4.5.0实战
java
摇滚侠2 小时前
从 Tomcat 服务最大连接数角度讲一讲高峰期高考查分网站打不开,服务器的资源是有限的,同一时间大量用户连接服务器,会耗尽服务器的资源,服务器会拒绝新的连接
java·服务器·tomcat
NE_STOP2 小时前
MyBatis-plus拓展之字段类型处理器、自动填充和乐观锁等(完结)
java
中国lanwp2 小时前
Maven Gradle SBT Mill Ivy Grape Leiningen Buildr构建工具
java·maven
肥猪猪爸2 小时前
数据库 2PC 极简流程图
java·数据库·分布式·mysql·分布式事务·2pc
二月夜2 小时前
Maven 避坑指南:高频配置错误总结 & 解决方案
java·maven
一只空白格2 小时前
ThreadLocal的作用和底层原理
java·开发语言·jvm
沐苏瑶2 小时前
Java数据结构-LinkedList与链表
java·数据结构·链表
娇娇yyyyyy2 小时前
C++ 网络编程(22) beast网络库实现websocket服务器
网络·c++·websocket