版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
软件水平考试(初级)程序员上午(基础知识)章节练习试卷1(共9套)(共673题)软件水平考试(初级)程序员上午(基础知识)章节练习试卷第1套一、中文选择题(含2小题)(本题共10题,每题1.0分,共10分。)通过截取以前的合法记录稍后重新加入一个连接,叫做(3)。为防止重放攻击,可以采用的办法是(4)。1、通过截取以前的合法记录稍后重新加入一个连接,叫做(3)。为防止重放攻击,可以采用的办法是(4)。A、远程攻击B、重放攻击C、带宽攻击D、病毒攻击标准答案:B知识点解析:暂无解析2、A、加密B、加入时间戳C、认证D、使用密钥标准答案:B知识点解析:重放攻击(replay-attack)指的是截取以前的合法记录稍后重新加入一个连接,这是一种主动攻击,可以通过加入时间戳来防止重放攻击。企业信息化是指企业利用(10)技术,通过对(11)的深度开发和广泛利用,不断提高生产、经营、管理、决策效率和水平,从而提高企业经济效益和企业核心竞争力的过程。3、企业信息化是指企业利用(10)技术,通过对(11)的深度开发和广泛利用,不断提高生产、经营、管理、决策效率和水平,从而提高企业经济效益和企业核心竞争力的过程。A、电话、电视、网络等现代信息传播B、WWW、Email、BBS等现代网络C、网络、计算机、通信等现代信息D、电话、传真、Email等现代通信标准答案:C知识点解析:暂无解析4、A、信息咨讯B、信息人才C、信息资源D、网络资源标准答案:C知识点解析:企业信息化的定义是企业利用网络、计算机、通信等现代信息技术,通过对信息资源的深度开发和广泛利用,不断提高生产、经营、管理、决策效率和水平,从而提高企业经济效益和企业核心竞争力的过程。企业信息化是一个很广泛的概念,总的来说就是广泛利用信息技术,使企业在生产、管理等方面实现信息化。某教授在名为“XXXX数字图书馆”的网站上发现了自己的作品。这些作品被放上网络向公众传播,他对此事并不知情,也根本没有向该网站做出任何授权。则该网站的做法是否侵权(12),在该方面我国相关的法律文件是(13)。5、某教授在名为“XXXX数字图书馆”的网站上发现了自己的作品。这些作品被放上网络向公众传播,他对此事并不知情,也根本没有向该网站做出任何授权。则该网站的做法是否侵权(12),在该方面我国相关的法律文件是(13)。A、无法确定B、侵权C、网站向公众收费就侵权D、不侵权,因为该网站未收费标准答案:D知识点解析:暂无解析6、A、音像制品管理条例B、软件保护条例C、知识产权保护法D、著作权法标准答案:B知识点解析:根据我国著作权法的规定,著作权包含复制权、发行权和信息网络传播权等权利。任何人未经著作权人许可,复制、发行或网络传播其作品,均构成对他人著作权的侵害,除非有法律规定的例外情形。我国传统图书馆基本上是由政府、集体出资创建并不以营利为目的的公益性机构。因其“公益性”,在传播版权作品时可享受不必经过以作者为代表的版权人的许可、也不必向版权人支付报酬的特定“侵权豁免”。对数字图书馆这一新兴事物,其定位业界尚无定论。但法律专家强调,图书馆的本质特征是“公益性”。数字图书馆作为传统图书馆的数字化延伸,也应当是公益性的。同时,基于网络传播空间极大的特性,它还必须采取相应的技术手段对公众的使用进行限制。“XXXX数字图书馆;网站无论在企业性质、经营方式、经营目的及对作者利益的影响上均与图书馆不同。虽然其对作品的使用范围、方式进行了必要的限制,但并不构成著作权法意义上对作品的合理使用。软件的特点是(24)。正因如此,我们应对软件产品的(25)进行大力保护。7、软件的特点是(24)。正因如此,我们应对软件产品的(25)进行大力保护。A、易使用B、易损坏C、易开发D、易复制标准答案:D知识点解析:暂无解析8、A、技术B、版权C、开发D、使用说明标准答案:B知识点解析:软件本身是无形产品,只能借助其他媒介复制、传播。它的本性决定了其易复制性,因此软件的侵权行为较难控制。为了软件产业的健康发展,应当大力保护软件版权。某软件公司为确保其产品的市场竞争力,对其公司的职工进行了保密的约束,但是该公司某开发人员将该应用软件的程序设计技巧和算法(由该开发人员设计)作为论文向社会发表。该软件开发人员(32),而该软件公司丧失了这套应用软件的(33)。9、某软件公司为确保其产品的市场竞争力,对其公司的职工进行了保密的约束,但是该公司某开发人员将该应用软件的程序设计技巧和算法(由该开发人员设计)作为论文向社会发表。该软件开发人员(32),而该软件公司丧失了这套应用软件的(33)。A、未丧失了计算机软件著作权B、丧失计算机软件著作权C、丧失了发表权D、丧失了专利权标准答案:A知识点解析:暂无解析10、A、专利权B、计算机软件著作权C、发表权D、商业秘密标准答案:D知识点解析:《计算机软件保护条例》第六条规定:“本条例对软件著作权的保护不延及开发软件所用的思想、处理过程、操作方法或者数学概念等。”题中的“程序设计技巧和算法”不属于著作权保护的范围,不属于丧失的范畴。《反不正当竞争法》规定,商业秘密是指不为公众所知悉、能为权利人带来经济利益、具有实用性并经权利人采取保密措施的技术信息和经营信息。二、中文选择题(含3小题)(本题共9题,每题1.0分,共9分。)面向对象程序设计语言不同于其它语言的主要特点是(23)。衡量一个面向对象程序设计语言成熟与否的一个重要标志是是否建立了丰富的(24)。一种在类及子类之间自动地共享数据和方法的机制是(25)。11、面向对象程序设计语言不同于其它语言的主要特点是(23)。衡量一个面向对象程序设计语言成熟与否的一个重要标志是是否建立了丰富的(24)。一种在类及子类之间自动地共享数据和方法的机制是(25)。A、多态性B、消息传递C、继承性D、静态联编标准答案:C知识点解析:暂无解析12、A、函数库B、类库C、类型库D、方法库标准答案:B知识点解析:暂无解析13、A、调用B、引用C、消息传递D、继承标准答案:D知识点解析:面向对象程序设计语言相对于面向过程的程序设计语言有了很大的改进,它的主要特点是继承性、封装性、多态性,但继承性最具有特色,也是与传统方法最不同的一个,继承实际上是存在于面向对象程序中两个类之间的一种关系。当一个类拥有另一个类的所有数据和操作,就称这两个类之间具有继承关系。被继承的类称为父类或超类,继承了父类或超类的类成为子类。是否建立了丰富的类库是衡量一个面向对象程序设计语言成熟与否的一个重要标志。当程序中存在(26)时,程序运行容易陷于死循环。C语言规定,函数定义及函数调用应该遵循的原则是(27)。求解同一个问题,采用递归方式编写的程序相对于递推方式的程序执行效率较低的原因是(28)。14、当程序中存在(26)时,程序运行容易陷于死循环。C语言规定,函数定义及函数调用应该遵循的原则是(27)。求解同一个问题,采用递归方式编写的程序相对于递推方式的程序执行效率较低的原因是(28)。A、语法错误B、静态的语义错误C、词法错误D、动态的语义错误标准答案:D知识点解析:暂无解析15、A、不可以进行函数的嵌套定义,可以进行函数的嵌套调用B、可以进行函数的嵌套定义,不可以进行函数的嵌套调用C、既可以进行函数的嵌套定义,也可以进行函数的嵌套调用D、既不能进行函数的嵌套定义,也不能进行函数的嵌套调用标准答案:A知识点解析:暂无解析16、A、递归程序经编译后形成较长目标代码,所以需要较多的运行时间B、递归程序执行时多次复制同一段目标代码占用了较多的时间C、递归程序执行时一系列的函数调用及返回占用了较多的时间D、递归程序执行过程中重复存取相同的数据占用了较多的时间标准答案:C知识点解析:编译分析过程能够分析出语法错误和词法错误。一般情况下静态的语义错误不会造成死循环,造成程序的死循环通常是动态的语义错误。C语言允许嵌套调用,即允许在一个函数中调用另一个函数,而且允许在第二个函数中进一步调用其他函数;但是它不允许不允许嵌套定义,即在一个函数定义中定义其他函数。递归程序因为在执行过程中引起一系列的函数调用和返回,需要较多的时间开销以及空间开销,因此与实现同功能的非递归函数相比具有较低的执行效率。面向对象程序设计的基本逻辑构件是(46),用(47)来描述具有共同特征的一组对象;以(48)为共享机制,共享类中的方法和数据。17、面向对象程序设计的基本逻辑构件是(46),用(47)来描述具有共同特征的一组对象;以(48)为共享机制,共享类中的方法和数据。A、模块B、对象C、结构D、类标准答案:B知识点解析:暂无解析18、A、对象B、类型C、类D、数组标准答案:C知识点解析:暂无解析19、A、成员函数B、数据成员C、引用D、继承标准答案:D知识点解析:面向对象程序设计中,可以一组具有共同特征的事物抽象为类,基本的逻辑构件就是这些类的实例,即对象。当一个类拥有另一个类的所有数据和操作,就称这两个类之间具有继承关系。被继承的类称为父类或超类,继承了父类或超类的类成为子类。软件水平考试(初级)程序员上午(基础知识)章节练习试卷第2套一、中文选择题(本题共15题,每题1.0分,共15分。)1、下列哪个方法防止优盘感染病毒?(1)A、保持优盘的清洁B、定期对优盘进行格式化C、对优盘进行写保护D、不要把优盘与有病毒的优盘放在一起标准答案:C知识点解析:计算机病毒实际上是一种人为制造的能够入侵计算机系统的有害程序。在使用优盘的时候,最有效的防病毒方法就是使用写保护,这样就切断了病毒程序的感染路径。定期对优盘进行格式化的确可以清除病毒,但代价太大,如果优盘里有重要资料的话也会同病毒一并被消灭了,因此对优盘进行写保护是最行之有效的方法。2、下列各项中,计算机病毒不具备的特征是(2)。A、潜伏性B、激发性C、传播性D、免疫性标准答案:D知识点解析:计算机病毒的基本特征是破坏性、传染性、寄生性、隐蔽性、欺骗性。它可以潜伏很久,在条件满足的时候激发病毒,但计算机病毒不像生物学上的病毒那样,染病后可以获得免疫性,它只是一段程序而已,只要疏于防范,它完全可以重复的使一台机器感染。3、数字签名技术不能解决下列的(14)行为。A、抵赖B、伪造C、篡改D、窃听标准答案:D知识点解析:数字签名技术可以用于对用户身份或信息的真实性进行验证与鉴定,它通过使用数字摘要算法、公开钥算法保证数据传输的不可抵赖性、真实性、完整性,但是不能保证密文不被第三方获取,所以数字签名技术不能解决窃听行为。4、在网络通信中,(18)服务是指当消息发出后,接收方能确认消息确实是由声称的发送方发出的;同样,当消息接收到后,发送方能确认消息确实已由声称的接收方收到。A、数据保密性B、不可否认性C、数据完整性D、访问控制标准答案:B知识点解析:不可否认性服务是指从技术上实现保证实体对他们的行为的诚实性,即用数字签名的方法防止其对行为的否认。其中,人们更关注的是数据采源的不可否认性和接收的不可否认性,即用户不能否认敏感信息和文件不是来源于他;以及接收后的不可否认性,即用户不能否认他已接收到了敏感信息和文件。此外还有其他类型的不可否认性,传输的不可否认性、创建的不可否认性和同意的不可否认性等等。5、OSI(OpenSystemInterconnection)安全体系方案X.800将安全服务定义为通信开放系统协议层提供的服务,用来保证系统或数据传输有足够的安全性。X.800定义了五类可选的安全服务。下列相关的选项中不属于这五类安全服务的是(19)。A、数据传输B、访问控制C、认证D、数据保密性标准答案:A知识点解析:X.800定义的5类安全服务是认证服务、访问控制服务、数据保密性服务、数据完整性服务、不可否认性服务。6、下列叙述中,错误的是(20)。A、DES属于对称密码体制B、RSA属于公钥密码体制,其安全性基于大数因子分解困难C、公钥密码体制的密钥管理较为容易D、公钥密码体制中,加密和解密采用不同的密钥,解密密钥是向社会公开的标准答案:D知识点解析:公开钥密码体制下,用户的公钥是公开的,由认证中心统一管理,用户只需保管自己的私钥。该体制下,加密和解密使用不同的密钥,公钥加密的密文只能用对应的私钥解密,私钥加密的密文只能用对应的公钥解密。即公钥和私钥都可以用做加密密钥或者解密密钥。7、(21)制定国际标准的组织。A、CJBB、IEEEC、ANSID、ISO标准答案:D知识点解析:ISO是国际标准化组织(InternationalOrganizationforStandardization)的简称,它是世界上最大的国际标准化组织之一。8、我国国家标准分为强制性国家标准和推荐性国家标准,推荐性国家标准的代号为(22)。A、ZBB、GBC、GB/TD、QB标准答案:C知识点解析:CB是强制性国家标准的代号,GB/T是推荐性国家标准的代号。9、(23)是关于质量管理体系的一系列标准,有助于企业交付符合用户质量要求的产品。A、ISO1400B、CMMC、ISO9000D、SW-CMM标准答案:C知识点解析:ISO9000由国际标准化组织(ISO)制定,它不是指一个标准,而是一族标准的统称。“ISO9000族标准”指由ISO/TC176制定的所有国际标准。TC176即ISO中第176个技术委员会,全称是“质量保证技术委员会”,1987年更名为“质量管理和质量保证技术委员会”。TC176专门负责制定质量管理和质量保证技术的标准。10、如果用户和软件开发商双方商定的协议中未涉及软件著作权归属,则软件著作权属于(26)所有。A、用户B、软件开发商C、用户、软件开发商双方D、无法确认标准答案:B知识点解析:我国的《计算机软件保护条例》第十一条规定:接受他人委托开发的软件,其著作权的归属由委托人与受托人签订书面合同约定;无书面合同或者合同未作明确约定的,其著作权由受托人享有。11、在现代社会中,属于人类赖以生存与发展的战略资源的是(27)。A、物质和能源资源B、自然资源和人文资源C、物质、能源和信息资源D、可再生资源和非再生资源标准答案:C知识点解析:物质资源、能源资源和信息资源构成了战略资源。其中物质资源又分为可再生的和不可再生的。12、信息与决策的关系:信息是决策的(28),决策是对信息的判断和应用。A、存储和使用,B、收集和维护C、基础和依据D、加工和处理标准答案:C知识点解析:“信息是决策的基础和依据,决策是对信息的判断和应用”是信息和决策的关系。13、某软件公司开发的软件产品,在我国受法律保护的依据是(29)。A、《中华人民共和国合同法》B、《中华人民共和国专利法》C、《中华人民共和国商标法》D、《中华人民共和国著作权法》标准答案:D知识点解析:《中华人民共和国著作权法》保护软件的知识产权。14、某电视台拟将他人已出版的<<天下厨艺>>VCD光盘在该电视台的“天天厨艺”节日中播放,那么,该电视台(30)。A、可以不经该VCD光盘出版者许可,但必须向其支付报酬B、既须经该VCD光盘出版者许可,也须向其支付报酬C、既不必经该VCD光盘出版者许可,也不必向其支付报酬D、只须经该VCD光盘出版者许可,但不必向其支付报酬标准答案:B知识点解析:《中华人民共和国著作权法》第四十五条规定:电视台播放他人的电影作品和以类似摄制电影的方法创作的作品、录像制品,应当取得制片者或者录像制作者许可,并支付报酬;播放他人的录像制品,还应当取得著作权人许可,并支付报酬。15、(31)是主要联系高层管理人员的信息系统。A、MIS(管理信息系统)B、TPS(事务处理系统)C、EDPS(电子数据处理系统)D、DSS(决策支持系统)标准答案:D知识点解析:MIS是利用数据库技术实现各级管理者的管理业务,在计算机上进行各种事务处理工作。决策支持系统(DSS)则是要为各级管理者提供辅助决策的能力,它是主要联系高层管理人员的信息系统。二、中文选择题(含2小题)(本题共10题,每题1.0分,共10分。)JACKSON方法是在软件开发过程中常用的方法,使用JACKSON方法时可以得到(7),使用JACKSON方法时可以实现(8)。16、JACKSON方法是在软件开发过程中常用的方法,使用JACKSON方法时可以得到(7),使用JACKSON方法时可以实现(8)。A、程序流程图B、具体的语言程序C、模块结构图及模块的功能说明书D、分层数据流图标准答案:A知识点解析:暂无解析17、A、从数据结构导出程序结构B、从数据流图导出初始结构图C、从模块结构导出数据结构D、从模块结构导出程序结构标准答案:A知识点解析:Jackson方法由M.Jackson提出的,Jackson方法的基本思想和SD方法是一致的,但它不是面向数据流,而是面向数据结构的,在数据结构基础上建立程序结构。该方法特别使用于设计企事业管理一类的规模适中的数据处理系统。应用该方法的基本步骤依次是建立系统的数据结构;以数据结构为基础,对应地建立程序结构;列出程序中要用到的各种基本操作,再将这些操作分配到程序结构中适应的模块。数据流图中有四种基本图形元素,其中→表示(31)。□表示(32)。18、数据流图中有四种基本图形元素,其中→表示(31)。□表示(32)。A、加工B、外部实体C、数据流D、存储标准答案:C知识点解析:暂无解析19、A、加工B、源/宿C、数据流D、存储标准答案:B知识点解析:数据流图中四种基本图形元素的含义是:圆圈表示加工,箭头表示数据流,方框表示源/宿,双横线加进入/离开箭头表示数据存储。软件使不同的系统约束条件和用户需求得到满足的容易程度是指软件(34)。在不合法的输入下,软件仍然能继续正常工作的能力称为(35)。20、软件使不同的系统约束条件和用户需求得到满足的容易程度是指软件(34)。在不合法的输入下,软件仍然能继续正常工作的能力称为(35)。A、兼容性B、可移植性C、可转换性D、可接近性标准答案:A知识点解析:暂无解析21、A、可使用性B、可接近性C、可靠性D、稳定性标准答案:D知识点解析:兼容性的含义是软件使不同的系统约束条件和用户需求得到满足的容易程度。可移植性指软件从一个系统转换到另一个系统的难易程度。可转换性,指其可以很容易从一个平台转到另一个平台上。可使用性指软件在需要它投入使用时能实现其指定的功能的概率。可靠性指在规定条件下和规定时间内,实现所指定的功能的概率。根据模块的设计原则(40),对于模块的控制范围和模块的作用范围,理想的情况是(41)。22、根据模块的设计原则(40),对于模块的控制范围和模块的作用范围,理想的情况是(41)。A、模块的内聚性高,模块之间的耦合度高B、模块的内聚性低,模块之间的耦合度低C、模块的内聚性低,模块之间的耦合度高D、模块的内聚性高,模块之间的耦合度低标准答案:D知识点解析:暂无解析23、A、模块的作用范围应在控制范围之内B、模块的控制范围应在作用范围之内C、模块的作用范围与控制范围交叉D、模块的作用范围与控制范围分离标准答案:A知识点解析:模块设计的原则之一是使模块的内聚性高,模块间的耦合度低。模块的控制范围包括它本身及它所有的从属模块,模块的作用范围是指模块内一个判定的作用范围,凡是受到这个判定影Q向的所有模块都属于这个判定的作用范围。若模块的作用范围完全在控制范围之内,即该模块与其他模块之间是松耦合,则该设计中模块的内聚性高,耦合度低。进行软件测试是为了(43)。(44)方法常用于单元测试24、进行软件测试是为了(43)。(44)方法常用于单元测试A、证明软件的正确性B、证明软件系统中存在错误C、找出软件系统中存在的所有错误D、尽可能多地发现软件系统中的错误和缺陷标准答案:D知识点解析:暂无解析25、A、采用黑盒测试,辅之以白盒测试B、采用白盒测试,辅之以黑盒测试C、只使用白盒测试D、只使用黑盒测试标准答案:B知识点解析:任何软件系统都存在或多或少的bus,但是不可能找出一个软件系统的所有错误。软件测试的目的是尽可能多地发现软件系统中的错误或缺陷。单元测试的对象是软件设计的最小单位——模块。单元测试的依据是详细设计描述,单元测试应对模块内所有重要的控制路径设计测试用例,以便发现模块内部的错误。单元测试多采用白盒测试技术,系统内多个模块可以并行地进行单元测试。三、流程图题(本题共25题,每题1.0分,共25分。)阅读下列算法说明和流程图,将应填入(n)处的字句写在对应栏内。【算法说明】本算法按照算符优先关系,实现对算术四则混合运算表达式(可含小括号)的求值。处理对象是以字符串形式给出的、语法正确且不含变量的整数表达式。算符优先关系见表5.1(§1,§2为按顺序出现的两个运算符)说明:“#”是假设的表达式开始符和结束符,不可用。为实现算法,使用了两个堆栈分别寄存运算符和运算数(中间结果值)。算法基本思路如下:首先置操作数栈S1为空,表达式起始符“#”设为运算符栈S2的栈底元素;依次读入表达式的各符号,若是数字字符则连接在一起转换为int型操作数进S1栈;若是运算符§2,则和S2栈的栈顶运算符51比较优先级后作相应操作,直至整个表达式求值结束。算法流程图5.1如下:【问题】请将流程图补充完整。26、阅读下列算法说明和流程图,将应填入(n)处的字句写在对应栏内。【算法说明】本算法按照算符优先关系,实现对算术四则混合运算表达式(可含小括号)的求值。处理对象是以字符串形式给出的、语法正确且不含变量的整数表达式。算符优先关系见表5.1(§1,§2为按顺序出现的两个运算符)说明:“#”是假设的表达式开始符和结束符,不可用。为实现算法,使用了两个堆栈分别寄存运算符和运算数(中间结果值)。算法基本思路如下:首先置操作数栈S1为空,表达式起始符“#”设为运算符栈S2的栈底元素;依次读入表达式的各符号,若是数字字符则连接在一起转换为int型操作数进S1栈;若是运算符§2,则和S2栈的栈顶运算符51比较优先级后作相应操作,直至整个表达式求值结束。算法流程图5.1如下:【问题】请将流程图补充完整。标准答案:(1)定位至表达式字串头部知识点解析:此处是整个算法的初始条件,定位至表达式字串头部实质上是定位到“#”字符。27、标准答案:(2)S1弹栈并输出知识点解析:此处是整个算法结束之前输出计算结果。28、标准答案:(3)§1<§2知识点解析:当运算符1的优先级小于运算符2的优先级时,此时不能进行运算,须将当前字符入栈并定位下一字符。29、标准答案:(4)§1=§2知识点解析:运算符优先级相等时只有两个运算符都是括号的情况,所以此时完成括号匹配。30、标准答案:(5)运算结果入栈知识点解析:当运算符1的优先级大于运算符2的优先级时,表示前面的运算符1已经可以运算了,所以此处进行运算并将结果入栈。阅读下列算法说明和算法流程,将应填入(n)处的字句写在对应栏内。【算法说明】程序实现了常见的猜数字游戏。游戏开始时由程序自动产生一个1到100的随机数,接收用户输入,并给出提示信息,直至用户猜对。用户猜对后,显示猜测次数,并提供“重新开始”和“退出”功能。算法采用两层循环实现。外层循环采用do-while循环,由循环条件控制是否重新开始。内层采用for循环,用于判断用户的每次输入。m是随机产生的整数,键盘输入是字符串类型变量,n是整型变量。【问题1】内循环还需要一个变量,其作用为(1)。【问题2】请将流程图5.2补充完整。31、阅读下列算法说明和算法流程,将应填入(n)处的字句写在对应栏内。【算法说明】程序实现了常见的猜数字游戏。游戏开始时由程序自动产生一个1到100的随机数,接收用户输入,并给出提示信息,直至用户猜对。用户猜对后,显示猜测次数,并提供“重新开始”和“退出”功能。算法采用两层循环实现。外层循环采用do-while循环,由循环条件控制是否重新开始。内层采用for循环,用于判断用户的每次输入。m是随机产生的整数,键盘输入是字符串类型变量,n是整型变量。【问题1】内循环还需要一个变量,其作用为(1)。【问题2】请将流程图5.2补充完整。标准答案:(1)记录用户猜测次数知识点解析:内循环必须有一个整型变量来记录用户猜测次数。32、标准答案:(2)产生1到100之间的随机数m知识点解析:此处是外循环的开始条件,应该是产生随机数。33、标准答案:(3)输出提示知识点解析:当用户猜测的数字与随机数不相等时,此时需要提示用户再次输入。34、标准答案:(4)将键盘输入转换位int型n知识点解析:只有将输入字符串转换成int型,两个数才可以比较。35、标准答案:(5)n=m知识点解析:此时用户猜对,输出提示信息,准备进入下一次循环。阅读下列算法说明和算法,将应填入(n)处的字句写在对应栏内。【算法说明】为便于描述屏幕上每个像素的位置,在屏幕上建立平面直角坐标系。屏幕左上角的像素设为原点,水平向右方向设为x轴,垂直向下方向设为y轴。设某显示器在每条水平线和每条垂直线上都有128个像素。这样,屏幕上的每个像素可用坐标(x,y)来描述其位置,其中x和y都是整数,0≤x≤127,0≤y≤127。现用一维数组MAP来存储整个屏幕显示的位图信息。数组的每个元素有16位二进位,其中每位对应一个像素,“1”表示该像素“亮”,“0”表示该像素“暗”。数组MAP的各个元素与屏幕上的像素相对应后,其位置可排列如下:MAP(0),MAP(1),……,MAP(7)MAP(8),MAP(9),....,MAP(15)MAP(1016),MAP(1017),……,MAP(1023)下述算法可根据用户要求,将指定坐标(x,y)上的像素置为“亮”或“暗”。在该算法中,变量X,Y,V,S,K都是16位无符号的二进制整数。数组BIT中的每个元素BIT(K)(K=0,…,15)的值是左起第K位为1,其余位均为0的16位无符号二进制整数,即BIT(K)的值为215-k。【算法】第1步、根据用户指定像素的位置坐标(x,y),算出该像素的位置所属的数组元素MAP(V)。这一步的具体实现过程如下:1、将x送变量X,将y送变量Y;2、将Y(1)移3位,仍存入变量Y;3、将X右移(2)位,并存入变量S;4、计算Y+S,存入变量V,得到像素的位置所属的数组元素MAP(V)。第2步、算出指定像素在MAP(V)中所对应的位置K(K=0,…,15)。这一步的具体实现过程如下:将变量X与二进制数1111进行逻辑(3)运算,并存入变量K。第3步、根据用户要求将数组元素MAP(V)左起第K位设置为“1”或“0”。这一步的具体实现过程如下:1、为在指定像素置“亮”,应将MAP(V)与(4)进行逻辑或运算,并存入MAP(V)。2、为在指定像素置“暗”,应先将BIT(K)各位(5),再将MAP(V)与BIT(K)进行逻辑与运算,并存入MAP(V)。36、阅读下列算法说明和算法,将应填入(n)处的字句写在对应栏内。【算法说明】为便于描述屏幕上每个像素的位置,在屏幕上建立平面直角坐标系。屏幕左上角的像素设为原点,水平向右方向设为x轴,垂直向下方向设为y轴。设某显示器在每条水平线和每条垂直线上都有128个像素。这样,屏幕上的每个像素可用坐标(x,y)来描述其位置,其中x和y都是整数,0≤x≤127,0≤y≤127。现用一维数组MAP来存储整个屏幕显示的位图信息。数组的每个元素有16位二进位,其中每位对应一个像素,“1”表示该像素“亮”,“0”表示该像素“暗”。数组MAP的各个元素与屏幕上的像素相对应后,其位置可排列如下:MAP(0),MAP(1),……,MAP(7)MAP(8),MAP(9),....,MAP(15)MAP(1016),MAP(1017),……,MAP(1023)下述算法可根据用户要求,将指定坐标(x,y)上的像素置为“亮”或“暗”。在该算法中,变量X,Y,V,S,K都是16位无符号的二进制整数。数组BIT中的每个元素BIT(K)(K=0,…,15)的值是左起第K位为1,其余位均为0的16位无符号二进制整数,即BIT(K)的值为215-k。【算法】第1步、根据用户指定像素的位置坐标(x,y),算出该像素的位置所属的数组元素MAP(V)。这一步的具体实现过程如下:1、将x送变量X,将y送变量Y;2、将Y(1)移3位,仍存入变量Y;3、将X右移(2)位,并存入变量S;4、计算Y+S,存入变量V,得到像素的位置所属的数组元素MAP(V)。第2步、算出指定像素在MAP(V)中所对应的位置K(K=0,…,15)。这一步的具体实现过程如下:将变量X与二进制数1111进行逻辑(3)运算,并存入变量K。第3步、根据用户要求将数组元素MAP(V)左起第K位设置为“1”或“0”。这一步的具体实现过程如下:1、为在指定像素置“亮”,应将MAP(V)与(4)进行逻辑或运算,并存入MAP(V)。2、为在指定像素置“暗”,应先将BIT(K)各位(5),再将MAP(V)与BIT(K)进行逻辑与运算,并存入MAP(V)。标准答案:(1)左知识点解析:暂无解析37、标准答案:(2)4知识点解析:暂无解析38、标准答案:(3)乘知识点解析:暂无解析39、标准答案:(4)BIT(K)知识点解析:暂无解析40、标准答案:(5)取反知识点解析:由于每一行像素占用8个数组元素,所以第y行的像素占用数组的第8“y到8“y+7号元素。于是y需要乘以8存入变量Y,即左移3位,(1)处填左。x表示y行上的第x列像素,因为每个数组元素表示16个像素,所以需要将x除以16,得到所在数组元素位置。即右移4位,(2)处填4。第2步,X的后四位即表示像素在MAP(V)中所对应的位置,因此需要取X的后4位送入K即可。(3)处填乘。第3步,因为0和1与1逻辑或的结果都是1,而与0逻辑或的结果不变。所以将MAP(V)与BIT(K)进行逻辑或(加),即可将MAP(V)指定位置“1”,(4)处填BIT(K)。0和1与0逻辑与的结果都是0,而与1逻辑与的结果不变,所以将MAP(V)与取反后的BIT(K)进行逻辑与(乘),即可将MAP(V)指定位置“0”。阅读下列算法说明和算法,将应填入(n)处的字句写在答卷的对应栏内。【算法说明】某英汉词典文件包含N个记录(N>1),每个记录有两个字段:一个是英文单词,另一个是相应的汉语解释。各个记录按英文单词的词典顺序排列,各英文单词并不重复。本算法用于维护、更新该英汉词典文件。维护、更新的方法是:首先输入一个英文单问及其汉语解释,然后在该词典中查找输入的英文单词,若找到,则用输入的汉语解释更新原有的解释;若找不到,则需要将输入的英文单词及其汉语解释插入到该词典的适当位置,使各记录仍按英文单词的词典顺序排列。【算法】第一步读入英汉词典文件,并将读入的N个英文单词依次存放在字符串数组ENGLISH中,将相应的汉语解释依次存放在字符串数组CHN中。数组元素CHN(i)给出了数组元素ENGLISH(i)的解释。第二步输入英文单词及其汉语解释,将它们分别存放在字符串变量E和C中。若E为空串或都是空格,则转向第四步。第三步根据变量E的值,用二分法在数组ENGLISH中查找。具体步骤如下:1.1→L,N→H2.INT((L+H)/2)→K3.若E=ENGLISH(K),则C→(1),转向第二步若E<ENGLISH(K),则K-1→H;若E>ENGLISH(K),则K+1→(2)4.若H<L则对I=N,L,-1(始值,终值,增量)循环执行:ENGLISH(1)→ENGLISH(I+1)CHN(I)→CHN(I+1)然后,将E和C分别存入(3)和(4),N+1→N最后转向第二步否则,转向(5)第四步将数组ENGLISH和CHN输出,形成新的英汉词典文件,算法结束。41、阅读下列算法说明和算法,将应填入(n)处的字句写在答卷的对应栏内。【算法说明】某英汉词典文件包含N个记录(N>1),每个记录有两个字段:一个是英文单词,另一个是相应的汉语解释。各个记录按英文单词的词典顺序排列,各英文单词并不重复。本算法用于维护、更新该英汉词典文件。维护、更新的方法是:首先输入一个英文单问及其汉语解释,然后在该词典中查找输入的英文单词,若找到,则用输入的汉语解释更新原有的解释;若找不到,则需要将输入的英文单词及其汉语解释插入到该词典的适当位置,使各记录仍按英文单词的词典顺序排列。【算法】第一步读入英汉词典文件,并将读入的N个英文单词依次存放在字符串数组ENGLISH中,将相应的汉语解释依次存放在字符串数组CHN中。数组元素CHN(i)给出了数组元素ENGLISH(i)的解释。第二步输入英文单词及其汉语解释,将它们分别存放在字符串变量E和C中。若E为空串或都是空格,则转向第四步。第三步根据变量E的值,用二分法在数组ENGLISH中查找。具体步骤如下:1.1→L,N→H2.INT((L+H)/2)→K3.若E=ENGLISH(K),则C→(1),转向第二步若E<ENGLISH(K),则K-1→H;若E>ENGLISH(K),则K+1→(2)4.若H<L则对I=N,L,-1(始值,终值,增量)循环执行:ENGLISH(1)→ENGLISH(I+1)CHN(I)→CHN(I+1)然后,将E和C分别存入(3)和(4),N+1→N最后转向第二步否则,转向(5)第四步将数组ENGLISH和CHN输出,形成新的英汉词典文件,算法结束。标准答案:(1)CHN(K)知识点解析:暂无解析42、标准答案:(2)L知识点解析:暂无解析43、标准答案:(3)ENGLISH(L)或等价表达式知识点解析:暂无解析44、标准答案:(4)CHN(L)或等价表达式知识点解析:暂无解析45、标准答案:(5)2)知识点解析:(1)表示找到英文单词,写入汉语意思即可;H,L分别是二分法查找的上界和下界,所以(2)应填入L。(3)和(4)处是将L之后的元素依次后移以后,将E和C分别存入L处,所以(3)和(4)处应分别填入ENGLISH(L)和CHN(L)或其他等价表达式,比如ENGLISH(H+1)。(5)处是H>L。这说明查找表未空,需要转向2.继续查找。阅读下列说明、流程图和算法,将应填入(n)处的字句写在对应栏内。【流程图说明】下图所示的流程图5.3用N-S盒图形式描述了数组Array中的元素被划分的过程。其划分方法;以数组中的第一个元素作为基准数,将小于基准数的元素向低下标端移动,而大于基准数的元素向高下标端移动。当划分结束时,基准数定位于Array[i],并且数组中下标小于i的元素的值均小于基准数,下标大于i的元素的值均大于基准数。设数组A的下界为low,上界为high,数组中的元素互不相同。【算法说明】将上述划分的思想进一步用于被划分出的数组的两部分,就可以对整个数组实现递增排序。设函数intp(intArray[],intlow,inthigh)实现了上述流程图的划分过程并返回基准数在数组Array中的下标。递归函数voidsort(intArray[],intL,intH)的功能是实现数组Array中元素的递增排序。【算法】voidsort(intArray[],intL,intH){if(L<H){k=p(Array,L,H);/*p()返回基准数在数组Array中的下标*/sort((4));/*小于基准数的元素排序*/sort((5));/*大于基准数的元素排序*/}}46、阅读下列说明、流程图和算法,将应填入(n)处的字句写在对应栏内。【流程图说明】下图所示的流程图5.3用N-S盒图形式描述了数组Array中的元素被划分的过程。其划分方法;以数组中的第一个元素作为基准数,将小于基准数的元素向低下标端移动,而大于基准数的元素向高下标端移动。当划分结束时,基准数定位于Array[i],并且数组中下标小于i的元素的值均小于基准数,下标大于i的元素的值均大于基准数。设数组A的下界为low,上界为high,数组中的元素互不相同。【算法说明】将上述划分的思想进一步用于被划分出的数组的两部分,就可以对整个数组实现递增排序。设函数intp(intArray[],intlow,inthigh)实现了上述流程图的划分过程并返回基准数在数组Array中的下标。递归函数voidsort(intArray[],intL,intH)的功能是实现数组Array中元素的递增排序。【算法】voidsort(intArray[],intL,intH){if(L<H){k=p(Array,L,H);/*p()返回基准数在数组Array中的下标*/sort((4));/*小于基准数的元素排序*/sort((5));/*大于基准数的元素排序*/}}标准答案:(1)j←j-1知识点解析:暂无解析47、标准答案:(2)i←i+1知识点解析:暂无解析48、标准答案:(3)Array[i]←pivot或Array[j]←pivot知识点解析:(1)处语句j从高到低移动一位,即j←j-1。(2)处是将一个元素移到左边后,移动i向高处寻找一个较大数,即i←i+10(3)处是移动结束后,将pivot放到正确的位置,即填入Array[i]←pivot或Array[j]←pivot。49、标准答案:(4)A,L,k-1知识点解析:暂无解析50、标准答案:(5)Array,k+1,H知识点解析:(4)处对小于基准数的元素进行递归调用sort排序,应填入Array,L,k-1。(5)处对大于基准数的元素进行递归调用sort排序,应填入Array,k+1,H。软件水平考试(初级)程序员上午(基础知识)章节练习试卷第3套一、中文选择题(含3小题)(本题共22题,每题1.0分,共22分。)将十进制数-35化成二进制数原码、补码、反码表示(符号位和数值位共8位)。二进制数原码为:(6),补码为(7);反码为(8)1、将十进制数-35化成二进制数原码、补码、反码表示(符号位和数值位共8位)。二进制数原码为:(6),补码为(7);反码为(8)A、10100011B、10100001C、10110011D、100011标准答案:A知识点解析:暂无解析2、A、11010101B、1101110lC、10011101D、01011101标准答案:B知识点解析:暂无解析3、A、11011101B、1101110lC、11011100D、01011100标准答案:C知识点解析:-35=-(32+2+1),所以二进制原码为10100011,变反加一后得到补码11011101;将原码各位取反,得到反码11011100。已知x,z为带符号纯整数,y为带符号纯小数,而且[X]原=[Y]补=[Z]移=11111101,求出x、y、z的十进制真值:X=(98),Y=(99),Z=(100)。4、已知x,z为带符号纯整数,y为带符号纯小数,而且[X]原=[Y]补=[Z]移=11111101,求出x、y、z的十进制真值:X=(98),Y=(99),Z=(100)。A、-127B、125C、-125D、1标准答案:C知识点解析:暂无解析5、A、1/128B、-3/128C、-127/128D、125/128标准答案:B知识点解析:暂无解析6、A、-1B、125C、-125D、127标准答案:B知识点解析:X原码的首位是1,所以X为负数,化真值为十进制得到-01111101=-125。Y补码的首位为1,所以Y也是负数,Y的真值等于Y的补码减2,即1.1111101-10=-0.0000011=-3/128。对于定点整数Z=11111101-10000000=01111101=125。在常见的页面置换算法中,(29)选择暂时不使用的或者在最长时间内不再被访问的页面作为被淘汰的页面,(30)总是选择淘汰最先进入内存的页面,而(31)选择淘汰在最近一段时间内最久未用的页面。在一个请求分页系统中,假如系统分配给一个作业的物理块数为3,并且此作业的页面走向为3,4,3,2,1,3,5,1,4,3,1,3,则采用FIFO和LRU算法的缺页次数分别是(32),(33)。7、在常见的页面置换算法中,(29)选择暂时不使用的或者在最长时间内不再被访问的页面作为被淘汰的页面,(30)总是选择淘汰最先进入内存的页面,而(31)选择淘汰在最近一段时间内最久未用的页面。在一个请求分页系统中,假如系统分配给一个作业的物理块数为3,并且此作业的页面走向为3,4,3,2,1,3,5,1,4,3,1,3,则采用FIFO和LRU算法的缺页次数分别是(32),(33)。A、轮循置换算法B、最佳置换算法C、LRU算法D、FIFO置换算法标准答案:D知识点解析:暂无解析8、A、轮循置换算法B、最佳置换算法C、LRU算法D、FIFO置换算法标准答案:C知识点解析:暂无解析9、A、4B、5C、6D、7标准答案:C知识点解析:暂无解析10、A、4B、5C、6D、7标准答案:A知识点解析:最佳置换算法选择暂时不使用的或者在最长时间内不再被访问的页面作为被淘汰的页面,这是一种理想的算法,用于衡量其他算法的好坏。总是选择淘汰最先进入内存的页面的算法是先进先出置换算法(FIFO);最近最久未使用置换算法(LRU)选择淘汰在最近一段时间内最久未用的页面。采用FIFO算法时,在第5、6、7、9、11、12次页面请求时发生缺页中断,采用LRU算法时,在第5、7、9、10次页面请求时发生缺页中断。在网络分层体系结构中,第N层协议利用(45)提供的服务向(46)提供服务,对等实体的含义是(47),数据在同一个系统自上层传到下层,这种数据格式称为(48)。11、在网络分层体系结构中,第N层协议利用(45)提供的服务向(46)提供服务,对等实体的含义是(47),数据在同一个系统自上层传到下层,这种数据格式称为(48)。A、(N-1)层协议B、N层协议C、(N+1)层协议D、传输层标准答案:A知识点解析:暂无解析12、A、(N-1)层协议B、N层协议C、(N+1)层协议D、应用层标准答案:C知识点解析:暂无解析13、A、上下通信的实体B、执行同一层协议的实体C、执行同一协议的两个实体D、具有相同功能的实体标准答案:B知识点解析:暂无解析14、A、协议数据单元PDUB、服务数据单元SDUC、帧D、数据包标准答案:A知识点解析:网络分层体系结构中,每一层协议总是利用它下一层协议提供的服务来向它的上一层提供服务。协议中处于通信对端同一层的实体是对等实体。数据在协议中从上层传到下层时,每一层都要加上该层的封装信息,上一层的传输包做为下一层的协议数据单元PDU。Windows是常见的具有图形界面的(81)运行方式的操作系统。其中WindowsServer2003适用的场合是(82)。将正在运行的应用程序窗口最小化后,该应用程序处于(83)状态。(84)是在体系结构上采用了客户机/服务器模式的网络操作系统。15、Windows是常见的具有图形界面的(81)运行方式的操作系统。其中WindowsServer2003适用的场合是(82)。将正在运行的应用程序窗口最小化后,该应用程序处于(83)状态。(84)是在体系结构上采用了客户机/服务器模式的网络操作系统。A、单任务B、多任务C、单用户D、多用户标准答案:B知识点解析:暂无解析16、A、个人使用B、Web应用服务器C、实时计算D、科学计算标准答案:B知识点解析:暂无解析17、A、运行B、挂起C、停止D、退出标准答案:A知识点解析:暂无解析18、A、Windows95.B、WindowsNT.C、Windows98.D、Dos标准答案:B知识点解析:windows是具有图形操作界面的多任务操作系统。Windows程序窗口最小化后,会在后台继续运行。WindowsNT是在体系结构上采用了客户机/服务器模式的网络操作系统。安全管理可分为几个级别,若任何一个用户进入系统时都必须进行注册,通常将这一级安全管理称之为(192)安全管理。在进程状态转换过程中,可能会引起进程阻塞的原因是(193)。造成计算机系统出现死锁的原因是(194)。CPU不查询设备状态,当设备准备好肘,主动向CPU提出传输请求,CPU响应的信息交换方式是(195)方式。19、安全管理可分为几个级别,若任何一个用户进入系统时都必须进行注册,通常将这一级安全管理称之为(192)安全管理。在进程状态转换过程中,可能会引起进程阻塞的原因是(193)。造成计算机系统出现死锁的原因是(194)。CPU不查询设备状态,当设备准备好肘,主动向CPU提出传输请求,CPU响应的信息交换方式是(195)方式。A、文件级B、系统级C、用户级D、目录级标准答案:B知识点解析:暂无解析20、A、I/O完成B、时间片到C、执行V操作D、执行P操作标准答案:D知识点解析:暂无解析21、A、系统中有多个阻塞进程B、资源数大大小于系统中的进程数C、若干进程相互等待对方已占有的资源D、系统中多个进程同时申请的资源总数大大超过系统资源总数标准答案:C知识点解析:暂无解析22、A、中断B、DMAC、查询等待D、程序控制标准答案:A知识点解析:文件级指系统通过设定文件的属性控制用户的访问;目录级指系统通过设定目录的属性控制用户的访问;系统级指用户需事先注册。并配以密码,每次输入密码才能登录系统;用户级指系统对用户分类,并按每类用户划分权限。进程P操作表示申请一个资源,当当前没有可用资源时,进程会被阻塞。死锁是多个进程循环等待它方占有的资源而无限期僵持下去的局面。CPU不查询设备状态,当设备准备好时,主动向CPU提出中断请求,CPU响应的信息交换方式是中断方式。二、C语言试题(本题共51题,每题1.0分,共51分。)阅读下列函数说明和C代码,把应填入其中n处的字句写在答卷的对应栏内。23、【函数1.1说明】函数strcpy(char*destination,char*source)将字符串source复制到字符串destination。【函数1.1】voidstrcpy(char*destination,char*source){while(1);}标准答案:(1)*destination++=*source++或(*destination++=*source++)!=’\0’知识点解析:完成字符的复制,并使指针指向下一元素,元素为空时结束。24、【函数1.2说明】函数merge(inta[],intn,intb[],intm,int*c)是将两个从小到大有序数组a和b复制合并出一个有序整数序列c,其中形参n和m分别是数组a和b的元素个数。【函数1.2】voidmerge(inta[],intn,intb[],intm,int*c){inti,j;for(i=j:0;i<n&&j<m;)*c++=a[i]<b[j]?a[i++]:b[j++];while(i<n)(2);while(j<m)(3);}标准答案:(2)*c++=a[i++]知识点解析:当出现某一数组所有元素均已合并完成,则将另一数组其余元素直接进行复制。B串已复制完。25、标准答案:(3)*c++=b[j++]知识点解析:A串已复制完。26、【函数1.3说明】递归函数sum(inta[],intn)的返回值是数组a[]的前n个元素之和。【函数1.3】intsum(inta[],intn){if(4)returna[n-1]+sum(a,n-1);else(5);}标准答案:(4)n>0知识点解析:递归函数sum()完成数组n个元素的累加,n>0时,使用规模为n-1的函数进行递归。27、标准答案:(5)return0知识点解析:当n<=0时,返回0即可阅读下列函数说明和C代码,把应填入其中n处的字句写在答卷的对应栏内。【函数2说明】本题中的函数encode()和decode()分别实现对字符串的变换和复原。变换函数encode()顺序考察已知字符串的字符,按以下规则逐组生成新字符串:1.若已知字符串的当前字符不是数字字符,则复制该字符于新字符串中。2.若已知字符串的当前字符是一个数字字符,且它之后没有后继字符,则简单地将它自己复制到新字符串中。3.若已知字符串的当前字符是一个数字字符,并且还有后继字符,设该数字字符的面值为n,则将它的后续字符(包括后续字符是一个数字字符)重复复制n+1次到新字符串中。4.以上述一次变换为一组,在不同组之间另插入一个下划线字符“-”用于分隔。例如。encode()函数对字符串26a3t2的变换结果为666_a_tttt_2复原函数decode()做变换函数encode()的相反的工作。即复制不连续相同的单个字符,而将一组连续相同的字符(不超过10个)变换成一个用于表示重复次数的数字字符和一个重复出现的字符,并在复原过程中掠过变换函数为不同组之间添加的一个下划线字符。假定调用变换函数encode()时的已知字符串中不包含下划线字符。【函数2】intencode(char*instr,char*outstr){char*ip,*op,c;intk,n;ip=instr;op=outstr;while(*ip){if(1)&&*(ip+1){n=*ip-'0'+1;c=*++ip;for(k=0;k<=n;k++)(2);}else(3);*op++='-';ip++;}if(op>outstr)(4);*op='\0';returnop-outstr;}intdecode(char*instr,char*outstr){char*ip,*op,c;intn;ip=instr;op=outstr;while(*ip){c=*ip;n=0;while(*ip==c&&n<=10){ip++;n++;}if(5)*op++='0'+n-1;*op++=c;if(*ip=='_',)(6);}*op='\0';returnop-outstr;}28、阅读下列函数说明和C代码,把应填入其中n处的字句写在答卷的对应栏内。【函数2说明】本题中的函数encode()和decode()分别实现对字符串的变换和复原。变换函数encode()顺序考察已知字符串的字符,按以下规则逐组生成新字符串:1.若已知字符串的当前字符不是数字字符,则复制该字符于新字符串中。2.若已知字符串的当前字符是一个数字字符,且它之后没有后继字符,则简单地将它自己复制到新字符串中。3.若已知字符串的当前字符是一个数字字符,并且还有后继字符,设该数字字符的面值为n,则将它的后续字符(包括后续字符是一个数字字符)重复复制n+1次到新字符串中。4.以上述一次变换为一组,在不同组之间另插入一个下划线字符“-”用于分隔。例如。encode()函数对字符串26a3t2的变换结果为666_a_tttt_2复原函数decode()做变换函数encode()的相反的工作。即复制不连续相同的单个字符,而将一组连续相同的字符(不超过10个)变换成一个用于表示重复次数的数字字符和一个重复出现的字符,并在复原过程中掠过变换函数为不同组之间添加的一个下划线字符。假定调用变换函数encode()时的已知字符串中不包含下划线字符。【函数2】intencode(char*instr,char*outstr){char*ip,*op,c;intk,n;ip=instr;op=outstr;while(*ip){if(1)&&*(ip+1){n=*ip-’0’+1;c=*++ip;for(k=0;k<=n;k++)(2);}else(3);*op++=’-’;ip++;}if(op>outstr)(4);*op=’\0’;returnop-outstr;}intdecode(char*instr,char*outstr){char*ip,*op,c;intn;ip=instr;op=outstr;while(*ip){c=*ip;n=0;while(*ip==c&&n<=10){ip++;n++;}if(5)*op++=’0’+n-1;*op++=c;if(*ip==’_’,)(6);}*op=’\0’;returnop-outstr;}标准答案:(1)*ip>=’0’&&*ip<==’9’知识点解析:本小题部分判断字符是否是数字。29、标准答案:(2)*op++=c知识点解析:将n个c顺序写入op中。30、标准答案:(3)*op++=*ip知识点解析:当前字符不是数字,简单复制一次的情况。31、标准答案:(4)op--知识点解析:到op的最后了,往前移一个单元加入结束符。32、标准答案:(5)n>1知识点解析:判断n是否>1,即字符是否重复。33、标准答案:(6)ip++知识点解析:当前字符是下划线,跳过即可。阅读下列程序说明和C代码,把应填入其中n处的字句写在答卷的对应栏内。【说明】程序利用选择排序算法对数组a中的N个整数按照从小到大的顺序排列,并将排序结果显示出来。【程序】#defineN10main(){void(1);inti,a[N];for(i=0;i<10,i++)/*输入*/scanf(“%d”,&a[i]);(2);for(i=0;i<N,i++)/*输出*/printf(“%3d”,a[i]);}voidselectSon(intx[],intn){inti,j,k,t;for(inti=0;(3);i++){k=i;for(j=i+1;j<n;j++)if(4)k=j;if(5){t=x[i];x[i]=x[k];x[k]=t;}}}34、阅读下列程序说明和C代码,把应填入其中n处的字句写在答卷的对应栏内。【说明】程序利用选择排序算法对数组a中的N个整数按照从小到大的顺序排列,并将排序结果显示出来。【程序】#defineN10main(){void(1);inti,a[N];for(i=0;i<10,i++)/*输入*/scanf(“%d”,&a[i]);(2);for(i=0;i<N,i++)/*输出*/printf(“%3d”,a[i]);}voidselectSon(intx[],intn){inti,j,k,t;for(inti=0;(3);i++){k=i;for(j=i+1;j<n;j++)if(4)k=j;if(5){t=x[i];x[i]=x[k];x[k]=t;}}}标准答案:(1)selectSort()知识点解析:main函数中对selectSort函数的调用在定义之前,所以要进行说明。35、标准答案:(2)selectSort(a,N)知识点解析:接收完用户输入之后,调用函数selectSort(a,N)。36、标准答案:(3)i<n-1知识点解析:共需要进行n-1次循环,所以i循环到n-1时结束。37、标准答案:(4)x[j]<x[k]知识点解析:k用于存放每轮比较时数值最小的元素的下标,当j处元素小于k处元素时,j赋给k。38、标准答案:(5)k!=i知识点解析:第一个元素x[i]不是最小元素时,交换x[i]和x[k]。阅读下列程序说明和C代码,把应填入其中n处的字句写在答卷的对应栏内。【说明】函数create能够建立具有任意行和任意列的动态二维整数数组。【函数4.1程序】#include“stdio.h”int**create(introw,intcol){int**x,i;x=(int**)(1);for((2))x[i]=(int*)malloc(col*sizeof(int));(3);}【函数4.2说明】函数main()能够判断输入年是否为闰年。【函数4.2程序】main(){intyear,n;scanf(“inputyear%d”,&year);n=((4)||(5));if(n==1)printf(“%disaleapyear\n”,year);elseprintf(“%disnotaleapyear\n”,year);}39、阅读下列程序说明和C代码,把应填入其中n处的字句写在答卷的对应栏内。【说明】函数create能够建立具有任意行和任意列的动态二维整数数组。【函数4.1程序】#include“stdio.h”int**create(introw,intcol){int**x,i;x=(int**)(1);for((2))x[i]=(int*)malloc(col*sizeof(int));(3);}【函数4.2说明】函数main()能够判断输入年是否为闰年。【函数4.2程序】main(){intyear,n;scanf(“inputyear%d”,&year);n=((4)||(5));if(n==1)printf(“%disaleapyear\n”,year);elseprintf(“%disnotaleapyear\n”,year);}标准答案:(1)malloc(row*sizeof(int))知识点解析:为行指针分配空间。40、标准答案:(2)i=0;i<row;i++知识点解析:为二维数组各行循环分配空间。41、标准答案:(3)return(x)知识点解析:返回生成的二维数组。42、标准答案:(4)year%4==0&&year%100!=0知识点解析:当年数可以被4整除而且不是整百年时,该年为闰年。如公元304年是闰年,而公元300年不是闰年。43、标准答案:(5)year%400==0知识点解析:被100整除而不能被400整除为平年;被100整除也可被400整除的为闰年。阅读下列程序说明和C代码,把应填入其中n处的字句写在对应栏内。【说明】下面的程序能够计算不同图形的面积。程序中把每个图形的数据定义成结构类型,利用共同体类型描述2种图形的数据。程序根据输入参数代表的图形类型,求出图形的面积并输出。【程序】structCircle{floatx,y;/*圆心位置*/floatr;/*圆半径*/};structRectangle{floatwidth;/*矩形宽*/floatlength;/*矩形长*/};unionshape{structCirclecircle;/*圆数据结构*/structRectanglerectangle;/*矩形数据结构*/};main(){unionshapea;floatarea;inti;printf(“inputnumber:1circle,2rectangle,3end\n”);scanf("%d",&i);while(1)/*循环接收输入,并计算输出*/{switch(i){case1:printf(“inputradius:\n”);scanf(“%f”,(2);/*共同体类型变量接收输入*/area=3.1415926*(3);printf(“theareaofcircle=%f\n”,area);break;case2:printf(“inputwidthandlength:\n”);seanf(“%f,%f”,(4);/*共同体类型变量接收输入*/。area=(5);printf(“theareaofrectangle=%f\n”,area);break;}printf(“inputnumber:1circle,2rectangle,3end\n”);scanf(“%d”,&i);}}44、阅读下列程序说明和C代码,把应填入其中n处的字句写在对应栏内。【说明】下面的程序能够计算不同图形的面积。程序中把每个图形的数据定义成结构类型,利用共同体类型描述2种图形的数据。程序根据输入参数代表的图形类型,求出图形的面积并输出。【程序】structCircle{floatx,y;/*圆心位置*/floatr;/*圆半径*/};structRectangle{floatwidth;/*矩形宽*/floatlength;/*矩形长*/};unionshape{structCirclecircle;/*圆数据结构*/structRectanglerectangle;/*矩形数据结构*/};main(){unionshapea;floatarea;inti;printf(“inputnumber:1circle,2rectangle,3end\n”);scanf("%d",&i);while(1)/*循环接收输入,并计算输出*/{switch(i){case1:printf(“inputradius:\n”);scanf(“%f”,(2);/*共同体类型变量接收输入*/area=3.1415926*(3);printf(“theareaofcircle=%f\n”,area);break;case2:printf(“inputwidthandlength:\n”);seanf(“%f,%f”,(4);/*共同体类型变量接收输入*/。area=(5);printf(“theareaofrectangle=%f\n”,area);break;}printf(“inputnumber:1circle,2rectangle,3end\n”);scanf(“%d”,&i);}}标准答案:(1)i!=3知识点解析:当用户输入i为3时,需要结束循环,程序执行结束。45、标准答案:(2)&a.circle.r知识点解析:将半径输入赋值给a的圆数据结构的r。46、标准答案:(3)a.circle.r*a.circle.r知识点解析:计算圆的面积,此处采用圆周率乘两次半径的方法计算。47、标准答案:(4)&a.rectangle.width,&a.rectangle.length知识点解析:当输入矩形的长宽。48、标准答案:(5)a.rectangle.width*a.rectangle.length知识点解析:计算矩形的面积,并输出结果。阅读下列程序说明和C程序,把应填入其中(n)处的字句,写在对应栏内。【程序说明】对角线下元素全为0的矩阵称为上三角矩阵,设对于一个n×n的上三角矩阵a,为节约存贮,只将它的上三角元素按行主序连续存放在数组b中。下面的函数trans在不引入工作数组的情况下,实现将a改为按列主序连续存放在数组b中。设n=5,b=(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15)经调用trans函数后,b变为b=(1,2,6,3,7,10,4,8,11,13,5,9,12,14,15)函数tans对数组元素的存贮位置作调整。调整过程中存在若干个循环传送链:b(i1)→b(i2)→b(ij)→b(i1)1≤j<n例如,考察调整后的数组元素b(2)(值为6),与该元素相关的位置调整将形成下面的循环传送链:b(2)→b(3)→b(6)→……→b(12)→b(9)→b(5)→b(2)关键是确定循环传送链的下标i1,i2,…,ij,以及在考察调整后的元素b(k)(k;3,4,…)时能判定b(k)是已被传送过的某传送链上的元素。函数ctr(k,n)计算调整后的数组b的第k个元素b(k)在原数组b中的位置,该位置作为函数ctr(k,n)的返回值。函数ctr根据k确定它在矩阵中的行号i和列号j(注意行号和列号均从0算起),然后按矩阵存放原则计算出它在b中的位置。【程序】trans(b,n)intn,b[]{intm,k,r,cc,rr;intw;m=(n+1)*n/2-4;k=2;while(m>0){r=ctr
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025版人工智能人才培养合作协议书范本
- 2024年粉煤灰资源供应专项协议版B版
- 2025版科技成果转化居间及知识产权法律服务合同3篇
- 2025版酒店投资纠纷解决协议范本3篇
- 课题申报书:大模型时代高校知识生产创新生态系统建构研究
- 2024年钢材供应与加工合同3篇
- 2025版文化遗址保护与修复工程劳务承包合同范本2篇
- 2024年股权转让协议:父子之间的权益分配
- 2024年甲乙双方关于城市商业综合体租赁合同
- 植树节主题环保创意产品设计竞赛
- 2024甘肃省建筑安全员-A证考试题库及答案
- 华中农业大学《操作系统实验》2021-2022学年第一学期期末试卷
- 国家开放大学电大11251丨操作系统(统设课)期末终考题库及答案
- 2024年贵州省中考数学真题含解析
- 东南大学版三基内科
- 多发性神经病护理
- 【MOOC】线性代数-浙江大学 中国大学慕课MOOC答案
- 开门红包费用申请
- 区块链原理与实践全套完整教学课件
- 运动神经元病小讲课
- 工会的财务管理制度〔13篇〕
评论
0/150
提交评论