C++编程等级认证二级模拟试卷 1 理论 60 分钟

【单选题】(每题 2 分)
*
您的姓名:
*
1、人们在使用计算机时所提到的 Windows 通常指的是()。
A、操作系统
B、多人游戏
C、上市公司
D、家居用具
*
2、万维网 WWW 中存储了海量的数据资源,这里用于传输控制的协议是()。
A、URL
B、SMTP
C、HTTP
D、HTML
*
3、下列关于 C++语言的叙述,不正确的是()。
A、变量都有类型
B、常量都有类型
C、常量 1.0 的类型为 double
D、常量 '1' 的类型为 int
*
4、不可以作为 C++标识符的是()。
A、0a0b
B、_a_b
C、_0ab
D、a0b0
*
5、以下语句定义的变量占用 1 字节内存的是()。
A、int a = 1;
B、int b = 'b';
C、bool c = true;
D、double d = 1.0;
*
6、如果 a 是已定义的 int 类型变量,以下 C++语言的语句不能通过编译的是()。
A、a = 3.0;
B、int a = 3;
C、a = 3;
D、a = '3';
*
7、下列不是 C++语言的运算符的是()。
A、>=
B、<=
C、==
D、=>
*
8、如果用三个 int 类型的变量 a、b 和 h 分别表达梯形的上底、下底和高的长度,则下列哪个表达式可以用来计算梯形的面积()?
A、h * (a + b) / 2
B、0.5 * h * (a + b)
C、0.5 * (h * a + b)
D、0.5 * h * a + b
*
9、已知'A'的 ASCII 码为 65,'1'的 ASCII 码为 49,'r'的 ASCII 码为 114,则表达式'A' + 1 的计算结果为()。
A、66
B、'B'
C、114
D、'r'
*
10、如果 a 为 char 类型的变量,且 a 的值为'1',则执行 a = a + 3;之后,a 的值会是()。
A、4
B、13
C、'4'
D、'13'
*
11、如果 a 和 b 均为 int 类型的变量,下列表达式能够正确判断“a 是 b 的倍数”的是()。
A、a == b * ?
B、a % b = 0
C、a / b * b == a
D、b % a == 0
*
12、如果 a 为 int 类型的变量,且 a 的值为 1,则下列表达式的值为 '3' 的是()。
A、a + 2
B、a + '2'
C、'a' + 2
D、(char)(a + '2')
*
13、在下列代码的横线处填写(),可以使得输出是“20 10”。
##include <iostream>

using namespace std;

int main() {

    int a = 10,b = 20;

    ________ // 在此处填入代码

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

    return 0;

}

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

#include <iostream>

using namespace std;

int main() {

    for (int i = 1; i <= 8; ________ ) // 在此处填入代码

        cout << i;

    return 0;

}

A、i++
B、i + 2
C、i *= 2
D、i += 2
*
15、执行以下 C++语言程序后,输出结果是()。

#include <iostream>

using namespace std;

int main() {

int sum = 0;

for (int i = 1; i <= 20; i++)

    if (20 % i == 0)

        sum += i;

    cout << sum << endl;

    return 0;

}

A、20
B、42
C、22
D、210
*
【判断题】(每题 2 分)
16、程序员用 C、C++、Python、Scratch 等编写的程序能在 CPU 直接执行。()
A、正确
B、错误
*
17、计算机系统中存储的基本单位用 B 来表示,它代表的是字节 。()
A、正确
B、错误
*
18、C++语言中,注释虽然很有用,但不能写太多,否则会拖慢程序运行速度。()
A、正确
B、错误
*
19、C++语言中,循环不能写太多层,因为层数是有限制的。()
A、正确
B、错误
*
20、5.0 是一个 int 类型常量。()
A、正确
B、错误
*
21、汉字没有对应的 ASCII 码。()
A、正确
B、错误
*
22、如果没有 break 语句,有些功能就无法实现了。()
A、正确
B、错误
*
23、使用 C++ 语言编写循环时,有可能导致无限循环。()
A、正确
B、错误
*
24、如果 a 为 int 类型的变量,且表达式(a % 2 == 0)的计算结果为假,说明 a 的值是奇数。()
A、正确
B、错误
*
25、表达式 sqrt(9) 的计算结果为 3,且结果类型为 int 类型。()
A、正确
B、错误
*

【编程题】

26、(本题 25 分)画正方形

【问题描述】

输入一个正整数,要求输出一个 n 行 n 列的正方形图案(参考样例输入输出)。

图案由大写字母组成。其中,第 1 行以大写字母'A'开头,第 2 行以大写字母'B'开头,以此类推;在每行中,第 2 列为第 1 列的

下一个字母,第 3 列为第 2 列的下一个字母,以此类推;

特别的,规定大写字母'Z'的下一个字母为大写字母'A'。

【输入描述】

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

【输出描述】

输出符合要求的正方形图案。

【样例输入 1】

3

【样例输出 1】

ABC

BCD

CDE

【样例输入 2】

5

【样例输出 2】

ABCDE

BCDEF

CDEFG

DEFGH

EFGHI

*

27、(本题 25 分)勾股数

【问题描述】

勾股数是很有趣的数学概念。如果三个正整数 a、b、c,满足 a^2 +b^2=c^2(这里^符号表示乘方),而且 1 ≤ a ≤ b ≤ c,我

们就将 a、b、c 组成的三元组(a, b, c)称为勾股数。

你能通过编程,数数有多少组勾股数,能够满足 c ≤ n 吗?

【输入描述】

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

【输出描述】

输出一行,包含一个整数 c,表示有 c 组满足条件的勾股数。

【样例输入 1】

5

【样例输出 1】

1

【样例解释 1】

满足 c≤ 5 的勾股数只有一组,即(3,4,5)。

【样例输入 2】

13

【样例输出 2】

3

【样例解释 2】

满足 c ≤ 13 的勾股数有 3 组,即(3,4,5)、(6,8,10)和(5,12,13)。

问卷星提供技术支持
举报