计算机科学与程序设计基础能力测试卷

本试卷共15道单项选择题,每题5分,满分75分。请仔细阅读题目,从四个选项中选出最恰当的一个答案。考试旨在考察您对计算机基础、C++程序设计、数据结构与算法、离散数学等核心知识的掌握情况,祝您考试顺利!
*1. 一个 32 位无符号整数可以表示的最大值,最接近下列哪个选项?()
*2. 在 C++ 中,执行 int x = 255; cout << (x & (x - 1)); 后,输出的结果是?()

*3. 函数 calc(n) 的定义如下,则 calc(5) 的返回值是多少?()

*4. 用 5 个权值 10, 12, 15, 20, 25 构造哈夫曼树,该树的带权路径长度是多少?()
*5. 在一个有向图中,所有顶点的入度之和等于所有顶点的出度之和,这个总和等于?()
*6. 从 5 位男生和 4 位女生中选出 4 人组成一个学习小组,要求学习小组中男生和女生都有。有多少种不同的选法?()
*7. 假设 a, b, c 都是布尔变量,逻辑表达式 (a && b) || (!c && a) 的值与下列哪个表达式不始终相等?()
*8. 已知 f [0] = 1, f [1] = 1,并且对于所有 n ≥ 2 有 f [n] = (f [n‑1] + f [n‑2]) % 7。那么 f [2025] 的值是多少?()
*9. 下列关于 C++ string 类的说法,正确的是?()

*10. 考虑以下 C++ 函数:

在 main 函数调用 solve 后,x 和 y 的值分别是?()

*11. 一个 8×8 的棋盘,左上角坐标为 (1,1),右下角为 (8,8)。一个机器人从 (1,1) 出发,每次只能向右或向下走一格。要到达 (4,5),有多少种不同的路径?
*12. 某同学用冒泡排序对数组 {6,1,5,2,4} 进行升序排序,请问需要进行多少次元素交换?
*13. 十进制数 720 和八进制数 270 的和用十六进制表示是多少?
*14. 一棵包含 1000 个结点的完全二叉树,其叶子结点的数量是多少?
*15. 给定一个初始为空的整数栈 S 和一个空的队列 P。我们按顺序处理输入的整数队列 A: 7,5,8,3,1,4,2。对于队列 A 中的每一个数,执行以下规则:如果该数是奇数,则将其压入栈 S;如果该数是偶数,且栈 S 非空,则弹出一个栈顶元素,并加入到队列 P 的末尾;如果该数是偶数,且栈 S 为空,则不进行任何操作。当队列 A 中的所有数都处理完毕后,队列 P 的内容是什么?

阅读程序(程序输入不超过数组或字符串定义的范围;判断题正确填 A,错误填 B;除特殊说明外,判断题 1.5 分,选择题 3 分,共计 40 分)

*16. 当输入为 2 时,程序并不会执行第 16 行的判断语句。( )
*17. 将第 16 行中的 && gcd(i,k)==1 删去不会影响程序运行结果。( )
*18. (错题,请选择 B 获得分数)当输入的 n≥3 的时候,程序总是输出一个正整数。( )
*19. 将第 7 行的 gcd(b, a%b) 改为 gcd(a, a%b) 后,程序可能出现的问题是( )。
*20. 当输入为 8 的时候,输出为( )。
*21. 调用 gcd(36,42) 会返回( )。

*22. 当输入为 3 1 3 2 1 时,输出结果为 2。( )
*23. 假设输入的 n 为正整数,输出的答案一定小于等于 n,大于等于 1。( )
*24. 将第 14 行的 n = std::unique(a + 1, a + n + 1) - a - 1; 删去后,有可能出现与原本代码不同的输出结果。( )
*25. 假设输入的 a 数组和 k 均为正整数,执行第 18 行代码时,一定满足的条件不包括( )。
*26. 当输入的 n=100、k=2、a={1,2,…,100} 时,输出为( )。
*27. 假设输入的 a 数组和 k 均为正整数,但 a 数组不一定有序,则若误删去第 13 行的 std::sort(a + 1, a + n + 1);,程序有可能出现的问题有( )。

*28. 当输入 4 1 2 3 4 1 3 2 2 时,输出为 2。( )

*29. 当程序运行完毕后,对于所有的 1≤ i , j ≤n,都一定有 f[i][j]≤f[n][n]。( )

*30. 将第 18 行的 f[i][j] = std::max(f[i][j], std::max(f[i-1][j], f[i][j-1])); 删去后,并不影响程序运行结果。( )
*31. 输出的答案满足的性质有( )。

*32. 如果在 16 行的循环前加上以下两行:

std::sort(a+1, a+n+1);  
std::sort(b+1, b+n+1);

则答案会( )。

*33. 请选择一个选项