2026年计算机技术与软件专业技术资格(水平)考试编程冲刺卷_第1页
2026年计算机技术与软件专业技术资格(水平)考试编程冲刺卷_第2页
2026年计算机技术与软件专业技术资格(水平)考试编程冲刺卷_第3页
2026年计算机技术与软件专业技术资格(水平)考试编程冲刺卷_第4页
2026年计算机技术与软件专业技术资格(水平)考试编程冲刺卷_第5页
已阅读5页,还剩23页未读, 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2026年计算机技术与软件专业技术资格(水平)考试编程冲刺卷考试时间:______分钟总分:______分姓名:______一、单项选择题(共75题,每题1分。第1~75题中,第1~70题为单选题,第71~75题为多选题)1.在计算机系统中,若用补码表示有符号整数,则十六进制数0x9A对应的十进制数是A.-154B.-101C.154D.1012.若一个浮点数F=(1.1001)×2^3,其阶码为3,尾数为1.1001,则该浮点数在IEEE754单精度标准下,其符号位、阶码和尾数分别为A.0,10000010,10010000000000000000000B.0,10000011,10010000000000000000000C.1,10000010,10010000000000000000000D.1,10000011,100100000000000000000003.某计算机的指令周期由取指、间址、执行和中断四个阶段组成。若每个阶段平均需要2个时钟周期,且中断响应需要额外占用1个时钟周期,则执行一条指令至少需要A.8个时钟周期B.9个时钟周期C.10个时钟周期D.11个时钟周期4.在总线仲裁中,链式查询方式的主要优点是A.对电路故障敏感B.容易扩展总线数量C.结构简单,易于扩充D.对响应速度要求高5.在Cache-主存存储层次中,采用组相联映射时,若Cache总容量为64KB,每块大小为64B,主存地址为32位,且Cache分为16组,则主存地址中标记域的位数至少为A.16位B.18位C.20位D.22位6.在操作系统中,进程从运行状态转换为阻塞状态,可能是由以下哪种事件引起的A.时间片到B.进程调度程序进行调度C.在运行过程中等待某个事件发生D.被高优先级的进程抢占处理机7.设系统中有三个并发进程P1、P2、P3,共享一个初值为1的互斥锁S,进程执行流程如下:P1:wait(S);P2:wait(S);P3:wait(S);...;signal(S);...;signal(S);...;signal(S);若系统发生死锁,则发生死锁的进程个数和原因分别是A.3个,循环等待B.3个,资源不足C.2个,互斥使用D.2个,请求与保持8.在文件系统中,采用索引节点(Inode)是为了解决A.目录查找效率低的问题B.文件共享的问题C.文件长度的表示问题D.文件命名冲突的问题9.下列算法中,不属于动态规划算法的是A.求解最长公共子序列问题B.求解背包问题C.求解二叉树的前序遍历D.求解矩阵连乘问题10.设有字符串S="datastructure",则其子串"str"出现的次数为A.1B.2C.3D.411.一个有序序列(1,2,3,4,5,6,7,8,9,10),利用二分查找算法查找元素8,则比较次数为A.3B.4C.5D.612.在哈希函数H(k)=kmod11中,关键字序列{22,42,13,52,33,07}的哈希地址序列为A.0,9,2,8,0,7B.0,9,2,8,0,7C.0,9,2,8,0,7D.0,9,2,8,0,713.对于一棵完全二叉树,若其节点数为n,则其深度为A.⌊log₂n⌋B.⌊log₂n⌋+1C.⌈log₂(n+1)⌉D.⌈log₂n⌉14.下列关于图的遍历,说法错误的是A.深度优先搜索DFS可以使用递归或栈实现B.广度优先搜索BFS可以使用队列实现C.从图的任意一个顶点出发,DFS可能无法访问到所有顶点D.从图的任意一个顶点出发,BFS一定可以访问到所有顶点15.在下列排序算法中,平均时间复杂度最低的是A.冒泡排序B.选择排序C.快速排序D.归并排序16.以下关于快速排序的描述,正确的是A.快速排序是稳定的排序算法B.快速排序的最坏时间复杂度为O(n²)C.快速排序在数据基本有序时效率最高D.快速排序不需要额外的存储空间17.设有一个栈S,入栈序列为1,2,3,4,5,则以下不可能得到的出栈序列是A.1,2,3,4,5B.5,4,3,2,1C.4,5,3,2,1D.2,4,1,3,518.下列数据结构中,不是线性结构的是A.循环队列B.带权树C.双链表D.栈19.在关系代数中,5种基本运算不包括A.并(∪)B.差(-)C.笛卡尔积(×)D.连接(⨝)20.设关系R(A,B,C)和S(B,C,D),若R.S={A,B,C,D},则R与S的自然连接结果中,元组的个数为A.R中元组的个数B.S中元组的个数C.R中元组数与S中元组数的乘积D.R中元组数与S中元组数的最大公约数21.SQL语句“SELECTDISTINCTAFROMR”的功能是A.查询属性A的值B.查询关系R中属性A的所有值,且不重复C.查询关系R中属性A为空的元组D.查询关系R中属性A的全部值22.在关系数据库规范化理论中,消除多值依赖引起的冗余和异常,通常达到的范式是A.1NFB.2NFC.3NFD.BCNF23.设事务T执行以下操作:BEGINTRANSACTIONUPDATEAccountSETBalance=Balance+100WHEREID=1;UPDATEAccountSETBalance=Balance-100WHEREID=2;COMMIT;若T执行期间发生故障,未执行COMMIT,则以下说法正确的是A.两个更新操作均被撤销B.第一个更新操作被撤销,第二个被保留C.两个更新操作均被保留D.系统崩溃,数据状态不确定24.下列关于事务隔离级别的描述,正确的是A.READUNCOMMITTED可以避免脏读B.READCOMMITTED可以避免不可重复读C.REPEATABLEREAD可以避免幻读D.SERIALIZABLE可以避免丢失更新25.在数据库恢复技术中,UNDO日志主要用于实现A.恢复故障前未提交的事务B.恢复故障后已提交的事务C.保障事务的原子性D.保障事务的隔离性26.下列关于TCP协议的描述,错误的是A.TCP是面向连接的协议B.TCP提供全双工通信C.TCP报文头部的序列号字段用于保证数据按序到达D.TCP使用固定大小的窗口进行流量控制27.在OSI七层模型中,负责将比特流转换为帧的是A.物理层B.数据链路层C.网络层D.传输层28.IP地址28属于A.A类地址B.B类地址C.C类地址D.D类地址29.若子网掩码为,则下列IP地址中属于同一子网的是A.和B.28和55C.28和D.和5530.在HTTP协议中,状态码200表示A.请求成功B.请求重定向C.服务器内部错误D.请求参数错误31.下列关于HTTPS的描述,正确的是A.HTTPS使用TCP协议进行传输B.HTTPS在应用层进行加密C.HTTPS通过SSL/TLS协议提供安全通信D.HTTPS无法防止中间人攻击32.在DNS系统中,根域名服务器的作用是A.管理顶级域名B.管理子域名C.指向顶级域名服务器D.直接管理域名解析33.下列网络攻击中,不需要攻击者具有目标主机的合法账号密码的是A.暴力破解B.网络钓鱼C.中间人攻击D.社会工程学34.数字签名技术主要用于解决A.数据的保密性B.数据的完整性C.交易者的身份认证D.B和C35.在网络管理中,SNMP协议工作在A.应用层B.表示层C.会话层D.网络层36.下列关于软件生命周期的描述,正确的是A.软件维护阶段的工作量最小B.需求分析阶段主要解决“做什么”的问题C.测试阶段可以保证软件没有错误D.编码阶段的工作量最大37.在敏捷开发中,Scrum框架不包括A.Sprint(冲刺)B.ProductBacklog(产品待办列表)C.DailyScrum(每日站会)D.Waterfall(瀑布模型)38.下列设计模式中,属于创建型模式的是A.适配器模式B.工厂模式C.观察者模式D.策略模式39.在UML类图中,表示“泛化”关系的箭头是A.实线带空心三角B.实线带实心三角C.虚线带空心三角D.虚线带实心三角40.某软件项目的功能点估算结果为1000个功能点,平均生产率为50功能点/人天,预计工期为20人天,则规模因子OF为A.1.0B.1.1C.1.2D.1.341.软件质量模型中,将质量特性分为外部和内部两个层次,其中外部质量是指A.在开发和维护过程中使用的特性B.在产品中可见的特性C.在产品中不可见的特性D.用户在使用过程中感受到的特性42.下列关于软件测试的描述,正确的是A.单元测试主要测试模块接口B.集成测试主要测试单个模块内部的逻辑C.系统测试不需要运行程序D.验收测试通常由开发人员完成43.在软件配置管理中,用于标识变更的基线是A.开发基线B.管理基线C.产品基线D.变更基线44.以下关于知识产权的描述,错误的是A.计算机软件著作权保护的是代码本身B.发明专利权的保护期限为20年C.商标权保护的是商业标识D.著作权自作品创作完成之日起产生45.在软件项目管理中,用于跟踪项目进度的图形化工具是A.GanttChart(甘特图)B.Flowchart(流程图)C.DataFlowDiagram(数据流图)D.Entity-RelationshipDiagram(E-R图)46.下列关于数据仓库的描述,正确的是A.数据仓库的数据是高度结构化的B.数据仓库的数据更新频率很高C.数据仓库的数据面向操作型处理D.数据仓库的数据通常集成多个源数据47.数据挖掘的主要任务不包括A.分类B.聚类C.回归D.排序48.在云计算IaaS模式下,用户无法获得的服务是A.基础设施B.平台C.应用D.存储空间49.微服务架构的主要优点不包括A.技术栈灵活B.易于部署和扩展C.单体应用易于理解和维护D.团队自治50.下列关于区块链的描述,正确的是A.区块链上的数据是可篡改的B.区块链具有去中心化、不可篡改、可追溯的特点C.区块链只能用于数字货币D.智能合约在链下执行51.人工智能中,机器学习可以分为监督学习、无监督学习和强化学习。下列属于监督学习的是A.聚类分析B.异常检测C.回归分析D.无监督降维52.自然语言处理(NLP)的主要挑战不包括A.歧义性B.上下文理解C.数据隐私D.语法结构53.在多媒体技术中,JPEG标准主要针对的是A.音频数据压缩B.图像数据压缩C.视频数据压缩D.文本数据压缩54.下列关于操作系统进程与线程的描述,正确的是A.进程是资源分配的基本单位,线程是调度执行的基本单位B.线程是资源分配的基本单位,进程是调度执行的基本单位C.进程和线程都可以独立调度D.一个进程只能包含一个线程55.在Linux系统中,一个进程结束后,其父进程可以通过系统调用wait()来A.终止父进程B.获取子进程的退出状态C.创建新的进程D.将子进程转换为孤儿进程56.在关系数据库中,为了提高查询效率,通常会在经常查询的列上建立A.视图B.索引C.触发器D.存储过程57.在C语言中,若定义inta[5];int*p=a;则p+1表示A.a[1]的地址B.a[2]的地址C.a[0]的地址D.指向数组的指针58.在Java中,String类是不可变的(immutable),这主要为了A.提高字符串拼接效率B.保证线程安全C.方便内存管理D.简化语法59.下列关于面向对象编程的描述,错误的是A.继承实现了代码复用B.封装隐藏了对象的内部实现细节C.多态允许不同对象对同一消息做出不同响应D.继承是多态的基础60.设计模式中,单例模式确保一个类只有一个实例,并提供一个访问它的全局访问点。以下哪种情况不属于单例模式的应用A.数据库连接池B.日志记录器C.打印机驱动程序D.配置管理器61.在TCP/IP协议栈中,ARP协议的作用是A.将IP地址解析为MAC地址B.将MAC地址解析为IP地址C.域名解析D.路由选择62.在HTTP/1.1协议中,Keep-Alive机制的主要作用是A.增加传输速度B.减少TCP连接建立的开销C.保证数据完整性D.防止HTTP劫持63.下列关于软件测试的描述,错误的是A.测试是为了发现错误而执行程序的过程B.完善的测试可以证明程序没有错误C.测试应该尽早介入D.测试只能由开发人员完成64.在软件需求分析阶段,常用的工具是A.DFD(数据流图)B.ER图(实体联系图)C.PAD图(问题分析图)D.NS图(盒图)65.软件配置管理(SCM)的主要目的是A.管理软件项目的进度B.控制软件变更C.编写软件代码D.设计软件架构66.下列关于版本控制的描述,正确的是A.版本控制只能管理文本文件B.Git是集中式版本控制系统C.版本控制可以记录文件的变更历史D.SVN是分布式版本控制系统67.在敏捷开发中,每日站会通常持续A.15分钟以内B.30分钟以内C.1小时以上D.2小时以上68.在软件测试中,黑盒测试主要依据的是A.程序内部逻辑B.需求规格说明书C.源代码D.数据流图69.下列关于软件质量保证(SQA)的描述,正确的是A.SQA由开发人员独立完成B.SQA活动由质量保证部门负责C.SQA只关注测试结果D.SQA在软件测试阶段才开始介入70.在网络攻击中,SQL注入攻击属于A.系统漏洞攻击B.逻辑漏洞攻击C.物理攻击D.病毒攻击71.下列哪些属于面向对象设计原则?(多选)A.单一职责原则B.魔法数字原则C.依赖倒置原则D.饱和原则72.下列哪些算法是稳定的排序算法?(多选)A.归并排序B.冒泡排序C.快速排序D.插入排序73.下列哪些操作会导致数据库事务的隔离级别发生变化?(多选)A.执行SETTRANSACTIONISOLATIONLEVELB.执行SAVEPOINTC.执行COMMITD.执行ROLLBACK74.下列哪些属于TCP协议的特性?(多选)A.面向连接B.面向非连接C.可靠传输D.无连接75.下列哪些属于软件需求分析阶段产生的文档?(多选)A.需求规格说明书(SRS)B.系统设计说明书C.用户手册(初稿)D.测试计划二、应用技术(共5题,共45分。请阅读以下说明,根据要求回答问题1至问题5)【问题1】(共10分)阅读下列C/C++代码,将缺失的代码补充完整,使程序的功能正确。```c#include<stdio.h>#include<stdlib.h>typedefstructNode{intdata;structNode*next;}Node,*LinkList;//初始化链表voidInitList(LinkList*L){*L=(LinkList)malloc(sizeof(Node));(*L)->next=NULL;}//在第i个位置插入元素eintListInsert(LinkListL,inti,inte){intj;Node*p=L;for(j=0;p->next!=NULL&&j<i-1;j++){p=p->next;}if(j>i-1)return0;//i值不合法Node*s=(Node*)malloc(sizeof(Node));s->data=e;s->next=p->next;p->next=s;return1;}//合并两个有序链表,返回新链表的头指针LinkListMergeList(LinkListLa,LinkListLb){LinkListLc,pc,pa,pb;pa=La->next;pb=Lb->next;Lc=pc=La;//使用La的头节点作为Lc的头节点while(pa!=NULL&&pb!=NULL){if(pa->data<=pb->data){pc->next=pa;pc=pc->next;pa=pa->next;}else{pc->next=pb;pc=pc->next;pb=pb->next;}}if(pa==NULL){pc->next=pb;}else{pc->next=pa;}//释放Lb的头节点(注:此处代码未实现释放,仅作逻辑演示)returnLc;}intmain(){LinkListLa,Lb,Lc;InitList(&La);InitList(&Lb);ListInsert(La,1,1);ListInsert(La,2,3);ListInsert(La,3,5);ListInsert(Lb,1,2);ListInsert(Lb,2,4);ListInsert(Lb,3,6);Lc=MergeList(La,Lb);//输出链表内容return0;}```(1)函数`ListInsert`中,循环条件`for(j=0;p->next!=NULL&&j<i-1;j++)`的作用是找到第i-1个结点,当i=1时,循环执行次数为1。(2)函数`MergeList`中,变量`pc`的作用是始终指向新链表的当前尾结点,以便进行连接操作。在合并过程中,当`pa->data<=pb->data`时,应执行`pc->next=pa;`和`pc=pa;`,然后执行`pa=pa->next;`。(3)在`MergeList`函数的末尾,若`pa`不为空,则将`Lb`中剩余的结点连接到新链表尾部,应执行的语句是`pc->next=pb;`。【问题2】(共10分)阅读下列Java代码,将缺失的代码补充完整,使程序的功能正确。```javaimportjava.util.ArrayList;importjava.util.List;importjava.util.concurrent.locks.ReentrantLock;classTask{privateintid;publicTask(intid){this.id=id;}publicintgetId(){returnid;}}classTaskQueue{privateList<Task>queue=newArrayList<>();privateReentrantLocklock=newReentrantLock();privateConditionnotEmpty=lock.newCondition();privateConditionnotFull=lock.newCondition();privateintcapacity=10;publicvoidput(Tasktask)throwsInterruptedException{lock.lock();try{while(queue.size()==capacity){notFull.await();//等待队列不满}queue.add(task);System.out.println("生产者"+task.getId()+"放入任务");notEmpty.signal();//唤醒消费者}finally{lock.unlock();}}publicTasktake()throwsInterruptedException{lock.lock();try{while(queue.size()==0){notEmpty.await();//等待队列不空}Tasktask=queue.remove(0);System.out.println("消费者取出任务"+task.getId());notFull.signal();//唤醒生产者returntask;}finally{lock.unlock();}}}publicclassProducerConsumer{publicstaticvoidmain(String[]args){TaskQueuequeue=newTaskQueue();//模拟生产者和消费者for(inti=0;i<2;i++){newThread(()->{try{for(intj=0;j<5;j++){queue.put(newTask(j));}}catch(InterruptedExceptione){e.printStackTrace();}}).start();}for(inti=0;i<2;i++){newThread(()->{try{while(true){queue.take();}}catch(InterruptedExceptione){e.printStackTrace();}}).start();}}}```(1)在`put`方法中,`notEmpty.signal()`的作用是唤醒等待在`notEmpty`条件变量上的线程,通常是2。(2)在`take`方法中,`notFull.signal()`的作用是唤醒等待在`notFull`条件变量上的线程,通常是3。(3)为了防止死锁,在`put`和`take`方法中,必须使用`try-finally`块来确保锁的释放。【问题3】(共10分)阅读下列数据库应用设计说明,将缺失的SQL语句补充完整。某公司有一个“员工”表(Employee)和一个“部门”表(Department),表结构如下:Employee(DeptID,EmpID,Name,Salary)Department(DepartID,DeptName,Location)需求如下:1.查询所有部门名称及其所在城市的员工数量。2.查询薪资高于本部门平均薪资的员工信息。3.为“销售部”增加一个新员工,插入语句如下。(1)查询所有部门名称及其所在城市的员工数量的SQL语句为:SELECTD.DeptName,D.Location,COUNT(E.EmpID)FROMDepartmentDLEFTJOINEmployeeEOND.DepartID=E.DeptIDGROUPBYD.DeptName,D.Location;(2)查询薪资高于本部门平均薪资的员工信息的SQL语句为:SELECTE.*FROMEmployeeEJOINDepartmentDONE.DeptID=D.DepartIDWHEREE.Salary>(SELECTAVG(Salary)FROMEmployeeWHEREDeptID=E.DeptID);(3)为“销售部”增加一个新员工的插入语句为:INSERTINTOEmployee(DeptID,EmpID,Name,Salary)SELECTDepartID,'E1005','张三',5000FROMD

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论