GESP 2025年3月_C++二级试卷

从PDF导入:GESP 2025年3月_C++二级试卷

C++ 120分钟 总分 100.0 27 题
试卷题目预览
第1题 中级 2.0分 单选
2025年春节有两件轰动全球的事件,一个是DeepSeek横空出世,另一个是贺岁片《哪吒2》票房惊人,入了全球票房榜。下面关于DeepSeek与《哪吒2》的描述
A. 《哪吒2》是一款新型操作系统
B. DeepSeek是深海钻探软件
C. 《哪吒2》可以生成新的软件
D. DeepSeek可以根据《哪吒2》的场景生成剧情脚本
第2题 中级 2.0分 单选
对整型变量N,如果它能够同时被3和5整除,则输出N是含有至少两个质因数。如果用流程图来描述处理过程,则输出语句应该在哪种图形框中( )。
A. 圆形框
B. 椭圆形框
C. 平行四边形框
D. 菱形框
第3题 中级 2.0分 单选
下面C++代码执行,其输出是( )。

A. 3 4
B. 3 3
C. 4 4
D. 4 3
第4题 中级 2.0分 单选
求三色彩球的颜色。有数量无限的红绿蓝三种彩球排成一行,每组先为5个红色球,随后3个绿色,最后为2个蓝色。每个球都有编号,从左到右依次为1,2,3……。输入整数代

A. 将else if ((remainder == 9) || (remainder == 0)) 修改为else 效果相同
B. 将((1 <= remainder) && (remainder<= 5)) 修改为(remainder <= 5) 效果相同
C. else if ((6 <= remainder) && (remainder <= 8)) 写法错误,应修改为else if (6 <= remainder <= 8)
D. 根据题意remainder = N % 10 应修改为remainder = N / 10
第5题 中级 2.0分 单选
下面C++代码执行后其输出是( )。

A. 18
B. 17
C. 16
D. 14
第6题 中级 2.0分 单选
下面C++代码执行后输出是( )。

A. 10
B. 8
C. 0
D. 因为循环执行时会执行break语句而终止循环,所以i的值不确定
第7题 中级 2.0分 单选
下面C++代码执行后输出是( )。

A. 0#0#0#0#0#0#
B. 0#0#0#0#0#0#0#1#
C. 0#0#0#0#1#
D. 0#0#0#0#0#0#1#
第8题 中级 2.0分 单选
下面C++代码执行后的输出是( )。

A. 1-2-1-3-2-1-4-3-2-1-
B. 1-2-1-3-2-1-4-3-2-1
C. 0-0-1-0-1-2-0-1-2-3-
D. 0-0-1-0-1-2-0-1-2-3
第9题 中级 2.0分 单选
下面C++代码执行后,将输出能被2整除且除以7余数为2的数。下列选项不能实现的是( )。

A. ((i % 2 == 0) && (i % 7 == 2))
B. ((!(i % 2)) && (i % 7 == 2))
C. ((!(i % 2)) && (!(i % 7)))
D. ((i % 2 != 1) && (i % 7 == 2))
第10题 中级 2.0分 单选
下面C++代码用于求1到N之间正整数中含有3的数的个数,比如123和32都是符合条件的数。则前后两处横线应填入代码分别是( )。
A. continue; j /= 10;
B. break; j /= 10;
C. continue; j %= 10;
D. break; j %= 10;
第11题 中级 2.0分 单选
在数学中N!表示N的阶乘,下面的两段C++代码用于求1到N的阶乘之和。选项中的说法正确的是( )。
A. 虽然实现1的代码短小,但效率并不高
B. 实现2的代码效率更高,且更易于理解
C. 实现1因为应用了前项计算结果,计算量更小,因此效率高
D. 两种实现,效率几乎一致
第12题 中级 2.0分 单选
哥德巴赫猜想是指大于2的偶数都可以分解为两个质数之和,下面的代码用于验证4-1000之内的偶数能否分解为两个质数之和。对该段代码,错误的说法是( )。

A. 将代码isPrime(j) && isPrime(i-j) 修改为isPrime(j) == true && isPrime(i-j) == true 效果相同
B. 代码执行后,输出的一对质数,一定是小的数在前
C. 即便将外层循环中i的上界1000修改为很大的整数,也不能说从数学上证明了哥德巴赫猜想
D. 根据题意,break语句应该移到if语句块之外
第13题 中级 2.0分 单选
已知C++代码和执行后的期望输出,相关说法正确的是( )。
A. 倒数第二行的printf("\n") 有错,应该修改为cout << endl; ,printf( )函数不能输出换行
B. last += 1 修改为last = last + 1 执行效果相同
C. 代码中L1标记行中的j < i + 1 应修改为j < i
D. 外层for循环前的last = 1 修改为last = 0 执行效果相同
第14题 中级 2.0分 单选
在C++中,( )最适合填入横线处连续5次正确生成1到10之间的随机整数?
A. rand( ) % 11
B. rand( ) % 10
C. rand( ) % 10 + 1
D. rand() % 9 + 1
第15题 中级 2.0分 单选
在C++中,如果a和b均为float类型的变量,那么二者如果相差足够小(比如0.000001),就可以视作相等。下列哪个表达式能用来正确判断"a等于b"( )
A. ((b-a) < 0.000001 )
B. ((b-a) <= 0.000001 )
C. (abs(b-a) <= 0.000001 )
D. (sqrt(b-a) <= 0.000001 )
第16题 中级 2.0分 判断
C++、Python都是高级编程语言,它们的每条语句最终都要通过机器指令来完成。( )
T. 正确
F. 错误
第17题 中级 2.0分 判断
在C++代码中,假设N为正整数,则N - N / 10 * 10与N % 10都将获得N的个位数。( )
T. 正确
F. 错误
第18题 中级 2.0分 判断
C++语句cout << ((10 <= N <= 12)? "true":"false") 中,假设整型变量N为12,则其输出为true。原因是执行10 <=
T. 正确
F. 错误
第19题 中级 2.0分 判断
C++表达式(sqrt(N) * sqrt(N)) == N 中的N如果为正整数,则表达式的值为true,相当于开平方后平方是本身。( )
T. 正确
F. 错误
第20题 中级 2.0分 判断
下面C++执行后将输出3*2=6。( )

T. 正确
F. 错误
第21题 中级 2.0分 判断
下面C++代码执行后将输出10。( )

T. 正确
F. 错误
第22题 中级 2.0分 判断
下面C++代码执行后将输出1。( )

T. 正确
F. 错误
第23题 中级 2.0分 判断
下面的C++代码执行后将输出10行"OK"。( )

T. 正确
F. 错误
第24题 中级 2.0分 判断
将下面C++代码中的for循环中的i = 1 调整为i = 0 的输出结果相同。( )

T. 正确
F. 错误
第25题 中级 2.0分 判断
下面C++代码执行后将输出0123。( )
T. 正确
F. 错误
第26题 中级 25.0分 编程
等差矩阵

小A想构造一个N行M列的矩阵,使得矩阵的每一行与每一列均是等差数列。小A发现,在矩阵的第i行第j列填入整数i*j,得到的矩阵能满足要求。你能帮小A输出这个矩阵吗?

【输入格式】
一行,两个正整数N和M。
【输出格式】
共N行,每行M个由空格分割的整数,表示小A需要构造的矩阵。
【样例输入】

3 4
【样例输出】

1 2 3 4
2 4 6 8
3 6 9 12
对于所有测试点,保证1<=N<=50,1<=M<=50。
第27题 中级 25.0分 编程
时间跨越

假设现在是y年m月d日h时而k小时后是y1年m1月d1日h1时,对于给定的y、m、d、h、k,小杨想请你帮他计算出对应的y1、m1、d1、h1是多少。

【输入格式】
输入包含五行,每行一个正整数,分别代表y、m、d、h、k。
【输出格式】
输出四个正整数,代表y1、m1、d1、h1。
【样例输入】

2008
2
28
23
1
【样例输出】

2008 2 29 0
对于全部数据,保证有1<=y<=2000,1<=m<=12,1<=d<=31,0<=h<=23,0<=k<=100。数据保证为合法时间。
闰年判断规则:普通闰年:年份能被4整除,但不能被100整除。世纪闰年:年份能被400整除。满足以上任意一条规则的年份就是闰年,否则是平年。
💬