2026 年 3 月青少年软编等考 C/C++ 一级测试题解析
目录
- 一、单选题(每题 4 分,共 40 分)
- 二、判断题(每题 2 分,共 20 分)
- 三、编程题(每题 20 分,共 40 分)
- 1. 欢迎来到程序世界
- 思路分析
- 2. 重复的数列
- 思路分析
一、单选题(每题 4 分,共 40 分)
- 以下哪个是 C++ 程序中的入口函数?( )
A.init()
B.main()
C.start()
D.begin()
【答案】B
【解析】C/C++ 程序从main()函数开始执行,因此它是程序的入口函数。
- 编译后生成的可执行文件,在 Windows 操作系统下,其默认的扩展名是?( )
A.cpp
B.exe
C.obj
D.h
【答案】B
【解析】Windows 系统下,可执行文件默认扩展名为.exe。cpp是 C++ 源代码文件的扩展名,h是 C/C++ 头文件的扩展名,obj是源代码编译生成的目标文件扩展名。
- 以下哪个步骤不是 C 程序开发的流程?( )
A. 编写源代码
B. 编译生成目标文件
C. 链接生成可执行文件
D. 运行源文件
【答案】D
【解析】C/C++ 程序需要先经过编译和链接生成可执行文件,不能直接运行源文件。
- 以下哪个不是合法的 C++ 标识符?( )
A.var
B.var123
C.123 var
D.VarName
【答案】C
【解析】C/C++ 标识符不能以数字开头,也不能包含空格。
- 表达式
5 / 2在 C++ 中的结果是?( )
A. 2
B. 2.5
C. 3
D. 2.0
【答案】A
【解析】5和2都是整数,在 C/C++ 中5 / 2会进行整数除法,舍去小数部分,因此结果为2。
- 以下哪个语句可以输出整数变量
a和b的值,中间用空格分隔?( )
A.cout << a << " " << b;
B.cout << a, b;
C.printf("%d%d", a, b);
D.printf(a + " " + b);
【答案】A
【解析】cout << a << " " << b;是 C++ 中正确的输出语句。cout << a, b;在 C++ 中会被当做(cout << a), b;,因此只能输出a的值。C 选项可以输出a和b的值,但是没有输出空格。D 选项不是合法的函数调用方式。
abs(-5)的返回值是?( )
A. -5
B. 5
C. 0
D. 1
【答案】B
【解析】abs()是 C/C++ 中用于求绝对值的函数,因此abs(-5) = 5。
执行以下代码后,
z的值是?( )intz=10;z*=2+3;A. 26
B. 50
C. 25
D. 23
【答案】B
【解析】复合赋值运算符与赋值运算符的计算规则类似,先计算赋值号右边2 + 3 = 5,再执行z *= 5,即z = z * 5 = 50。
以下代码的输出是?( )
doubled=3.14159;cout<<(int)(d)<<endl;A. 3.14159
B. 3
C. 4
D. 3.0
【答案】B
【解析】(int)d会将double类型强制转换为整数,小数部分被舍去(截断)。
执行以下代码后,
a和b的值分别是?( )inta=5,b=10;intt=a;a=b;b=t;A. 5, 10
B. 10, 10
C. 10, 5
D. 5, 5
【答案】C
【解析】该代码的功能是利用临时变量t交换a和b的值。
二、判断题(每题 2 分,共 20 分)
- 注释语句会影响程序的执行速度。( )
【答案】×
【解析】注释在编译时会当作空格忽略掉,不会影响程序运行速度。
- 一个 C++ 源文件可以包含多个
main()函数。( )
【答案】×
【解析】一个 C/C++ 程序只能有一个main()函数,否则会编译错误。
- 变量名可以以数字开头。( )
【答案】×
【解析】变量名只能以字母或下划线开头。
const int a = 10;定义了一个常量,其值不能改变。( )
【答案】√
【解析】const表示常量,定义时必须初始化,定义后不可修改。
- 赋值运算符
=的优先级高于算术运算符。( )
【答案】×
【解析】算术运算符优先级高于赋值运算符。
a += b效果等价于a = a + b。( )
【答案】√
【解析】复合赋值运算符+=与对应展开形式等价。
cin和cout是 C++ 标准输入输出流对象,使用时需要包含iostream头文件。( )
【答案】√
【解析】标准输入输出流定义在iostream头文件中。
cout << fixed << setprecision(2) << 3.1415926;的运行结果是 3.14。( )
【答案】√
【解析】fixed配合setprecision(2)表示保留两位小数输出。
sqrt(b / (a - a))会运行错误。( )
【答案】√
【解析】由于a - a = 0,表达式b / (a - a)会发生除以 0 的错误,因为 0 不能做除数。
- 顺序结构是程序的三大基本执行结构之一。( )
【答案】√
【解析】程序的三大基本结构是:顺序结构、选择结构(分支结构)、循环结构。
三、编程题(每题 20 分,共 40 分)
1. 欢迎来到程序世界
题目链接:SOJ D1279
请你编写一个简单的程序,输出指定的欢迎语句。
时间限制:1 s
内存限制:256 MB
- 输入
本题没有输入。 - 输出
请严格按照以下格式输出两行文字:
第一行:Hello, C++ World!
第二行:Let's start coding!
注意:大小写、标点和空格必须完全一致。 - 样例输入
无 - 样例输出
Hello, C++ World! Let's start coding!
思路分析
本题考察基本输出语句,输出入门题。
只需要按照题目要求输出固定的两行内容即可。需要特别注意:
- 大小写必须完全一致;
- 标点符号和空格不能遗漏;
- 第二行中的单引号要正确输出。
/* * Name: T1.cpp * Problem: 欢迎来到程序世界 * Author: Teacher Gao. * Date&Time: 2026/05/16 14:19 */#include<iostream>usingnamespacestd;intmain(){cout<<"Hello, C++ World!"<<endl;cout<<"Let's start coding!"<<endl;return0;}2. 重复的数列
题目链接:SOJ D1259
有一个数列,按如下顺序排列:
- 1 , 2 , 3 , 4 , 0 , 1 , 2 , 3 , 4 , 0 , 1 , 2 , 3 , 4 , 0 , 1 , 2 , 3 , 4 , 0... 1,2,3,4,0,1,2,3,4,0,1,2,3,4,0,1,2,3,4,0...1,2,3,4,0,1,2,3,4,0,1,2,3,4,0,1,2,3,4,0...
请问,该数列第n nn个数字是多少?
时间限制:1 s
内存限制:256 MB
- 输入
单个整数:n nn,1 ≤ n ≤ 10 6 1\le n\le 10^61≤n≤106。 - 输出
单个整数:表示该数列的第n nn个数字的值。 - 样例输入 1
1 - 样例输出 1
1 - 样例输入 2
10 - 样例输出 2
0
思路分析
此题考察顺序结构找规律,属于入门题。
观察数列可以发现,每 5 个数字为一个循环,所以直接计算n % 5即可得到答案。
/* * Name: T2.cpp * Problem: 重复的数列 * Author: Teacher Gao. * Date&Time: 2026/05/16 14:23 */#include<iostream>usingnamespacestd;intmain(){intn;cin>>n;cout<<n%5<<endl;return0;}