• 大小: 0.20M
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-03-27
  • 语言: 其他
  • 标签: 其他  

资源简介


计算机专业考研面试题目及解答。适合保研和考研后面试时看。
考研视频网阿里考研网 Www.aLhikaOyan.c0m誉出品 答:只能执行査询等读操作,不能执行更改,备份等写操作,原因是任何写操作都要记录日忐。也就是说基本 上处于不能使用的状态。 第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和 服务器进入 ESTABLISHE状态,完成三次握手 8.ICMP是什么协议,处于哪一层?答: Interne控制报文协议,处丁网络层(IP层)(ping命令基于这个协议 9. winsock建立连接的主要实现步骤? 答:服务器端: socket(建立套接字,绑定(bind)并监听( listen),用 accept()等待客户端连接。 客户端: socket(建立套接字,连接( connect)服务器,连接上后使用send()和recw(),在套接字上写读数 据,直至数据交换完毕, closesocket0关闭套接字。 服务器端: accept()发现有客户端连接,建立一个新的套接字,自身重新开始等待连接。该新产生的套接字 使用send(和recw()写读数据,直至数据交换完毕, closesocket o关闭套接字。 10.IP组播有那些好处? 答: Internet上产生的许多新的应用,特別是髙带宽的多媒体应用,带来了带宽的急剧消耗和网络拥挤问题。 组播是一种允许一个或多个发送者(组播源)发送单一的数据包到多个接收者(一次的,同时的)的网络技术 组播可以大大的节省网络带宽,因为无论有多少个目标地址,在整个网络的任何条链路上只传送单·的数据 包。所以说组播技术的核心就是针对如何节约网络资源的前提下保证服务质量。 11.引用与指针有什么区别? 引用必须被初始化,指针不必。2)引用初始化以后不能被改变,指针可以改变所指的对象。 3)不存在指向空值的引用,但是存在指向空值的指针。 12.TCP/IP建立连接的过程?(3- way shake) 答:在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。 第一次握于:建立连接时,客户端发送syn包(syn=j到服务器,并进入 SYN SENI状态,等待服务器确认; 第次握手:服务器收到syn包,必须确认客户的SVN(ack=j+1),同时自己也发送一个SYV包(syn=k),即SYN+ACK 包,此时服务器进入 SYN RECV状态; 13、局部变量能否和全局变量重名? 答:能,局部会屏蔽全局。要用全局变量,需要使用"∷:" 局部变量可以与全局变量同名,在函数内引用这个变量时,会用到同名的局部变量,而不会用到全局变量。对 于有些编译器而言,在同一个函数内可以定义多个同名的局部变量,比如在两个循坏体内都定义一个同名的局 部变量,而那个局部变量的作用域就在那个循环体内 14、如何引用一个已经定义过的全局变量? 第3页共10页 考研视频网阿里考研网 Www.aLhikaOyan.c0m桊誉出品 答 extern 可以用引用头文件的方式,也可以用 extern关键字,如果用引用头文件方式米引用某个在头文件中声明的 全局变理,假定你将那个变写错了,那么在编译期间会报错,如果你用 extern方式引用吋,假定你犯了同样的 错误,那么在编译期间不会报错,而在连接期间报错。 15.描述实时系统的基本特性 在特定时间内完成特定的任务,实时性与可靠性。 16.全局变量和局部变量在内存中是否有区别?如果有,是什么区别? 仝局变量储存在静态数据库,局部变量在堆栈。 17.什么是平衡二叉树? 左右子树都是平衡二叉树且左右子树的深度差值的绝对值不大于1。 18.堆栈溢出一般是由什么原因导致的? 没有回收垃圾资源。 19.什么函数不能声明为虚函数? constructor函数不能声明为虚函数 20.冒泡排序算法的时间复杂度是什么? 时间复杂度是0(n2)。 21.写出 float x与“零值”比较的if语句 if(x0.00000188x>-0.000001) 22. Internet采用哪种网络协议?该协议的主要层次结构? Tcp/Ip协议主要层次结构为:应用层/传输层/网络层/数据链路层/物理层 23. Internet物理地址和IP地址转换采用什么协议?AR'( Address Resolution Protocol)(地址解析協議) 24.I地址的编码分为哪俩部分?P地址由两部分组成,网络号和主机号。不过是要和“子网掩码”按位与 上之后才能区分哪些是网络位哪些是主机位。 25.用户输入M,N值,从1至N开始顺序循环数数,每数到M输岀该数值,直至全部输出。写出C程序。 循环链表,用取余操作做 26.不能做 switch的参数类型是: switch的参数不能为实型。 27.请写出下列代码的输出内容 t include <stdio. h> maino int a, b. c. d a=10 b=a+十 d=10*a++; printf(b, c, d: %d,%d, %d", b, c, d) 第4页共10页 考研视频网阿里考研网 Www.aLhikaOyan.c0m桊誉出品 0 答:10,12,12 28.写出下列代码的输出内容 #includestdio, h> int inc (int a) return(++a) int multi(int*a, int*b, int*c) return(*C=米a*b) typedef int(FUNc1)(int in) ypedef int( func2)(int*, int*, int*) void show (FUNC2 fun, int argl, int*arg2) INCp=&inc int temp =p(arg1) fun(&temp, &argl, arg2); printf(%d\n", *arg2 maino t ow(multi, 10, &a) return 0: 木冰水水水木水水水木水木冰水木水水水水木木冰水水水水冰水冰水冰木 1.对于一个频繁使用的短小函数,在C语言中应用什么实现,在C++中应用什么实现?答:c用宏定义,c+-用 inline 第5页共10页 考研视频网阿里考研网 Www.aLhikaOyan.c0m桊誉出品 2.直接链接两个信令点的一组链路称作什么?答:PP点到点连接 3.软件测试都有那些种类?黑盒:针对系统功能的测试白盒:测试函数功能,各函数接凵 4.确定模块的功能和模块的接口是在软件设计的那个阶段完成的?要设计阶段 选择题: 1. Ethternet链接到 Internet用到以卜那个协议?A.HDLC;B.ARP;C.UDP;D.TCP;E.ID 2.属于网络层协议的是:A.TCP;B.IP;C.ICMP;D.X.25 3. Windows消息调度机制是:A.指令队列;B.指令堆栈;C.消息队列;D.消息堆栈 4. unsigned short hash(unsigned short key) return(key>>)% 请问hash(16),hash(256)的值分别是:A.1.16;B.8.32;C.4.16;D.1.32 四.找错题: 1.请问下面程序有什么错误? int al60L250」L1000」,i,j,k; for(k=0;k<=1000;k+) for(j-0;j<250;j++) for(i=0;i<60;i++) [ij[k]=0 把循环语句内外换一下 2. #define max cB 500 void Lmi QueryCSmd(Struct MSgCB pmsg unsigned char ucCmd Nt for (uc CmdNum-0: uc md Num<Max CB; uc CmdNum++ 死循环 3.以下是求一个数的平方的程序,请找出错误: 第6页共10页 考研视频网阿里考研网 Www.aLhikaOyan.c0m桊誉出品 #define square (a(a*(a) int a=5 int b: b=SqUarE(a++) 4. ty pede f unsigned char BYTE int examply fun (bYte gt len: BYTE *gt code) BYTE *gt buf gt buf-(BYTE *)MALLOC(Max GT Length if(gt len> Max GT Length) return GT Length ERROR 五.问答题 1. IP Phone的原理是什么?IPV6 2.TCP/IP通信建立的过程怎样,端口有什么作用?三次握于,确定是哪个应用程序使用该协议 3.1号信令和7号信令有什么区别,我国某前广泛使用的是那一种? 4.列举5种以上的电话新业务? 半半半半半半半半半半半米半半米半半半半半半半半 1.进程和线程的差别。 线程是指进程内的一个执行单元,也是进程内的可调度实体.与进程的区别 (1)调度:线程作为调度和分配的基本单位,进程作为拥有资源的基本单位 (2)并发性:不仅进程之间可以并发执行,同个进程的多个线程之间也可并发执行 (3)拥有资源:进程是拥有资源的个独立单位,线程不拥有系统资源,但可以访问求属于进程的资源 (4)系统廾销:在创建或撤消进程时,由」系统都要为之分配和回收资源,导鈫系统的廾销明显大于创建或撤消 线程时的开销。 2.Heap与 stack的差别。 第7页共10页 考研视频网阿里考研网 Www.aLhikaOyan.c0m桊誉出品 Heap是堆, stack是栈。 Stack的空间由操作系统自动分配/释放,Heap上的空闫手动分配/释放。 Stack空间有限,leap是很大的自由存储区。C中的na1loc数分配的内存空间即在堆上,C中对应的是new操作 符。 程序在编译期对变量和函数分配内存都在栈上进行,且程序运行过程中函数调用时参数的传递也在栈上进行。 3.如果只想让程序有一个实例运行,不能运行两个。像 winamp-样,只能开一个窗口,怎样实现? 用内存映射或全局原子(互斥变量)、查找窗口句柄… Findwindow,互斥,写标志到文件或注册表,共享内存。 A存储过程是什么?有什么用?有什么优点? 航是一堆sql的集合,可以建立非常复杂的查询,编译运行,所以运行一次后,以后再运行速度比单独执行SQL 快很多 5.网络编程中设计并发服务器,使用多进程与多线程,请问有什么区别? 进程:子进程是父进程的复制品。子进程获得父进程数据空间、堆和栈的复制品。 2,线程:相对与进程而言,线程是一个更加接近于执行体的概念,它可以与同进程的其他线程共亨数据,但拥 有自己的栈空间,拥有独立的执行序列。 两者都可以提髙程序的并发度,提高程序运行效率和响应时间。 线程和进程在使用上各有优缺点:线程执行开销小,但不利于资源管理和保护;而进程正相反。同吋,线程适 合」在SP枞器上运行,而进程则可以跨机器迁移。 6. Windows下的内存是如何管理的? 7.用一个语句实现x是否为2的若干次幂的判断: int i =512 cout boolalpha < ((i&(i-1))? false: truc)<< endl 8.下面三个有什么区别? char s const p; char const * p; const char *p 答:char* const p;//常量指针,p的值不可以修改 char const*p;//指向常量的指针,指冋的常量值不可以改 const char*p;//和 char const*p一样 9.一个32位的机器,该机器的指针是多少位 指针是多少位只要看地址总线的位数就行了。80386以后的机了都是32的数据总线。所以指针的位数就是4个字 节了 10. maino 第8页共10页 考研视频网阿里考研网 Www.aLhikaOyan.c0m桊誉出品 inta[5]={1,2,3,4,5}; int冰ptr=(int米)(&a+1) printf("%d,%d",*(a+1),*(ptr-1)) 输出:2,5 (a+1)就是a[1],*(ptr-1)就是a[4],执行结果是2,5 &a+1不是首地址+1,系统会认为加一个a数组的偏移,是偏移了一个数组的大小(本例是5个int) int *ptr=(int *)(&a+1) 则ptr实际是&(a[5]),也就是a+5 原因如下: &a是数组指针,其类型为int(*)[5 而指针加1要根据指针类型加上一定的值, 不同类型的指针1之后增加的大小不同 a是长度为5的int数组指针,所以要加5* sizeof(int) 所以ptr实际是a[5] 但是ptr与(&a+1)类型是不一样的(这点很重要) 所以prt-1只会减去 sizeof(int米 a,&a的地址是一样的,但意思不一样,a是数组首地址,也就是a[0]的地址,&a是对象(数组)首地址,a+1是 数组下一元素的地址,即a1,&a+1是下一个对象的地址,即a5|。 11.交换两个变量的值,不使用第三个变量。即a=3,b=5,交换之后a=5,b=3; a-a+b;b-a-b;a-a-b;/第一种方法 a=a^b;b=a^b;a=a^b;//第二和. aˆ=b^=a^=b;//第三种,后两种只能用于字符和整型 12.c和c++中的 struct有什么不同? C和cH中 struc t的主要区别是c中的 struct不可以含有成员函数,而c中的 struct可以。cH中 struc ti和 class 的主要区别在于默认的存取杖限不同, struct默认为 public,而clas默认为 private 13.举几种进程的同步机制,并比较其优缺点。 原子操作信号量机制、自旋锁、管程,会合,分布式系统 14.进程之间通信的途径:共享存储系统、消息传递系统、管道(以文件系统为基础) 15.进程死锁的原因:资源竞争及进程推进顺序非法 第9页共10页 考研视频网阿里考研网 Www.aLhikaOyan.c0m桊誉出品 16.死锁的4个必要条件:互斥、请求保持、不可剥夺、环路 17死锁的处理:鸵鸟策略、预防策略、避免策咯、检测与解除死锁 18.操作系统中进程调度策略有哪几种?FHS(先来先服务),优先级,吋间片轮转,多级反馈 19.数组和链表的区别数组:数据顺序存储,固定大小;链衣:数据可以随机仔储,大小可动态改变 20.IS0的七层模型是什么?tcp/udp是属于哪一层?tcp/udp有何优缺点? 应用层、表小层、会话层、运输层、网络层、物理链路层、物理层、tcp/udp属于运输层 TCP服务提供了数据流传输、可靠性、有效流控制、仝双工操作和多路复用技术等。 与TCP不同,UDP并不提倛对IP协议的可靠机制、流控制以及错误恢复功能等。由于UDP比较简单,UDP 头包含很少的字节,比TCP负载消耗少 tcp:提供稳定的传输服务,有流量控制,缺点是包头大,冗氽性不好。 udp:不提供稳定的服务,包头小,开销小。 面试题:线程与进程的区别和联系?线程是否具有相同的堆栈?d1是否有独立的堆栈? 1)进程是死的,只是一些资源的集合,真正的程序执行都是线程米完成的,程序启动的时候操作系统就帮你 创建了一个主线程 (2)每个线程有自己的堆栈。 3)DLL中有没有独立的堆栈,这个问题不好回答,或者说这个问题木身是否有问题。因为DL中的代码是被某 些线程所执行,只有线程拥有堆栈,如果DL中的代码是EXE中的线程所调用,那么这个时候是不是说这个DL 没有自己独立的堆栈?如果DLL中的代码是由DLL自己创建的线程所执行,那么是不是说DL有独立的堆栈? 以上讲的是堆栈,如果对于堆来说,每个DL有自己的堆,所以如果是丛DL中动态分配的内存,最好是丛DL 中删除,如果你从DL中分配内存,然后在EXE中,或者另外一个DLL中删除,很有可能导致程序崩溃。 第10页共10页

资源截图

代码片段和文件信息

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件      215331  2018-08-23 12:12  计算机考研专业面试试题.pdf

评论

共有 条评论