计算机复试面试题总结.pdf
1.编译程序和解释程序的区别。2.请介绍一下你本科期间做过的项目。3.请问你为什么要考研究生。4.请问你毕业设计的核心设计问题?5.排序算法有哪些,排序算法中最快的算法是哪个.?6.你有钱读研吗?7.你为什么考研?8.你选择哪个研究方向?9.虚拟存储器,死锁,虚拟设备,临界区,线程,交换,地址重定位,文件系统,抖动10.什么是 DMA,请举例说明读写一次磁盘的DMA 过程11.如果你的 分数不够,是否愿意调剂12.计算机领域有什么主要的刊物IEEE Transactions on Image ProcessingChinese Journal of ComputersPictures and ImagesRemote sensing technology and applicationComputer ScienceJournal of Image and Graphics图像处理汇刊中国计算机学报图片和图像遥感技术与应用计算机科学图象图形学报13.计算机界有什么主要的企业14.数据库有哪些基本操作据库的基本操作主要是增加、删除、修改,操作对象主要包括数据库、表、记录、字段等另外对于事务还有回滚大型数据库管理软件里面包括对数据库进行管理的操作,包括对用户、作业、日志、存储过程、函数等等15.你觉得应该怎样开始一项研究工作16.做过什么,用什么做,java 的特性 是什么,你做的东西有什么功能,重点什么,有什么体会?17.解释与编译的区别 java 与 c+的区别(C,C+,Visual C+的区别)18.ISO 七层模型有哪些?19.黑盒,白盒测试?白盒测试也称结构测试或逻辑驱动测试,它是按照程序内部的结构测试程序,通过测试来检测产品内部动作是否按照设计规格说明书的规定正常进行,检验程序中的每条通路是否都能按预定要求正确工作。这一方法是把测试对象看作一个打开的盒子,测试人员依据程序内部逻辑结构相关信息,设计或选择测试用例,对程序所有逻辑路径进行测试,通过在不同点检查程序的状态,确定实际的状态是否与预期的状态一致。20.多媒体数据库的概念,与特点。21.操作系统的分类定义22.你有做项目的经验吗?你看过什么外国的专业期刊?你学过哪些数学课程?离散数学与连续数学区别?算法你了解多少?你写过什么算法?你选的方向是什么?用英文说出来。23.面向对象的三个特征封装、继承、多态。封装封装封装最好理解了。封装是面向对象的特征之一,是对象和类概念的主要特性。封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。继承继承面向对象编程(OOP)语言的一个主要功能就是“继承”。继承是指这样一种能力:它可以使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。通过继承创建的新类称为“子类”或“派生类”。被继承的类称为“基类”、“父类”或“超类”。继承的过程,就是从一般到特殊的过程。要实现继承,可以通过“继承”(Inheritance)和“组合”(Composition)来实现。在某些 OOP 语言中,一个子类可以继承多个基类。但是一般情况下,一个子类只能有一个基类,要实现多重继承,可以通过多级继承来实现。继承概念的实现方式有三类:实现继承、接口继承和可视继承。实现继承是指使用基类的属性和方法而无需额外编码的能力;接口继承是指仅使用属性和方法的名称、但是子类必须提供实现的能力;可视继承是指子窗体(类)使用基窗体(类)的外观和实现代码的能力。在考虑使用继承时,有一点需要注意,那就是两个类之间的关系应该是“属于”关系。例如,Employee 是一个人,Manager 也是一个人,因此这两个类都可以继承 Person 类。但是Leg 类却不能继承 Person 类,因为腿并不是一个人。抽象类仅定义将由子类创建的一般属性和方法,创建抽象类时,请使用关键字 Interface 而不是 Class。OO 开发范式大致为:划分对象抽象类将类组织成为层次化结构(继承和合成)用类与实例进行设计和实现几个阶段。多态多态多态性(polymorphisn)是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作。简单的说,就是一句话:允许将子类类型的指针赋值给父类类型的指针。实现多态,有二种方式,覆盖(override),重载(overload)。覆盖,是指子类重新定义父类的虚函数的做法。它是覆盖了一个方法并且对其重写,以求达到不同的作用。对我们来说最熟悉的覆盖就是对接口方法的实现,在接口中一般只是对方法进行了声明,而我们在实现时,就需要实现接口声明的所有方法。除了这个典型的用法以外,我们在继承中也可能会在子类覆盖父类中的方法。在覆盖要注意以下的几点:1、覆盖的方法的标志必须要和被覆盖的方法的标志完全匹配,才能达到覆盖的效果;2、覆盖的方法的返回值必须和被覆盖的方法的返回一致;3、覆盖的方法所抛出的异常必须和被覆盖方法的所抛出的异常一致,或者是其子类;4、被覆盖的方法不能为private,否则在其子类中只是新定义了一个方法,并没有对其进行覆盖。重载,是指允许存在多个同名函数,而这些函数的参数表不同(或许参数个数不同,或许参数类型不同,或许两者都不同)。它是指我们可以定义一些名称相同的方法,通过定义不同的输入参数来区分这些方法,然后再调用时,VM 就会根据不同的参数样式,来选择合适的方法执行。在使用重载要注意以下的几点:1、在使用重载时只能通过不同的参数样式。例如,不同的参数类型,不同的参数个数,不同的参数顺序(当然,同一方法内的几个参数类型必须不一样,例如可以是fun(int,float),但是不能为 fun(int,int));2、不能通过访问权限、返回类型、抛出的异常进行重载;3、方法的异常类型和数目不会对重载造成影响;4、对于继承来说,如果某一方法在父类中是访问权限是priavte,那么就不能在子类对其进行重载,如果定义的话,也只是定义了一个新方法,而不会达到重载的效果。其实,重载的概念并不属于“面向对象编程”,重载的实现是:编译器根据函数不同的参数表,对同名函数的名称做修饰,然后这些同名函数就成了不同的函数(至少对于编译器来说是这样的)。如,有两个同名函数:function func(p:integer):integer;和 functionfunc(p:string):integer;。那么编译器做过修饰后的函数名称可能是这样的:int_func、str_func。对于这两个函数的调用,在编译器间就已经确定了,是静态的(记住:是静态)。也就是说,它们的地址在编译期就绑定了(早绑定),因此,重载和多态无关!真正和多态相关的是“覆盖”。当子类重新定义了父类的虚函数后,父类指针根据赋给它的不同的子类指针,动态(记住:是动态!)的调用属于子类的该函数,这样的函数调用在编译期间是无法确定的(调用的子类的虚函数的地址无法给出)。因此,这样的函数地址是在运行期绑定的(晚邦定)。结论就是:重载只是一种语言特性,与多态无关,与面向对象也无关!引用一句 Bruce Eckel的话:“不要犯傻,如果它不是晚邦定,它就不是多态。”那么,多态的作用是什么呢?我们知道,封装可以隐藏实现细节,使得代码模块化;继承可以扩展已存在的代码模块(类);它们的目的都是为了?代码重用。而多态则是为了实现另一个目的?接口重用!多态的作用,就是为了类在继承和派生的时候,保证使用“家谱”中任一类的实例的某一属性时的正确调用。概念讲解概念讲解24.25.UNIX 与 WINDOWS 区别26.你学过什么程序设计语言?当前最热门的语言是什么?它们有什么特点?27.数据库有哪些基本操作28.你选择的研究方向是什么?你对自己的专业有什么了解?你觉得应该怎样开始一项研究工作?29.为什么考研?30.OSI 体系结构31.CS 与 BS 的优缺点BS 和 CS 的区别以及优缺点C/S 又称 Client/Server 或客户/服务器模式。服务器通常采用高性能的 PC、工作站或小型机,并采用大型数据库系统,如 Oracle、Sybase、Informix 或 SQLServer。客户端需要安装专用的客户端软件。B/S 是 Brower/Server 的缩写,客户机上只要安装一个浏览器(Browser),如Netscape Navigator 或 Internet Explorer,服务器安装 Oracle、Sybase、Informix或 SQL Server 等数据库。浏览器通过 Web Server 同数据库进行数据交互。C/S 的优点是能充分发挥客户端 PC 的处理能力,很多工作可以在客户端处理后再提交给服务器。对应的优点就是客户端响应速度快。缺点主要有以下几个:只适用于局域网。而随着互联网的飞速发展,移动办公和分布式办公越来越普及,这需要我们的系统具有扩展性。这种方式远程访问需要专门的技术,同时要对系统进行专门的设计来处理分布式的数据。客户端需要安装专用的客户端软件。首先涉及到安装的工作量,其次任何一台电脑出问题,如病毒、硬件损坏,都需要进行安装或维护。特别是有很多分部或专卖店的情况,不是工作量的问题,而是路程的问题。还有,系统软件升级时,每一台客户机需要重新安装,其维护和升级成本非常高。对客户端的操作系统一般也会有限制。可能适应于 Win98,但不能用于 win2000或 Windows XP。或者不适用于微软新的操作系统等等,更不用说 Linux、Unix等。32.B/S 最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。甚至可以在线申请,通过公司内部的安全认证(如 CA 证书)后,不需要人的参与,系统可以自动分配给用户一个账号进入系统。33.操作系统有什么功能34.你看过那些学术期刊35.谈谈你做过的一些项目36.路由器的作用37.路由器:连接因特网中各局域网、广域网的设备,它会根据信道的情况自动选择和设定路由,以最佳路径,按前后顺序发送信号的设备。路由器英文名 Router,路由器是互联网络的枢纽、交通警察。目前路由器已经广泛应用于各行各业,各种不同档次的产品已经成为实现各种骨干网内部连接、骨干网间互联和骨干网与互联网互联互通业务的主力军38.编译程序和解释程序的区别编译程序是整体编译完了,再一次性执行。而解释程序是一边解释,一边执行。解释一句后就提交计算机执行一句,并不形成目标程序。就像外语翻译中的“口译”一样,说一句翻一句,不产生全文的翻译文本。39.请谈谈你的毕业设计40.请介绍一下你的学校或者专业41.请用英语表述一下软件周期的过程问题的定义及规划Problem Definition and Planning需求分析Needs analysis软件设计Software Design程序编码Program code软件测试Software Testing运行维护Operation and Maintenance