理论卷2025年12月GESP等级认证(C++) · 二级

GESP C++ 2级 2025.12

满分 100 · 及格 60 · 时长 60 分钟 · 共 27 题 (单选15 / 判断10 / 编程题2)
试卷阅览 · 免费预览前 10 题 · 交卷后可查看答案与解析
1
单选题号 #10890
分值 2

近日,空中客车公司表示,约 6 0006\,000 架空客 A320 系列飞机需要紧急更换一种易受太阳辐射影响的飞行控制软件。空客表示,在对一飞行事故进行分析后,结果表明强烈的太阳辐射可能会损坏飞行控制系统所需的关键数据,导致判断失误,进而可能引发飞行异常。在这里的飞行控制系统中,执行判断的部件最可能是下面的( )。

A

辐射传感器

B

处理器

C

内存单元

D

输出设备

2
单选题号 #10891
分值 2

小杨最近为了备考GESP,开始看网络上关于网络知识的视频。其中提到计算机网络系统有不同的划分标准,其中之一就是按照地理覆盖的范围来划分。那他平时上学所在的教学楼内的网络是一个( )。

A

PAN

B

LAN

C

MAN

D

WAN

3
单选题号 #10892
分值 2

下面有关 C++ 变量的说法,正确的是( )。

A

不可以用 for 作为变量名,因为 for 是 C++ 的关键字(保留字)。

B

_tnt 不可以是变量名,因为变量名的第一个字符必须是英文字母。

C

_tnt_ 不可以是变量名,因为最后一个字符容易与减号混淆。

D

可以用 printf 作为变量名,因为 printf 是关键字,但这不是好习惯,因为 printf 有约定的功能与含义。

4
单选题号 #10893
分值 2

一个小数是 0.123123123⋯0.123123123\cdots 无限循环,其小数点后 11 位是 11,后 22 位是 22,依此类推,求第 NN 位的值。横线处应填入的代码是( )。

int N;
cin >> N;
remainder = ______________;

if (remainder == 0)
 cout << 1;
else if (remainder == 1)
 cout << 2;
else
 cout << 3;
A

N % 3

B

(N - 1) % 3

C

N / 3

D

(N - 1) / 3

5
单选题号 #10894
分值 2

某同学执行 C++ 代码时 printf("%g\n", (3 + 3.1415926535)); 输出 6.14159,其原因最可能是( )。

A

C++ 中整数和浮点数相加时,整数会被转换为浮点数,而某些十进制小数无法精确表示为二进制小数,从而产生某些舍入误差。

B

C++ 的 printf 函数在输出浮点数时根据格式有默认小数点位数,因此输出了较少的位数。

C

3.1415926535 是一个无限循环小数,在计算机中无法精确表示。

D

由于计算机 CPU 的运算错误导致。

6
单选题号 #10895
分值 2

某单位工号的编码规则:编码总长 55 位,均为数字,前 44 位依次整除以 33 其值累加之和除以 1010 的余数为第 55 位数字。如某工号为 7658776587,前 44 位分别整除以 33 后,商分别为 22、22、11、22,其累加之和为 77,除以 1010 的余数为 77,故第 55 位为 77。下面代码依次输入前 44 位后,两个横线处分别应填的是( )。

int rst = 0, N;
for (int i = 0; i > N;
 rst += ___________; // L1
}
cout << ___________; // L2
A
N % 3
rst / 10
B
N % 3
rst % 10
C
N / 3
rst / 10
D
N / 3
rst % 10
7
单选题号 #10896
分值 2

下面的 C++ 代码执行后的输出是( )。

for (int i = -2; i < 2; i++)
 if (i % 2)
 printf("%d#",i);
A

-1#1#

B

-1#0#1#

C

-2#-1#1#

D

-2#-1#1#2#

8
单选题号 #10897
分值 2

下面的 C++ 代码执行后其输出是( )。

int cnt = 0, N;
for (int i =1; i < 10; i += 2)
 for (int j =0; j < i; j++)
 cnt += 1;
cout << cnt;
A

100

B

55

C

45

D

25

9
单选题号 #10898
分值 2

下面 C++ 代码执行后其输出是( )。

int i,j;

for (i = 1; i = i)
 cout = 12)
 cout << (i * j);
A

0 0

B

11

C

0

D

0 11

10
单选题号 #10899
分值 2

与下面 C++ 输出效果不一致的代码是( )。

int i;
for (i = 0; i < 10; i++)
 cout << i;
A
int i = 0;
while (i < 10){
 cout << i;
 i += 1;
}
B
int i = 0;
while (i < 10){
 i += 1;
 cout << i;
}
C
int i = 0;
while (true){
 cout = 10)
 break;
}
D
int i = 0;
while (true){
 if (i >= 10)
 break;
 cout << i;
 i += 1;
}
🔒

已解锁前 10 题

第 11~27 题(共 17 题)需开通题库会员或使用积分包作答
本卷为 VIP 试卷:需开通题库会员(无限刷)或购买积分包(每题 1 积分);已购长期正课学员自动享有权益
海小星AI平台海小星AI平台

点亮AI梦想,编程未来之星。专业的青少年AI编程教育平台。

课程方向

  • AIGC人工智能
  • Scratch图形化
  • Python编程
  • C++/NOIP竞赛

联系我们

  • 北京市西城区万博苑7号楼3层F28室
  • +86-010-83553010
  • contact@seanova.cn

© 2026 海小星AI平台|京ICP备2022032747号

隐私政策服务条款