信奥刷题站
GESP 认证 1级2026-06

GESP C++ 一级 模拟卷4

题量
27 题
客观题
25 题
建议时长
120 分钟
卷面总分
100 分

GESP C++ 一级模拟卷4(冲刺模拟卷)

开始整卷模拟计时作答 · 交卷即时判分 · 错题自动进错题本(需登录)2 道编程大题:在线只判客观题,编程题请自行前往洛谷等 OJ 提交验证

// questions

题目预览

1
单选题2

2026年春节联欢晚会上武术表演节目《武BOT》中,多个机器人表演空翻并保持队列。如果将机器人视为一个计算机系统,下列哪项不能作为输入设备?( )

A

检测重心的重力传感器

B

预装的AI算法程序

C

接收动作指令的遥控器

D

拍摄其他机器人的摄像头

2
单选题2

小明学习编程有一段时间了,他想在图形环境下把文本文件的名字改一下。他用鼠标左键点击选中该文件后,立即完成下面哪个操作后将处于输入新文件名的状态?( )

A

单击右键并选择"重命名"

B

双击左键

C

按功能键F1

D

按回车键

3
单选题2

以下代码中,关于变量a, b的描述正确的是( )。

int a = 5;
if (a > 3) {
    int b = 10;
    cout << a + b;
}
cout << a;
A

输出15和5

B

第二行cout<<a会报错

C

b在外面也可以使用

D

代码不能编译

4
单选题2

在C++中,下列哪项可以作为合法的变量名?( )

A

X.cpp

B

X-cpp

C

X#cpp

D

X_cpp

5
单选题2

C++表达式 3 * 3 % 2 的值为( )。

A

81

B

27

C

4

D

1

6
单选题2

以下代码执行后,其说法正确的是( )。

int M = 0, N = 0;
cin >> M >> N;
if (N > M)
    cout << (N - M);
else
    cout << (M - N);
A

输入一个正数和一个负数,输出肯定大于0

B

不管是负整数、正整数或0,结果肯定≥0

C

N和M相等时无输出

D

N和M带小数时按整数部分计算

7
单选题2

以下关于C++代码的说法,正确的是( )。

double PI = 3.1415926;
cout << (PI);
A

cout<<(PI)和cout<<(pi)效果相同

B

PI改为Pi编译正常但值不同

C

不能用PI做变量名

D

全部PI改写为Pai能正常执行

8
单选题2

C++表达式 14 - 3 * 3 % 2 的值是( )。

A

0

B

11

C

13

D

-67

9
单选题2

执行以下代码,输出是( )。

int a = 5;
int b = ++a;
cout << a << " " << b;
A

5 5

B

5 6

C

6 6

D

6 5

10
单选题2

以下代码用于判断某年是否为闰年(闰年:能被4整除但不能被100整除,或能被400整除),横线上应填入( )。

int year;
cin >> year;
if (__________________)
    cout << "闰年";
else
    cout << "平年";
A

year % 4 == 0 && year % 100 != 0 || year % 400 == 0

B

year % 4 == 0 || year % 400 == 0

C

year % 4 == 0 && year % 400 == 0

D

year % 400 == 0

11
单选题2

以下代码执行后,输出是( )。

int i, tnt = 1;
for (i = 0; i < 5; i++)
    tnt *= i;
cout << tnt << " " << i;
A

0 5

B

10 5

C

0 4

D

24 5

12
单选题2

以下代码执行后,输出是( )。

int i;
for (i = 1; i < 5; i++) {
    if (i % 3 == 0)
        break;
    cout << i << "#";
}
if (i >= 5)
    cout << "END";
A

1#2#

B

1#2#END

C

1#2

D

1#2#3#4#END

13
单选题2

以下代码用于判断判断N是否为位增数(如123),两处横线应填入( )。

int N, n1, n2;
cin >> N;
__________;
while (N) {
    n1 = N % 10;
    if (n1 >= n2) { cout << 0; return 1; }
    n2 = n1, N /= 10;
}
cout << 1;
A

n2 = N % 10

B

n2 = N % 10, N /= 10

C

n2 = N / 10, N %= 10

D

N /= 10

14
单选题2

执行以下代码可以找出百位、十位和个位满足 a²+b²=c² 的三位数。横线处应填入( )。

for (int i = 100; i <= 999; i++) {
    int a = i / 100;
    _____________
    int c = i % 10;
    if (a * a + b * b == c * c) count++;
}
A

int b = (i / 10) / 10

B

int b = (i / 10) % 10

C

int b = (i % 10) / 10

D

int b = (i % 10) % 10

15
单选题2

以下代码用于判断N是否为双螺旋数(奇数位之和=偶数位之和)。空白处应填入( )。

int N, N1 = 0, N2 = 0;
while (N) {
    ____________
    ____________
}
if (N1 == N2) cout << "Yes";
A

N1 += N/10, N/=10; N2 += N/10, N/=10;

B

N1 += N%10, N/=10; N2 += N%10, N%=10;

C

N1 += N%10, N/=10; N2 += N%10, N/=10;

D

N1 += N/10, N%=10; N2 += N/10, N%=10;

16
判断题2

小明的电话手表除了看时间还能打电话、收发信息,可以推测手表中装有操作系统。( )

17
判断题2

C++表达式 4 % 2 和 2 * 2 % 2 的结果相同。( )

18
判断题2

在Windows中,1KB = 1000字节。( )

19
判断题2

在C++中,false是关键字,不能作为变量名。( )

20
判断题2

C++中定义整型变量N,执行scanf("%d",&N); cout<<N/3*5; 时输入3.6,输出是6。( )

21
判断题2

以下代码执行时输出是__0322$$。( )

printf("__%02d%2d$$", 3, 22);
22
判断题2

C++表达式 (N % 2 == 0) && (N % 3 == 0) 和 N % 6 == 0 对于所有正整数N效果相同。( )

23
判断题2

C++中,表达式 100 / 200 * 200 的值是0。( )

24
判断题2

以下代码能正确判断输入的正整数是否为对称数(回文数)。( )

int n, rev = 0, old;
cin >> n;
old = n;
while (n != 0) {
    rev = rev * 10 + n % 10;
    n /= 10;
}
if (old == rev)
    cout << "对称数";
25
判断题2

以下代码执行后输出为2500。( )

int cnt = 0;
for (int i = 1; i < 100; i++)
    cnt += i++;
cout << cnt;
26
编程题25

编程题 1:商店折扣

时间限制:1.0 s 内存限制:512.0 MB

【题目描述】

商店开展促销活动,给出两种方案:第一种是满 x 元减 y 元(只能用一次);第二种是打 n 折(价格变为原价的 n/10)。

小明挑选了总价为 p 元的物品,结账时只能选一种方案。请问小明最少需要支付多少钱?

【输入格式】

四行,四个正整数 x, y, n, p。x表示满减门槛,y表示满减金额,n表示折扣(1≤n≤9),p表示原价。

【输出格式】

一行,一个实数,保留两位小数,表示最少支付的金额。

【样例输入1】

8
7
9
10

【样例输出1】

3.00

【样例输入2】

8
7
2
11

【样例输出2】

2.20

【数据范围】

1 ≤ x, y ≤ 10000,1 ≤ n ≤ 9,1 ≤ p ≤ 10000。

本题为编程大题:请复制题面到洛谷 / GESP OJ 等平台编写并提交代码(本站不判分)
27
编程题25

编程题 2:数字替换

时间限制:1.0 s 内存限制:512.0 MB

【题目描述】

小明不喜欢数字4,但觉得数字8寓意好。他想把一个整数中所有的数字4都替换成数字8。如果数中不含4则无需修改。

【输入格式】

一行,一个整数 N(可能很大,但不超过10⁹)。

【输出格式】

一行,替换后的整数。

【样例输入1】

8459045

【样例输出1】

8859085

【样例输入2】

123

【样例输出2】

123

【数据范围】

0 ≤ N ≤ 10⁹。

本题为编程大题:请复制题面到洛谷 / GESP OJ 等平台编写并提交代码(本站不判分)