考试时间:60 分钟 满分:100 分
适用:小学组|算法应用主题赛
版本:2026 初赛(智传民韵)
内容:试题 + 答案 + 详细解析
用途:备考刷题、复习巩固、赛前训练
一、单项选择题(每题 5 分,共15题,75 分)
第 1 题
在 C++ 中,定义一个数组存储 5 种民族乐器的编号,代码如下。则 instruments[0] 的值是?( )
1 int instruments[5] = {101, 102, 103, 104, 105};
A. 101
B. 102
C. 0
D. 随机数
✅ 正确答案:A
解析:数组下标从 0 开始,instruments[0] 为第一个元素 101。
第 2 题
要统计苗族银饰的重量总和,假设重量存储在数组 weights 中,补全以下代码:( )
1 2 3 4 int sum = 0;for(int i = 0; i < 4; i++) { sum = ________;}
A. sum + weights[i]
B. sum + weights[0]
C. weights[i]
D. sum += weights[i]
✅ 正确答案:A
解析:sum = sum + weights[i] 等价于 sum += weights[i],此处语法应填 sum + weights[i]。
第 3 题
下面程序的输出结果是?( )
1 2 3 4 5 6 7 8 9 #include <iostream>using namespace std;int main() { int festival = 15; if(festival > 10) { cout << "节日快乐"; } return 0;}
A. 节日快乐
B. 15
C. 无输出
D. festival
✅ 正确答案:A
解析:15 > 10 条件成立,输出 节日快乐。
第 4 题
执行以下程序,输出的结果是?( )
1 2 3 4 5 int a = 10, b = 20;int temp = a;a = b;b = temp;cout << a << " " << b;
A. 10 20
B. 20 10
C. 10 10
D. 20 20
✅ 正确答案:B
解析:代码实现 a、b 交换,结果为 20 10。
第 5 题
下面程序用于输出民族舞蹈的动作编号(从 1 到 5),补全①处的代码,下列哪一项正确?( )
1 2 3 for(int i = 1; ① ; i++) { cout << i << " ";}
A. i = 1
B. i <= 5
C. i++
D. i--
✅ 正确答案:B
解析:循环条件为 i <= 5,控制输出 1~5。
第 6 题
阅读以下代码,当输入 3 时,下面程序的输出结果为?( )
1 2 3 4 5 int n;cin >> n;for(int i = 1; i <= n; i++) { cout << i * i << " ";}
A. 1 2 3
B. 1 4 9
C. 2 4 6
D. 3 3 3
✅ 正确答案:B
解析:输入 3,输出 1²、2²、3²,即 1 4 9。
第 7 题
以下程序段输出的结果为?( )
1 2 3 4 5 6 7 int count = 0;for(int i = 1; i <= 3; i++) { for(int j = 1; j <= 2; j++) { count++; }}cout << count;
A. 5
B. 6
C. 9
D. 12
✅ 正确答案:B
解析:外层 3 次,内层 2 次,共 3×2 = 6。
第 8 题
阅读程序,当输入 1 2 1 2 1(代表游客选择的民族服饰颜色)时,统计颜色 1 出现次数,输出结果为?( )
1 2 3 4 5 6 7 int a[3] = {0};int x;for(int i = 1; i <= 5; i++) { cin >> x; a[x]++;}cout << a[1];
A. 1
B. 2
C. 3
D. 5
✅ 正确答案:C
解析:输入中 1 出现 3 次,输出 3。
第 9 题
下面代码用于判断民歌的音量等级(volume),如果音量大于 80 且小于等于 100,则输出 “高”。正确的条件表达式是?( )
1 2 3 if(________) { cout << "高";}
A. volume > 80 && volume <= 100
B. volume < 80
C. volume == 80
D. volume > 100
✅ 正确答案:A
解析:“且” 关系用 &&,条件为 volume > 80 && volume <= 100。
第 10 题
现在要计算剪纸图案的周长(正方形),边长为 a。补全函数代码:( )
1 2 3 int perimeter(int a) { return ________;}
A. a * 4
B. a * a
C. a + 4
D. 4
✅ 正确答案:A
解析:正方形周长 = 边长 × 4,即 a * 4。
第 11 题
在 C++ 中,读取用户输入的民歌名称(不带空格),应该使用哪个对象?( )
A. cout
B. cin
C. endl
D. main
✅ 正确答案:B
解析:输入使用 cin,输出使用 cout。
第 12 题
以下哪段代码可以正确初始化一个包含 3 个元素的数组,分别代表 “春节”、“端午”、“中秋” 的天数?( )
A. int days[] = {3, 5, 1};
B. int days = (3, 5, 1);
C. days{3, 5, 1};
D. array days = [3, 5, 1];
✅ 正确答案:A
解析:C++ 数组正确初始化格式为 int days[] = {3,5,1};。
第 13 题
执行 cout << "非遗文化" << endl; 后,光标会( )
A. 在同一行继续输出
B. 移到下一行的行首
C. 报错
D. 什么都不做
✅ 正确答案:B
解析:endl 作用为换行,光标移至下一行行首。
第 14 题
下面哪个循环结构最适合用来模拟 “重复播放 5 首民歌” 的场景?( )
A. while(1)
B. for(int i=0; i<5; i++)
C. if-else
D. switch
✅ 正确答案:B
解析:固定次数循环用 for,播放 5 首用 i<5。
第 15 题
想要计算皮影戏幕布的面积(长 * 宽),代码应该是:( )
A. area = length + width;
B. area = length - width;
C. area = length * width;
D. area = length / width;
✅ 正确答案:C
解析:矩形面积 = 长 × 宽,用 * 表示乘号。
二、判断题(对打√,错打 ×,每题 5 分,共5题,25 分)
第 1 题
C++ 中,数组的下标是从 0 开始的。()
✅ 正确答案:√
解析:数组下标默认从 0 开始编号。
第 2 题
while(true) 是一个无限循环,程序会卡在这里无法结束。()
✅ 正确答案:√
解析:条件永远为真,是无限循环。
第 3 题
在 C++ 中,变量名 Festival 和 festival 代表同一个变量。()
✅ 正确答案:×
解析:C++ 变量名区分大小写,二者不是同一变量。
第 4 题
cout 可以用来输出数字和字符串。()
✅ 正确答案:√
解析:cout 支持数字、字符串、字符等多种类型输出。
第 5 题
break; 语句的作用是跳出当前循环。()
✅ 正确答案:√
解析:break 用于立即跳出所在循环。
加入工作室
学习编程知识
锻炼逻辑思维
让自己变得更优秀
欢迎同学们组队
学习 C++
感受不一样的程序人生
成为新时代的领军人物
扫码关注
感谢您关注
信奥科创工作室
官方微信

互动支持
期待您的分享 点赞 在看