news 2026/6/12 21:35:14

CSP月测试卷三

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
CSP月测试卷三

一、选择题(共15题,每题4分,满分60分)

请将正确答案的序号填入答题栏,多选、错选、不选均不得分。

1、已知某二叉树的前序序列为ABCDEF,中序序列为BADCFE,则其后序序列为()

A. BDFECA B. BDFCEA C. BDFEAC D. BDFEAC

2、二叉树中,节点的“度”是指()

A. 该节点的子节点数量 B. 该节点的高度 C. 该节点所在层数 D. 树的总节点数

3、若栈的输入序列为2,4,6,8,10,则不可能的输出序列是()

A. 4,2,6,8,10 B. 10,8,6,4,2 C. 6,4,2,10,8 D. 2,8,4,6,10

4、执行栈操作:push(1)、push(2)、pop()、push(3)、push(4)、pop(),最终栈顶元素是()

A. 1 B. 3 C. 4 D. 栈空

5、将十进制数37转换为二进制数,结果为()

A. 100101 B. 101001 C. 100111 D. 110001

6、十六进制数5E转换为十进制数是()

A. 86 B. 94 C. 102 D. 110

7、若有向图中有n个顶点,要保证图是强连通的,最少需要的边数是()

A. n B. n+1 C. n(n-1) D. 2n

8、有向图中,所有顶点的入度之和与出度之和的关系是()

A. 入度之和大于出度之和 B. 入度之和小于出度之和 C. 相等 D. 无固定关系

9、从6个不同元素中选4个元素进行排列,排列数为()

A. 30 B. 60 C. 120 D. 360

10、从8个不同元素中选3个元素进行组合,组合数为()

A. 24 B. 56 C. 112 D. 336

11、以下关于C++中char类型的描述,正确的是()

A. char类型一定占1个字节 B. char只能存储字母 C. char的取值范围是0~255 D. char是无符号类型

12、若short类型占2个字节,则其能表示的最大整数是()

A. 215 B. 215-1 C. 216 D. 216-1

13、已知某二叉树的后序序列为DCBGFEA,中序序列为DCBAEFG,则其前序序列为()

A. ABCDEFG B. ADEFGBC C. ABDECFG D. AEDCBFG

14、进制转换中,将十六进制数4B转换为八进制数,结果为()

A. 113 B. 123 C. 133 D. 143

15、有4个元素a,b,c,d,入栈顺序为a→b→c→d,则可能的出栈顺序有()种

A. 8 B. 14 C. 20 D. 24

二、程序阅读题(共3题,满分40分)

请阅读下列C++程序,根据程序功能和逻辑,完成每题的判断和选择(判断题选A为正确,B为错误;选择题唯一正确答案)。

题1(13分)

阅读以下C++程序,回答问题:

#include <iostream> #include <string> using namespace std; int main() { string s = "xY123zA45"; string res; for (int i = 0; i < s.size(); i++) { if (s[i] >= 'A' && s[i] <= 'Z') { res += s[i] + 32; } else if (s[i] >= 'a' && s[i] <= 'z') { res += s[i]; } else if (s[i] >= '0' && s[i] <= '9') { continue; } } cout << "处理结果:" << res << endl; return 0; }

1、判断题:程序中continue的作用是跳过当前循环的剩余语句,进入下一次循环()(3分)

A. 正确 B. 错误

2、判断题:代码s[i] + 32的作用是将小写字母转换为大写字母()(3分)

A. 正确 B. 错误

3、该程序的功能是()(3分)

A. 保留小写字母,将大写字母转小写,删除数字

B. 保留大写字母,将小写字母转大写,删除数字

C. 保留数字,删除所有字母

D. 保留所有字符,仅转换字母大小写

4、程序的输出结果是()(4分)

A. xY123zA45 B. xyza C. xYza D. 12345

题2(14分)

阅读以下C++程序,回答问题:

#include <iostream> #include <string> using namespace std; // 查找子串在原串中首次出现的位置(从pos开始) int findFirst(string str, string sub, int pos) { return str.find(sub, pos); } int main() { string s = "test1test2test3"; string sub = "test"; int cnt = 0; int pos = 0; while (true) { pos = findFirst(s, sub, pos); if (pos == string::npos) { break; } cnt++; pos += sub.size(); } cout << cnt << endl; return 0; }

1、判断题:string::npos表示“未找到子串”()(3分)

A. 正确 B. 错误

2、判断题:循环中pos += sub.size()的作用是避免重复查找同一子串()(4分)

A. 正确 B. 错误

3、该程序的功能是()(3分)

A. 计算原串的长度 B. 计算子串的长度

C. 统计子串在原串中不重叠出现的次数 D. 拼接原串和子串

4、程序的输出结果是()(4分)

A. 1 B. 2 C. 3 D. 4

题3(13分)

阅读以下C++程序,回答问题:

#include <iostream> #include <cstring> using namespace std; // 字符数组逆序 void reverseArray(char arr[], int len) { int left = 0; int right = len - 1; while (left < right) { // 交换arr[left]和arr[right] char temp = arr[left]; arr[left] = arr[right]; arr[right] = temp; left++; right--; } } int main() { char str[] = "csp2025"; int length = strlen(str); reverseArray(str, length); cout << str << endl; return 0; }

1、判断题:strlen(str)的作用是获取字符数组的长度(包含结束符'\0')()(3分)

A. 正确 B. 错误

2、判断题:该程序的时间复杂度是O(1)(n为字符数组长度)()(3分)

A. 正确 B. 错误

3、该程序的功能是()(3分)

A. 复制字符数组 B. 逆序字符数组

C. 截取字符数组前半部分 D. 拼接两个字符数组

4、程序的输出结果是()(4分)

A. csp2025 B. 5202psc C. psc2025 D. 2025csp

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/12 13:57:06

为什么顶尖科技公司都在用Open-AutoGLM生成会议纪要?真相曝光

第一章&#xff1a;为什么顶尖科技公司都在用Open-AutoGLM生成会议纪要&#xff1f;在快节奏的科技企业环境中&#xff0c;高效沟通与信息留存至关重要。Open-AutoGLM 作为一款基于开源大语言模型的自动化会议纪要生成工具&#xff0c;正被 Google、Meta、阿里云等领先企业广泛…

作者头像 李华
网站建设 2026/6/12 2:33:10

还在手动查体检报告?Open-AutoGLM自动查询方案来了,效率提升90%!

第一章&#xff1a;Open-AutoGLM 体检报告查询Open-AutoGLM 是一个基于开源大语言模型的智能健康数据解析系统&#xff0c;专为自动化处理和理解个人体检报告而设计。该系统能够从非结构化的体检文本中提取关键指标&#xff0c;如血压、血糖、胆固醇等&#xff0c;并生成可视化…

作者头像 李华
网站建设 2026/6/13 13:04:36

主流单片机扩展接口功能深度对比解析

在单片机开发中&#xff0c;引脚资源和功能接口是不少工程师的瓶颈&#xff0c;面对UART、I2C、SPI等多种扩展方式&#xff0c;选对核心接口是提升效率、控制成本的关键&#xff0c;本文将针对主流单片机&#xff0c;给出建议&#xff0c;以供小伙伴们参考。1、按应用场景定方案…

作者头像 李华
网站建设 2026/6/10 16:06:53

Open-AutoGLM如何颠覆传统挂号模式:3大核心技术首次公开

第一章&#xff1a;Open-AutoGLM如何颠覆传统挂号模式&#xff1a;3大核心技术首次公开在医疗信息化快速演进的今天&#xff0c;Open-AutoGLM 正以革命性方式重构传统挂号流程。该系统融合自然语言理解、智能调度与去中心化架构&#xff0c;实现患者需求与医疗资源的毫秒级精准…

作者头像 李华
网站建设 2026/6/12 21:43:12

HR和IT都该看的自动化革命:Open-AutoGLM在社保查询中的真实应用案例

第一章&#xff1a;自动化革命下的HR与IT协同新范式在数字化转型加速的背景下&#xff0c;人力资源&#xff08;HR&#xff09;与信息技术&#xff08;IT&#xff09;部门之间的传统壁垒正被自动化工具逐步瓦解。两者的协同不再局限于系统维护或权限分配&#xff0c;而是深入到…

作者头像 李华