C++编程等级认证二级 2023 年 03 月理论 60 分钟


*
您的姓名:
*
【单选题】(每题 2 分)
1、以下存储器中的数据不会受到附近强磁场干扰的是()。
A、硬盘
B、U 盘
C、内存
D、光盘
*
2、下列流程图,属于计算机的哪种程序结构?()

A、顺序结构
B、循环结构
C、分支结构
D、数据结构
*
3、下列关于 C++语言的叙述,不正确的是()。
A、double 类型的变量占用内存的大小是浮动的
B、bool 类型的变量占用 1 字节内存
C、int 类型变量的取值范围不是无限的
D、char 类型的变量有 256 种取值
*
4、下列关于 C++语言的叙述,不正确的是()。
A、变量定义后,可以使用赋值语句改变它的值
B、变量定义时,必须指定类型
C、变量名必须为合法标识符
D、合法标识符可以以数字开始
*
5、以下哪个不是 C++语言的关键字?()
A、return
B、max
C、else
D、case
*
6、以下哪个不是 C++语言的运算符?()
A、\=
B、/=
C、-=
D、!=
*
7、如果 a 和 b 都是 char 类型的变量,下列哪个语句不符合 C++语法?()
A、b = a + 1;
B、b = a + '1';
C、b ='a'++;
D、b = a++;
*
8、如果 a、b、c 和 d 都是 int 类型的变量,则下列哪个表达式能够正确计算它们的平均值?()
A、(a + b + c + d) / 4
B、(a + b + c + d) % 4
C、(a + b + c + d) / 4.0
D、(a + b + c + d) % 4.0
*
9、如果 a 为 char 类型的变量,且 a 的值为'2',则下列那条语句执行后,a 的值不会变为'3'?()
A、a = a + 1;
B、a + 1;
C、a = 1 + a;
D、++a;
*
10、如果 a 为 int 类型的变量,且 a 的值为 9,则执行 a -= 3;之后,a 的值会是()。
A、3
B、6
C、9
D、12
*
11、如果 a 和 b 均为 int 类型的变量,下列表达式能正确判断“a 等于 0 或 b 等于 0”的是()。
A、(!a) || (!b)
B、(a == b == 0)
C、(a == 0) && (b == 0)
D、(a == 0) - (b == 0) == 0
*
12、如果 a 为 char 类型的变量,下列哪个表达式可以正确判断“a 是小写字母”?()
A、a <= a <= z
B、a - 'a' <= 'z' - 'a'
C、'a' <= a <= 'z'
D、a >= 'a' && a <= 'z'
*
13、在下列代码的横线处填写(),使得输出是“50 10”。

#include <iostream>

using namespace std;

int main() {

    int a=10, b=50;

    __________; // 在此处填入代码

    b -= a;

    a += b;

    cout << a << " "<< b <<endl;

    return 0;

}

A、a -= b
B、a += b
C、a = b - a
D、a = b
*
14、在下列代码的横线处填写(),可以使得输出是“5”。

#include <iostream>

using namespace std;

int main() {

    int cnt =0;

    for (char ch ='1';ch <= '9'; ch++)

        if(________) // 在此处填入代码

            cnt++;

    cout << cnt <<endl;

    return 0;

}

A、ch < '5'
B、ch >= 5
C、ch >= '4'
D、ch%2 == 1
*
15、执行以下 C++语言程序后,输出结果是()。

#include <iostream>

using namespace std;

int main() {

    int n = 17;

    bool isprime = true;

    for (int i = 2; i <= n; i++)

        if(n % i == 0)

            isprime = false;

    cout << isprime << endl;

    return 0;

}

A、false
B、true
C、0
D、1
*
【判断题】(每题 2 分)
16、明明和笑笑在“小庙会”上分别抽到一个 4GB 和 4096MB 的 U 盘,容量大的盘是笑笑的。()
A、正确
B、错误
*
17、IPv4 的地址通常用“点分十进制”的表示形式,形如(a.b.c.d),其中 a、b、c、d 都是 1~255 之间的十进制整数。()
A、正确
B、错误
*
18、在 C++语言中,一个程序不能有多个 main 函数。()
A、正确
B、错误
*
19、在 C++语言中,标识符中可以有下划线_,但不能以下划线_开头。()
A、正确
B、错误
*
20、如果 a 是 int 类型的变量,而且值为 1,则表达式'a'的值为'1'。()
A、正确
B、错误
*
21、在 if……else……语句中,else 子句可以嵌套 if……else……语句,但 if 子句不可以,因为会造成二义性。()
A、正确
B、错误
*
22、while 语句的循环体至少会执行一次。()
A、正确
B、错误
*
23、C++语言中>=是运算符,但=>不是。()
A、正确
B、错误
*
24、如果 a 为 char 类型的变量,且取值为小写字母,则执行语句 a = a - 'a' + 'A';后,a 的值会变为与原值对应的大写字母。()
A、正确
B、错误
*
25、表达式(10.0/2)的计算结果为 5.0 且结果类型为 double。()
A、正确
B、错误
【编程题】
*

26、(本题 25 分)画三角形

【问题描述】

输入一个正整数 n,请使用大写字母拼成一个这样的三角形图案(参考样例输入输出):

三角形图案的第 1 行有 1 个字母,第 2 行有 2 个字母,以此类推:

在三角形图案中,由上至下、由左至右依次由大写字母 A-Z 填充,每次使用大写字母 Z 填充后,将从头使用大写字母 A 填充。

【输入描述】

输入一行,包含一个正整数 n。约定 2≤n≤40。

【输出描述】

输出符合要求的三角形图案。注意每行三角形图案的右侧不要有多余的空格。

【样例输入 1】

3

【样例输出 1】

A

BC

DEF

【样例输入 2】

7

【样例输出 2】

A

BC

DEF

GHIJ

KLMNO

PQRSTU

VWXYZAB

*

27、(本题 25 分)百鸡问题

【问题描述】

“百鸡问题”是出自我国古代《张丘建算经》的著名数学问题。

大意为:“每只公鸡 5 元,每只母鸡 3 元,每 3 只小鸡 1 元;现在有 100 元,买了 100 只鸡共有多少种方案?”

小明很喜欢这个故事,他决定对这个问题进行扩展,并使用编程解决:

如果每只公鸡 x 元,每只母鸡 y 元,每 z 只小鸡 1 元;现在有 n 元,买了 m 只鸡,共有多少种方案?

【输入描述】

输入一行,包含五个整数,分别为问题描述中的 x、y、z、n、m。约定 1≤ x,y,z≤10,1≤n,m≤1000。

【输出描述】

输出一行,包含一个整数 C,表示有 C 种方案。

【样例输入 1】

5 3 3 100 100

【样例输出 1】

4

【样例解释 1】

这就是问题描述中的“百鸡问题”。4 种方案分别为:

公鸡 0 只,母鸡 25 只,小鸡 75 只;

公鸡 4 只,母鸡 18 只,小鸡 78 只;

公鸡 8 只,母鸡 11 只,小鸡 81 只;

公鸡 12 只,母鸡 4 只,小鸡 84 只。

【样例输入 2】

1 1 1 100 100

【样例输出 2】

5151

问卷星提供技术支持
举报