#QMCP0004. L2&3-期末练习-客观题

L2&3-期末练习-客观题

一、单项选择题(共25题,每题2分,共50分)

  1. 以下哪个是C++中正确的变量定义语句?( )

{{ select(1) }}

  • int 2a = 5;
  • int _score = 100;
  • float b = 3.5; int b = 4;
  • char class = 'A';
  1. 执行以下代码后,变量x的值是?( )
int x = 20 / 3 + 20 % 3;

{{ select(2) }}

  • 9
  • 8
  • 7
  • 6
  1. 已知字符'a'的ASCII码是97,那么字符'e'的ASCII码是?( )

{{ select(3) }}

  • 100
  • 101
  • 102
  • 103
  1. 以下代码的输出结果是?( )
int a = 7, b = 3;
if (a > b && b > 0)
    cout << "YES";
else
    cout << "NO";

{{ select(4) }}

  • YES
  • NO
  • 7
  • 编译错误
  1. 以下关于for循环的说法,正确的是?( )

{{ select(5) }}

  • for循环只能执行固定次数
  • for循环的三个表达式都可以省略
  • for循环中不能嵌套if语句
  • for循环不能用于递减计数
  1. 以下代码的输出结果是?( )
for (int i = 1; i <= 4; i++)
    cout << i * 2 << " ";

{{ select(6) }}

  • 1 2 3 4
  • 2 4 6 8
  • 2 4 8 16
  • 1 3 5 7
  1. 已知数组定义如下,以下哪个可以正确输出数组的第3个元素?( )
int a[5] = {10, 20, 30, 40, 50};

{{ select(7) }}

  • cout << a[3];
  • cout << a[2];
  • cout << a(3);
  • cout << a{2};
  1. 以下代码实现了什么功能?( )
int sum = 0;
for (int i = 0; i < 5; i++)
    sum += a[i];

{{ select(8) }}

  • 求数组a的前5个元素的最大值
  • 求数组a的前5个元素的和
  • 求数组a的前5个元素的最小值
  • 统计数组a中等于0的元素个数
  1. 以下关于while循环的描述,正确的是?( )

{{ select(9) }}

  • while循环至少执行一次循环体
  • while循环先判断条件,条件为真才执行循环体
  • while循环不能用于读取未知个数的数据
  • while循环中不能使用break语句
  1. 以下代码的输出结果是?( )
int n = 123;
while (n > 0) {
    cout << n % 10;
    n = n / 10;
}

{{ select(10) }}

  • 123
  • 321
  • 3 2 1
  • 编译错误
  1. 在C++中,要输出保留2位小数的浮点数,需要使用的头文件和控制符是?( )

{{ select(11) }}

  • #include <iostream> 和 setprecision
  • #include <iomanip> 和 fixed << setprecision(2)
  • #include <cmath> 和 round(2)
  • #include <cstdio> 和 printf
  1. 以下关于数组的说法,正确的是?( )

{{ select(12) }}

  • 数组元素的下标从1开始
  • 数组定义时必须初始化所有元素
  • 一维数组在内存中是连续存放的
  • 数组名代表数组中最后一个元素的地址
  1. 已知 char s[] = "ABC";,以下说法正确的是?( )

{{ select(13) }}

  • s数组的长度是3,占用3个字节
  • s数组包含字符'A'、'B'、'C'和'\0'
  • s[3]的值是'C'
  • 不能用cout << s; 输出字符串
  1. 已知 char s1[] = "Hello", s2[] = "World";,将s2复制到s1中应使用?( )

{{ select(14) }}

  • strcat(s1, s2)
  • strcpy(s1, s2)
  • strcmp(s1, s2)
  • strlen(s1, s2)
  1. 对于C++的string类型,以下操作正确的是?( )

{{ select(15) }}

  • string s = "abc"; cout << s.length();
  • string s; cin >> s.name;
  • string s = "abc"; s = s + 123;
  • string s[10] = "hello";
  1. 以下关于函数的说法,正确的是?( )

{{ select(16) }}

  • 函数必须有返回值
  • 函数的形参和实参必须同名
  • 函数定义时,形参的类型不能省略
  • 一个函数内部不能调用其他函数
  1. 以下代码中,调用add(3, 5)的返回值是?( )
int add(int a, int b) {
    return a + b;
}

{{ select(17) }}

  • 3
  • 5
  • 8
  • 15
  1. 已知结构体定义如下,以下赋值正确的是?( )
struct Student {
    string name;
    int age;
};

{{ select(18) }}

  • Student s; name = "Tom";
  • Student s = {"Tom", 18};
  • s.name = "Tom";
  • Student.name = "Tom";
  1. 以下关于嵌套循环的说法,正确的是?( )

{{ select(19) }}

  • 外层循环执行一次,内层循环执行一遍
  • 嵌套循环不能用于输出二维图形
  • 内层循环的变量可以和外层循环变量同名
  • break语句只能跳出内层循环
  1. 以下代码的输出结果是?( )
for (int i = 1; i <= 3; i++) {
    for (int j = 1; j <= i; j++)
        cout << j;
    cout << endl;
}

{{ select(20) }}

  • 1 22 333
  • 1 12 123
  • 1 2 3
  • 11 22 33
  1. 枚举算法的核心思想是?( )

{{ select(21) }}

  • 将所有可能的答案一一列举出来进行判断
  • 将问题分解为多个子问题递归求解
  • 每一步都选择当前最优的方案
  • 使用栈来存储中间结果
  1. 递归函数必须包含以下哪个要素?( )

{{ select(22) }}

  • 循环结构
  • 终止条件(递归出口)
  • 全局变量
  • 数组参数
  1. 栈(Stack)的特点是?( )

{{ select(23) }}

  • 先进先出
  • 先进后出
  • 随机存取
  • 只能存储整数
  1. 队列(Queue)的特点是?( )

{{ select(24) }}

  • 先进后出
  • 先进先出
  • 只能在头部插入元素
  • 只能存储字符
  1. 深度优先搜索(DFS)的核心策略是?( )

{{ select(25) }}

  • 从起点逐层向外扩展搜索
  • 沿着一条路径尽可能深入,走不通再回溯
  • 每次选择距离起点最近的节点
  • 枚举所有可能的路径并比较

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

  1. 变量名可以以数字开头。( )

{{ select(26) }}

  • 正确
  • 错误
  1. 表达式 10 / 3 的结果是 3。( )

{{ select(27) }}

  • 正确
  • 错误
  1. if-else if 多分支语句中,最多只有一个分支会被执行。( )

{{ select(28) }}

  • 正确
  • 错误
  1. for (int i = 0; i < 5; i++) 循环会执行5次。( )

{{ select(29) }}

  • 正确
  • 错误
  1. 数组下标从0开始,int a[5]的合法下标范围是0到4。( )

{{ select(30) }}

  • 正确
  • 错误
  1. while循环有可能一次都不执行。( )

{{ select(31) }}

  • 正确
  • 错误
  1. 函数可以没有返回值,此时返回值类型应写为void。( )

{{ select(32) }}

  • 正确
  • 错误
  1. 结构体中的成员可以是不同的数据类型。( )

{{ select(33) }}

  • 正确
  • 错误
  1. 递归函数自己调用自己,所以不需要终止条件。( )

{{ select(34) }}

  • 正确
  • 错误
  1. 栈是一种后进先出(LIFO)的数据结构。( )

{{ select(35) }}

  • 正确
  • 错误