版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
大华研发岗位笔试真题及详细答案解析适用岗位:嵌入式研发、后端软件开发、图像处理研发(通用研发岗)考试时长:120分钟满分:100分题型分布:选择题20题(40分)、填空题10题(20分)、简答题4题(24分)、编程题2题(16分)一、单项选择题(共20题,每题2分,共40分)说明:每题只有一个正确答案,多选、错选、不选均不得分1、以下关于C语言指针的说法,正确的是()A、指针变量存储的是变量的值B、空指针是指指向内存0地址的指针C、指针可以进行所有算术运算D、野指针可以直接进行解引用操作答案:B解析:A错误,指针变量存储的是内存地址,而非变量值;B正确,空指针(NULL)本质是指向内存0号地址,该地址系统保留,禁止访问;C错误,指针仅支持加减运算,不支持乘除运算;D错误,野指针指向随机未知内存,解引用会导致程序崩溃、内存越界。2、下列结构体大小,在32位系统下占用字节数为()PlainText
structTest{
chara;
intb;
shortc;
};A、7B、8C、10D、12答案:C解析:32位系统默认4字节对齐。char占1字节,补齐3字节后,int4字节,short2字节,整体补齐至4的整数倍。计算:1+3(补齐)+4+2=10字节。3、以下不会造成内存泄漏的操作是()A、malloc申请内存后未freeB、new对象后未deleteC、栈空间数组局部使用后自动释放D、指针重赋值导致原内存地址丢失答案:C解析:栈内存由系统自动分配、自动释放,函数执行结束后局部栈变量直接销毁,不会产生内存泄漏;堆内存手动申请未释放、地址丢失均会造成内存泄漏。4、TCP/IP协议栈中,负责端到端数据传输、提供可靠连接的层级是()A、网络层B、传输层C、应用层D、数据链路层答案:B解析:传输层核心协议为TCP、UDP,其中TCP面向连接、可靠传输,负责端到端的数据交互;网络层负责路由寻址,数据链路层负责帧传输,应用层为用户交互接口。5、操作系统中,进程和线程的核心区别是()A、线程比进程执行速度慢B、进程拥有独立地址空间,线程共享进程地址空间C、线程资源开销更大D、进程不能并发执行,线程可以并发答案:B解析:进程是系统资源分配的最小单位,拥有独立的虚拟地址空间;线程是CPU调度的最小单位,同一进程内的所有线程共享进程资源和地址空间,线程创建、销毁开销远小于进程,二者均可并发执行。6、以下排序算法中,时间复杂度最优且稳定的是()A、快速排序B、冒泡排序C、归并排序D、堆排序答案:C解析:归并排序时间复杂度稳定O(nlogn),且是稳定排序;快速排序平均O(nlogn)、最坏O(n²),不稳定;冒泡排序O(n²);堆排序O(nlogn)但不稳定。7、C++中,以下关于const关键字说法错误的是()A、const修饰的变量不可修改B、const成员函数不能修改类的成员变量C、const指针可以指向其他地址D、const引用不能修改所绑定的变量答案:C解析:const修饰指针(常量指针),指针指向的地址不可修改,仅可修改地址内的值;指针常量可修改地址、不可修改值。8、Linux系统中,查看当前系统进程快照的命令是()A、cdB、psC、lsD、pwd答案:B解析:ps命令用于查看系统瞬时进程状态;cd切换目录,ls查看文件列表,pwd查看当前工作路径。9、二叉树的前序遍历顺序是根-左-右,若前序序列为ABCDEF,中序序列为BDCAEF,则后序序列为()A、DCBAFEB、BDCAFEDC、CDBEAFD、DCBAEF答案:A解析:前序首元素A为根节点,中序BDCA为左子树、EF为右子树;递归推导后,后序遍历顺序为左-右-根,最终结果为DCBAFE。10、TCP协议中,用于主动关闭连接的四次挥手过程中,第二次挥手状态是()答案:B11、以下不属于死锁产生必要条件的是()A、互斥条件B、资源可剥夺条件C、请求保持条件D、环路等待条件答案:B解析:死锁四大必要条件:互斥、请求保持、不可剥夺、环路等待。资源可剥夺可直接打破死锁条件。12、C语言中,static关键字修饰局部变量的作用是()A、变量作用域变为全局B、变量生命周期延长至程序结束C、变量存储在栈区D、变量可被外部文件访问答案:B解析:static局部变量存储在静态区,生命周期贯穿整个程序,作用域仍为当前函数,仅首次初始化生效,外部文件无法访问。13、哈希表查找的平均时间复杂度是()A、O(1)B、O(n)C、O(logn)D、O(n²)答案:A解析:理想状态下哈希表无冲突,查找、插入、删除均为O(1);最坏冲突严重时为O(n),平均时间复杂度为O(1)。14、Linux中,将前台进程转入后台运行的快捷键是()A、Ctrl+CB、Ctrl+ZC、Ctrl+DD、Ctrl+S答案:B解析:Ctrl+Z暂停前台进程并转入后台;Ctrl+C终止进程,Ctrl+D退出终端,Ctrl+S锁定终端输出。15、以下关于栈和队列的说法正确的是()A、栈先进先出B、队列先进后出C、栈先进后出D、二者存取规则一致答案:C解析:栈(Stack):先进后出(LIFO);队列(Queue):先进先出(FIFO)。16、C++中,虚函数的作用是()A、提高代码运行速度B、实现多态特性C、简化代码编写D、节省内存空间答案:B解析:虚函数是C++实现动态多态的核心,通过基类指针/引用调用派生类重写的函数,实现运行时绑定。17、IP地址192.168.1.100属于()网段A、A类B、B类C、C类D、D类答案:C解析:C类IP地址范围192.0.0.0-223.255.255.255,多用于局域网私有地址。18、进程的三种基本状态不包括()A、就绪态B、运行态C、阻塞态D、终止态答案:D解析:进程三大基本状态:就绪、运行、阻塞,终止态是进程结束后的状态,不属于基本状态。19、以下哪种数据结构适合频繁插入删除操作()A、数组B、链表C、顺序表D、哈希表答案:B解析:链表通过指针链接节点,插入删除仅需修改指针,无需移动数据,效率高;数组、顺序表插入删除需批量移动元素,效率低。20、UDP协议的特点是()A、面向连接、可靠B、无连接、不可靠、速度快C、面向连接、速度慢D、有序传输、无丢包答案:B解析:UDP是无连接传输协议,无需建立连接直接发包,不保证数据有序、不丢包,开销小、传输速度快,适用于视频、直播等场景。二、填空题(共10空,每空2分,共20分)1、数据结构中,二叉树第n层最多有______个节点。答案:2^(n-1)2、Linux系统中,______函数用于创建子进程。答案:fork()3、C++中,类的默认三大成员函数是构造函数、析构函数、______。答案:拷贝构造函数4、TCP协议通过______机制实现超时重传,保证数据可靠传输。答案:超时计时器5、操作系统中,______调度算法是最短作业优先的抢占式版本。答案:最短剩余时间优先6、链表中,仅能从头节点遍历的链表称为______链表。答案:单向7、C语言中,sizeof(空指针)在32位系统下结果为______字节。答案:48、网络七层模型中,负责加密解密、数据格式转换的是______层。答案:表示9、解决哈希冲突最常用的两种方法是链地址法和______。答案:开放定址法10、进程同步中,______用于保证多个线程互斥访问临界资源。答案:互斥锁三、简答题(共4题,每题6分,共24分)1、简述TCP三次握手的过程,以及为什么需要三次握手,不能两次?答案解析:三次握手过程:(1)第一次握手:客户端向服务端发送SYN报文,请求建立连接,客户端进入SYN_SENT状态;(2)第二次握手:服务端收到SYN报文,回复SYN+ACK报文确认连接请求,服务端进入SYN_RCVD状态;(3)第三次握手:客户端收到确认报文,发送ACK报文确认,双方均进入ESTABLISHED状态,连接建立。不能两次握手的原因:两次握手只能保证客户端发送能力、服务端接收能力正常,无法验证客户端接收服务端数据的能力。若网络存在延迟失效的连接请求报文,两次握手会导致服务端建立无效连接,占用资源,三次握手可以彻底规避该问题,确保双向通信链路正常。2、简述进程间通信(IPC)的常见方式及适用场景答案解析:(1)管道:分为匿名管道和命名管道,匿名管道适用于父子进程简单单向通信,命名管道可实现无亲缘关系进程通信,传输数据量小;(2)消息队列:内核维护的消息链表,支持多进程读写,可按类型收发数据,适合频繁、小块数据通信;(3)共享内存:多个进程映射同一块物理内存,无需数据拷贝,传输效率最高,适合大批量数据传输,需配合互斥锁保证同步;(4)信号量:主要用于进程、线程同步与互斥,保护临界资源,不负责数据传输;(5)套接字(Socket):支持跨主机、跨进程通信,通用性最强,适用于网络通信及本地进程通信。3、简述C/C++中堆和栈的区别答案解析:(1)管理方式:栈由系统自动分配、自动释放;堆由开发者手动malloc/new申请、free/delete释放;(2)内存大小:栈空间固定、容量小;堆空间灵活、容量大,可动态扩展;(3)生命周期:栈变量随函数调用创建、函数结束销毁;堆内存生命周期由开发者决定,程序结束前可长期存在;(4)存取效率:栈内存连续,读写效率高;堆内存碎片化,寻址效率偏低;(5)溢出风险:栈空间不足会出现栈溢出;堆主要存在内存泄漏、野指针问题。4、简述死锁的解决和预防方式答案解析:死锁产生的核心是四大必要条件同时满足,解决思路为破坏任意一个条件:(1)破坏互斥条件:允许资源共享访问,适用于可共享的资源;(2)破坏请求保持条件:进程一次性申请所有所需资源,资源不足时不占用任何资源;(3)破坏不可剥夺条件:进程申请新资源失败时,主动释放已占用资源;(4)破坏环路等待条件:统一资源编号,进程按固定顺序申请资源,杜绝循环等待;此外,可通过银行家算法预判资源分配安全性,规避死锁;运行中可通过进程重启、资源回收解除死锁。四、编程题(共2题,每题8分,共16分)1、基础编程:编写C语言代码,反转一个单向链表,输出反转后的链表节点值解题思路:采用三指针法(前驱、当前、后继)迭代遍历,逐个反转节点指向,无需递归,空间复杂度O(1),效率更高。PlainText
#include<stdio.h>
#include<stdlib.h>
//定义链表节点结构体
structListNode{
intval;
structListNode*next;
};
//链表反转函数
structListNode*reverseList(structListNode*head){
structListNode*pre=NULL;//前驱节点
structListNode*cur=head;//当前节点
structListNode*next=NULL;//后继节点
while(cur!=NULL){
next=cur->next;//保存后继节点
cur->next=pre;//反转当前节点指向
pre=cur;//前驱节点后移
cur=next;//当前节点后移
}
returnpre;//新头节点
}
//打印链表
voidprintList(structListNode*head){
while(head!=NULL){
printf("%d",head->val);
head=head->next;
}
printf("\n");
}
//创建新节点
structListNode*createNode(intval){
structListNode*node=(structListNode*)malloc(sizeof(structListNode));
node->val=val;
node->next=NULL;
returnnode;
}
intmain(){
//构建链表1->2->3->4->5
structListNode*head=createNode(1);
head->next=createNode(2);
head->next->next=createNode(3);
head->next->next->next=createNode(4);
head->next->next->next->next=createNode(5);
printf("原链表:");
printList(head);
head=reverseList(head);
printf("反转后链表:");
printList(head);
return0;
}输出结果:原链表:12345反转后链表:543212、算法编程:给定一个整型数组,找出数组中出现次数最多的元素,若多个元素次数相同,返回第一个出现的元素解题思路:双重循环统计每个元素出现次数,记录最大次数及对应元素,保证相同次数取先出现的元素,逻辑简洁,适配笔试场景。PlainText
#include<stdio.h>
intfindMaxCountNum(intarr[],intn){
//最大出现次数、结果元素
intmaxCount=0;
intres=arr[0];
for(inti=0;i<n;i++){
intcount=0;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年人工智能在制造业中的应用研究报告
- 2026年环境保护专用设备制造行业深度研究报告及未来五至十年市场规模与增长潜力评估
- 2026年上海市秋季高考语文文学类文本阅读试题及答案解析
- 2026年综合交通行业洞察报告及未来五至十年发展趋势报告
- 2026中央美术学院学校办公室派遣岗位公开招聘2人考试备考试题及答案解析
- 2026实木包装材料高端化转型与市场开拓研究
- 2026年核污染行业洞察报告及未来五至十年发展趋势报告
- 2026别墅庭院实木景观设施维护成本效益分析
- 2026农业传感器网络精准灌溉决策模型研究
- 2026古交市公开招聘专职公益性岗位人员35人笔试参考题库及答案解析
- 雨课堂学堂在线学堂云《国家安全概论(吉林)》单元测试考核答案
- 陕西省西安市交通大学附属中学分校2025-2026学年八年级上学期期中语文试题(含答案)
- 儿童内分泌科进修汇报
- 劳动纪律教育测试题目及答案
- 长期照护师技能考试试卷与答案
- 检察院招录书记员考试《法律基础知识》及答案
- 2025年军队文职《专业科目》教育学类(体育学)统一考试试卷
- 2024年中国船级社北海办事处招聘笔试真题
- 2025年共青团团课考试题库及答案
- DB32T 4355-2022 建筑施工附着式升降设施安全技术规程(修)
- 废气处理行业营销策略方案
评论
0/150
提交评论