🏆 C3-10 知识大闯关

阶段测试拓展 · 5个关卡挑战你的C3知识!

⭐ 趣味性 ★★★★☆  |  推荐度 ★★★★★

🎮 选择关卡

1数组下标
2循环输出
3找倍数
4公因数
5最大跨度

🔢 数组下标大冒险!

小明声明了一个数组 int scores[50],请问他能访问的最后一个元素的下标是多少?请填空。

  • ① 数组下标从 0 开始数
  • ② 第1个元素下标是0,第2个是1,...第50个是?
  • ③ 用 50 - 1 就能算出最后一个下标
  • ④ 输出:49

🔄 循环输出秀!

请补全代码,让程序输出1到50的所有整数(每个数字用空格隔开)。

  • ① for循环三要素:初始化、条件、更新
  • ② 第一个空填起始值:从几开始输出?
  • ③ 第二个空填终止条件:输出到几结束?注意用 <= 才能包含50!
  • ④ 输出:1 2 3 ... 50

🎯 倍数猎人!

输入n和m,输出1到n之间所有m的倍数,每个占一行。

样例输入:15 4
样例输出:4 8 12
  • ① 第一个空:从1开始遍历
  • ② 第二个空:用 % 取模运算——i除以m余数为0就是m的倍数
  • ③ 判断条件:i % m == 0

🔍 公因数侦探!

输入a和b,输出它们所有公因数的和。

样例输入:12 18
样例输出:12(公因数:1,2,3,6,和=12)
  • ① 第一个空:用 && 表示"并且"——既要整除a也要整除b
  • ② 第二个空:累加——把公因数加到sum上,用 +=
  • ③ 公因数条件:a % i == 0 && b % i == 0

📊 最大跨度挑战!

输入n个数字,求最大值减最小值(最大跨度值)。

样例输入:5 4 9 2 7 1
样例输出:8(max=9, min=1, 9-1=8)
  • ① 第一个空:a[i]比当前maxV大就更新maxV(用 >)
  • ② 第二个空:a[i]比当前minV小就更新minV(用 <)
  • ③ 第三个空:最大跨度 = 最大值减去最小值(用 -)

📚 知识点回顾

📦 数组与循环

  • 数组下标:从 0 开始!int a[100] 最大下标是 99
  • for循环:三要素:初始化、条件、更新
  • 循环边界:输出1到100要用 i <= 100
  • 数组访问:a[i] 访问第i个元素

🧮 数论与条件判断

  • 判断倍数:i % m == 0
  • 公因数:a%i==0 && b%i==0
  • 最大跨度:最大值 - 最小值
  • 逻辑与:&& 表示"并且"
  • 累加:sum += i; 把i加到sum上

🗺️ 解题逻辑线路

第1步:读入数据 用cin读入n个数或两个数a、b
↓
第2步:用循环遍历每个数 for (int i = 起始值; i <= 终止值; i++)
↓
第3步:在循环体内做条件判断 if (条件) { 执行对应操作 }
↓
第4步:累加或更新最值,最后输出结果 sum += 公因数; / if(a[i]>maxV) maxV=a[i];

💻 C++ 在线编辑器

📝 代码填空题:黄色虚线标记的 _____ 是需要你填写的部分。选择上方关卡后开始挑战!

📝 challenge.cpp(填空题)
1

          
        
📌 使用说明:
① 编辑代码:直接在代码区点击即可编辑,支持Tab键缩进(4个空格)
② 运行测试:点击"运行测试"按钮,会进行语法检查并模拟运行
③ 复制代码:点击"复制代码"按钮,一键复制到剪贴板
④ 真正编译:本编辑器为模拟运行环境,如需精确结果,请复制代码到 Dev-C++、Code::Blocks 或在线C++编译器中真正编译运行
⑤ 查看提示/答案:遇到困难可以点击"查看提示",完成后可以对照"查看答案"