GESP C++编程等级认证一级模拟试卷2


*
您的姓名:
*
【单选题】(每题 2 分)
1、计算机病毒正确的是?( )
A、通过计算机传播的危害人体健康的一种病毒
B、人为制造的能够侵入计算机系统并给计算机带来故障的程序或指令集合
C、一种由于计算机元器件老化而产生的对生态环境有害的物质
D、利用计算机的海量高速运算能力而研制出来的用于疾病预防的新型病毒
*
2、以下奖项与计算机领域最相关的是?( )
A、奥斯卡奖
B、图灵奖
C、诺贝尔奖
D、普利策奖
*
3、提出“存储程序”的计算机工作原理的是?( )
A、冯•诺依曼
B、克劳德•香农
C、戈登•摩尔
D、查尔斯·巴比奇
*
4、下列叙述中正确的是?( )
A、C 程序中的注释只能出现在程序的开始位置和语句的后面
B、C 程序书写格式严格,要求一行内只能写一个语句
C、C 程序书写格式自由,一个语句可以写在多行上
D、用 C 语言编写的程序只能放在一个程序文件中
*
5、不可以作为 C++标识符的是?( )
A、Printf
B、_123
C、While
D、int
*
6、常量 3.14 的数据类型是?( )
A、double
B、float
C、void
D、int
*
7、如果 x 和 y 均为 int 类型的变量, 且 x 的值为 1,y 的值为 2,则下列哪个表达式的结果为 true?( )
A、(x + y > 7) && (x - y < 1)
B、!(x + y)
C、(x > y - 1) || x
D、x && (!y)
*
8、以下不是存储设备的是?( )
A、光盘
B、磁盘
C、固态硬盘
D、鼠标
*
9、如果输入数据为 99 和 100,下列代码的输出结果为?( )

#include<iostream>

using namespace std;

int main() {

    int a, b;

    cin >> a >> b;

    a = a + b;

    b = a - b;

    a = a - b;

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

    return 0;

}

A、99 100
B、99 99
C、100 100
D、100 99
*
10、如果 a 为 int 类型的变量, 且 a 的值为奇数, 则下列哪个表达式的结果一定为 false?( )
A、a % 2 == 1
B、!(a % 2 == 0)
C、!(a % 2)
D、a % 2
*
11、下列表达式能够正确判断“a 不等于 0 且 b 不等于 0”的是?( )
A、!a == 0 || !b == 0
B、!((a == 0) && (b == 0))
C、!(a == 0 && b == 0)
D、a && b
*
12、若 a、b、c、d 均为 int 类型的变量,并且初值均为 0,以下不是正确的赋值语句是?( )
A、a = b = c = d = 100;
B、d++;
C、c + b;
D、d = (c = 22) - (b++);
*
13、以下不属于操作系统的是?( )
A、Windows
B、photoshop
C、Linux
D、Mac OS
*
14、下列不属于面向对象编程语言的是?( )
A、C
B、C++
C、JAVA
D、Python
*
15、A、B、C 是三个 int 类型的变量,如果已知表达式(A >= B && B >= C)的结果为 true,则表达式(A > C || B == C)的结果(  )
A、为 true
B、为 false
C、无法判定结果
D、当 A、B、C 都相等时为 true,否则为 false
*
【判断题】(每题 2 分)
16、下列代码会输出 50 个 1。( )
for (int i = 1; i <= 100; i *= 2) {
    cout << 1;
}
A、正确
B、错误
*
17、第一台现代电子计算机是 ENIGMA。( )
A、正确
B、错误
*
18、只要计算机不连接互联网,就不可能感染计算机病毒。( )
A、正确
B、错误
*
19、C++程序中必须要有 main 函数。( )
A、正确
B、错误
*
20、在 if...else... 语句中,配对规则是 else 总是与最近的未配对的 if 配对。( )
A、正确
B、错误
*
21、在 while 语句中, while 后的()中的表达式只能是逻辑或者关系表达式。( )
A、正确
B、错误
*
22、"A"是一个字符常量。( )
A、正确
B、错误
*
23、for 语句的语法为:for (表达式 1; 表达式 2; 表达式 3) 语句。其中的三个表达式均可以为空。( )
A、正确
B、错误
*
24、常量是在整个程序运行过程中不能改变的量。( )
A、正确
B、错误
*
25、C++中, while 和 do...while 语句的功能完全相同。( )
A、正确
B、错误
*

【编程题】

26、(本题 25 分)计算邮资

【问题描述】

快递行业为现在的社会提供了极大的方便,促进了社会的极大发展,那当我们自己需要邮寄一些东西的时候,就需要知道邮费的计

算规则才行,邮费是根据邮件的重量和用户是否选择加急计算的。

计算规则如下:

重量在 1000 克以内(包含 1000 克),基本费 8 元;

超过 1000 克的部分,每 500 克加收超重费 4 元,不足 500 克部分按 500 克计算;

如果用户选择加急,多收 5 元。

【输入描述】

输入一行,包含整数和一个字符,以一个空格分开,分别表示重量(单位为克)和是否加急。

如果字符是 y,表示选择加急;如果字符是 n,表示不加急。

【输出描述】

一行,包含一个整数,表示邮费。

【样例输入】

1200 y

【样例输出】

17

*

27、(本题 25 分)水仙花数

【问题描述】

今天小明在看书的时候发现了一个非常有意思的名字——水仙花数。水仙花本来是一种花啊,怎么又成为一种数了呢?好奇心驱使

之下,小明上网搜索了一下。

原来,水仙花数又称阿姆斯特朗数,也被称为超完全数字不变数。如果一个三位数,它的每个数位上的数字的 3 次幂之和等于它

本身,那么这个三位数就是一个水仙花数。

例如:153 = 1^3 + 5^3 + 3^3。

现在,请你判断一个数是不是水仙花数。

【输入描述】

输入为一行,包含三个数字 a、b、c。约定 0 ≤ a,b,c ≤ 9,a ≠ 0。

【输出描述】

如果 a、b、c 组成的三位数 abc 是一个水仙花数,则输出 Yes,否则输出 No。

【样例输入 1】

1 5 3

【样例输出 1】

Yes

【样例输入 2】

1 0 0

【样例输出 2】

No

问卷星提供技术支持
举报