#1312. GESP-C++二级(2023-03)

GESP-C++二级(2023-03)

CCF GESP C++ 二级 (2023 年 03 月)

一、单选题(每题 2 分,共 30 分)

1. 以下存储器中的数据不会受到附近强磁场干扰的是 ( )。

{{ select(1) }}

  • 硬盘
  • U 盘
  • 内存
  • 光盘

2. 下列流程图,属于计算机的哪种程序结构?( )。

{{ select(2) }} 开始 是否按下空格键 小猫移动 100 步 结束

  • 顺序结构
  • 循环结构
  • 分支结构
  • 数据结构

3. 下列关于 C++ 语言的叙述,不正确的是 ()。

{{ select(3) }}

  • double 类型的变量占用内存的大小是浮动的
  • bool 类型的变量占用 1 字节内存
  • int 类型变量的取值范围不是无限的
  • char 类型的变量有 256 种取值

4. 下列关于 C++ 语言的叙述,不正确的是 ()。

{{ select(4) }}

  • 变量定义后,可以使用赋值语句改变它的值
  • 变量定义时,必须指定类型
  • 变量名必须为合法标识符
  • 合法标识符可以以数字开始

5. 以下哪个不是 C++ 语言的关键字?

{{ select(5) }}

  • return
  • max
  • else
  • case

6. 以下哪个不是 C++ 语言的运算符?

{{ select(6) }}

  • =
  • /=
  • -=
  • !=

7. 如果 a 和 b 都是 char 类型的变量,下列哪个语句不符合 C++ 语法?

{{ select(7) }}

  • b=a+1;
  • b=a+'1';
  • b='a'++;
  • b=a++;

8. 如果 a、b、c 和 d 都是 int 类型的变量,则下列哪个表达式能够正确计算它们的平均值?

{{ select(8) }}

  • (a+b+c+d) / 4
  • (a+b+c+d) % 4
  • (a+b+c+d) / 4.0
  • (a+b+c+d) % 4.0

9. 如果 a 为 char 类型的变量,且 a 的值为 '2',则下列哪条语句执行后,a 的值不会变为 '3'?

{{ select(9) }}

  • a=a+1;
  • a+1;
  • a=1+a;
  • ++a;

10. 如果 a 为 int 类型的变量,且 a 的值为 9,则执行 a-=3; 之后,a 的值会是 ()。

{{ select(10) }}

  • 3
  • 6
  • 9
  • 12

11. 如果 a 和 b 均为 int 类型的变量,下列表达式能正确判断 “a 等于 0 或 b 等于 0” 的是 ()

{{ select(11) }}

  • (!a) || (!b)
  • (a == b == 0)
  • (a == 0) && (b == 0)
  • (a == 0)-(b == 0) == 0

12. 如果 a 为 char 类型的变量,下列哪个表达式可以正确判断 “a 是小写字母”?

{{ select(12) }}

  • a <=a<=z
  • a - 'a' <='z' - 'a'
  • 'a' <=a<='z'
  • 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;
}

{{ select(13) }}

  • a -= b
  • a += b
  • a = b - a
  • 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;
}

{{ select(14) }}

  • ch <'5'
  • ch>= 5
  • ch >= '4'
  • 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;
}

{{ select(15) }}

  • false
  • true
  • 0
  • 1

二、判断题(每题 2 分,共 20 分)

16. 明明和笑笑在 “小庙会” 上分别抽到一个 4GB 和 4096MB 的 U 盘,容量大的盘是笑笑的 ( )。

{{ select(16) }}

17. IPv4 的地址通常用 “点分十进制” 的表示形式,形如 (a.b.c.d),其中 a、b、c、d 都是 1~255 之间的十进制整数 ( )。

{{ select(17) }}

18. 在 C++ 语言中,一个程序不能有多个 main 函数。

{{ select(18) }}

19. 在 C++ 语言中,标识符中可以有下划线_,但不能以下划线_开头。

{{ select(19) }}

20. 如果 a 是 int 类型的变量,而且值为 1,则表达式 'a' 的值为 '1'。

{{ select(20) }}

21. 在 if...else 语句中,else 子句可以嵌套 if...else 语句,但 if 子句不可以,因为会造成二义性。

{{ select(21) }}

22. while 语句的循环体至少会执行一次。

{{ select(22) }}

23. C++ 语言中 >= 是运算符,但 => 不是。

{{ select(23) }}

24. 如果 a 为 char 类型的变量,且取值为小写字母,则执行语句 a = a - 'a' + 'A'; 后,a 的值会变为与原值对应的大写字母。

{{ select(24) }}

25. 10. 表达式 (10.0 / 2) 的计算结果为 5.0,且结果类型为 double。

{{ select(25) }}