2023年3月 GESP C++ 2级认证考试真题(含编程操作题部分)
选 单选题(共 9 题,每题 2 分)
以下存储器中的数据不会受到附近强磁场干扰的是( )。
下列流程图,属于计算机的哪种程序结构?( )。
下列关于 C++ 语言的叙述,不正确的是()。
下列关于 C++ 语言的叙述,不正确的是()。
以下哪个不是 C++ 语言的关键字?
以下哪个不是 C++ 语言的运算符?
如果 $a$ 和 $b$ 都是 char 类型的变量,下列哪个语句不符合 C++ 语法?
如果 $a$ 、 $b$ 、 $c$ 和 $d$ 都是 int 类型的变量,则下列哪个表达式能够正确计算它们的平均值?
如果 $a$ 为 char 类型的变量,且 $a$ 的值为 '2',则下列哪条语句执行后,$a$ 的值不会变为 '3'?
判 判断题(共 9 题,每题 2 分)
明明和笑笑在“小庙会”上分别抽到一个 4GB 和 4096MB 的 U 盘,容量大的盘是笑笑的( )。
IPv4 的地址通常用“点分十进制”的表示形式,形如(a.b.c.d),其中 $a$、$b$、$c$、$d$ 都是 $1 \sim 255$ 之间的十进制整数( )。
在 C++ 语言中,一个程序不能有多个 main 函数。
在 C++ 语言中,标识符中可以有下划线 _,但不能以下划线 _ 开头。
如果 $a$ 是 int 类型的变量,而且值为 $1$,则表达式 'a' 的值为 '1'。
在 if ... else 语句中,else 子句可以嵌套 if ... else 语句,但 if 子句不可以,因为会造成二义性。
while 语句的循环体至少会执行一次。
C++ 语言中 >= 是运算符,但 => 不是。
如果 $a$ 为 char 类型的变量,且取值为小写字母,则执行语句 a = a - 'a' + 'A'; 后,$a$ 的值会变为与原值对应的大写字母。
表达式 (10.0 / 2) 的计算结果为 $5.0$,且结果类型为 double。
编 编程操作题(共 2 题,共 50 分)
试题名称:画三角形
时间限制:1.0 s | 内存限制:128.0 MB
题目描述
输入一个正整数 $n$,请使用大写字母拼成一个这样的三角形图案(参考样例输入输出):三角形图案的第 $1$ 行有 $1$ 个字母,第 $2$ 行有 $2$ 个字母,以此类推;在三角形图案中,由上至下、由左至右依次由大写字母 $\texttt{A}-\texttt{Z}$ 填充,每次使用大写字母 $\texttt Z$ 填充后,将从头使用大写字母 $\texttt A$ 填充。
输入格式
输入一行,包含一个正整数 $n$。约定 $2 \le n \le 40$。
输出格式
输出符合要求的三角形图案。注意每行三角形图案的右侧不要有多余的空格。
样例输入 #1
3
样例输出 #1
A
BC
DEF
样例输入 #2
7
样例输出 #2
A
BC
DEF
GHIJ
KLMNO
PQRSTU
VWXYZAB
试题名称:百鸡问题
时间限制:1.0 s | 内存限制:128.0 MB
题目描述
“百鸡问题”是出自我国古代《张丘建算经》的著名数学问题。大意为:
“每只公鸡 $5$ 元,每只母鸡 $3$ 元,每 $3$ 只小鸡 $1$ 元;现在有 $100$ 元,买了 $100$ 只鸡,共有多少种方案?”
小明很喜欢这个故事,他决定对这个问题进行扩展,并使用编程解决:如果每只公鸡 $x$ 元,每只母鸡 $y$ 元,每 $z$ 只小鸡 $1$ 元;现在有 $n$ 元,买了 $m$ 只鸡,共有多少种方案?
输入格式
输入一行,包含五个整数,分别为问题描述中的 $x$,$y$,$z$,$n$,$m$。约定 $1 \le x,y,z \le 10$,$1 \le n,m \le 1000$。
输出格式
输出一行,包含一个整数 $C$,表示有 $C$ 种方案。
样例输入 #1
5 3 3 100 100
样例输出 #1
4
样例输入 #2
1 1 1 100 100
样例输出 #2
5151
说明/提示
【样例 1 解释】
这就是问题描述中的“百鸡问题”。$4$ 种方案分别为:
- 公鸡 $0$ 只、母鸡 $25$ 只、小鸡 $75$ 只。
- 公鸡 $4$ 只、母鸡 $18$ 只、小鸡 $78$ 只。
- 公鸡 $8$ 只、母鸡 $11$ 只、小鸡 $81$ 只。
- 公鸡 $12$ 只、母鸡 $4$ 只、小鸡 $84$ 只。