#GESP202512C3T1. 单选题(每题 2 分,共 30 分)

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

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

第 1 题 请将二进制数 (1101.101)₂ 转换为等值的 10 进制数( )。

{{ select(1) }}

  • 14.25
  • 13.625
  • 13.5
  • 14.5

第 2 题 以下关于标准 C++ 一维数组的描述,哪一项是错误的?( )

{{ select(2) }}

  • 数组的下标从 0 开始
  • 数组在内存中是连续存放的
  • 数组的长度只能在运行时才能确定
  • 可以在程序中修改数组某个元素的值

第 3 题 下列代码段执行后,变量 sum 的值是( )。

{
  int sum = 0;
  for (int i = 1; i <= 10; i++) {
      if (i % 3 == 0) continue;
      sum += i;
}

{{ select(3) }}

  • 12
  • 17
  • 33
  • 40

第 4 题 执行以下程序段,输出值是( )。

int x = 5;
if (x = 3 >> 2) x = 8 >> 3;
cout << x << endl;

{{ select(4) }}

  • 0
  • 5
  • 120
  • 1

第 5 题 已知字符串 s = "C++ Programming",下列程序运行的结果是( )。

cout << (int)(s.length() | 3) << endl;

{{ select(5) }}

  • 14
  • 15
  • 16
  • 17

第 6 题 以下代码是一个程序的部分代码,能够正确执行,输出的结果是( )。

int arr[5] = {1, 2, 3, 4, 5};
int p = arr[1];
cout << (p + 2) << endl;

{{ select(6) }}

  • 1
  • 2
  • 3
  • 4

第 7 题 以下关于 C++ 求最小值函数 min() 的描述,不正确的是( )。

{{ select(7) }}

  • 函数必须返回一个值
  • 该函数可以嵌套调用
  • 调用 min(5) 是错误的,不能通过编译
  • 调用 min()(不传任何参数)可以通过编译,结果为 0

第 8 题 在一个特定的计算机系统中,假如 unsigned int 类型需要占用 2 个字节的存储空间(每个字节有 8 位),则 unsigned int 可以表示的数据范围是( )。

{{ select(8) }}

  • 0 ~ 65535
  • 0 ~ 65536
  • -65536 ~ 65535
  • 0 ~ 32767

第 9 题 以下代码执行后,数组 arr 的内容是( )。

int arr[6] = {1, 2, 3, 4, 5, 6};
for (int i = 0; i < 6; i += 2) {
    arr[i] = arr[i] + arr[i+1];
    arr[i+1] = arr[i] - arr[i+1];
    arr[i] = arr[i] - arr[i+1];
}

{{ select(9) }}

  • {2, 1, 4, 3, 6, 5}
  • {1, 2, 3, 4, 5, 6}
  • {3, 1, 4, 2, 5, 3}
  • {1, 3, 2, 5, 4, 6}

第 10 题 a & b | (c ^ d),其中 a = 3b = 7c = 15d = 4,计算结果是( )。

{{ select(10) }}

  • 十进制 11
  • 二进制 11
  • 八进制 11
  • 十六进制 11

第 11 题 整型变量 x 的初始值为 10,以下代码的输出结果是( )。

int t = x--;
t -= x;
cout << t << endl;

{{ select(11) }}

  • 0
  • -1
  • 1
  • 死循环

第 12 题 根据下面的流程图,如果成绩 score 输入 60,输出的结果是( )。

{{ select(12) }}

  • 优秀
  • 及格
  • 不及格
  • 没有输出

第 13 题 以下代码运行后,sum 的结果是( )。

int arr[5] = {2, 4, 6, 8, 10};
int sum = 0;
for (int i = 0; i < 5; i++) {
    switch (arr[i] % 2) {
        case 0: sum += 1; break;
        case 1: sum += 2; break;
        case 2: sum += 3; break;
    }
}

{{ select(13) }}

  • 10
  • 11
  • 14
  • 15

第 14 题 以下关于 C++ 中 abs() 函数的描述,正确的是( )。

{{ select(14) }}

  • abs() 函数可用于计算 int 类型整数的绝对值,头文件为 <cmath><cstdlib>
  • 调用 abs(3.14) 可以四舍五入得到 3
  • abs(-1, -2) 的返回值是 1
  • 若传入负数浮点数,abs() 会自动截断小数部分后返回整数绝对值

第 15 题 如果字符串 s 的值是 "GESP",以下代码 s 的最后结果是( )。

for (int i = 0; i < s.length(); i++) {
    s[i] = toupper(s[i] + i);
}

{{ select(15) }}

  • GESP
  • HFTR
  • hesp
  • GFUS