(2021年)内蒙古自治区呼伦贝尔市全国计算机等级考试数据库技术模拟考试(含答案)_第1页
(2021年)内蒙古自治区呼伦贝尔市全国计算机等级考试数据库技术模拟考试(含答案)_第2页
(2021年)内蒙古自治区呼伦贝尔市全国计算机等级考试数据库技术模拟考试(含答案)_第3页
(2021年)内蒙古自治区呼伦贝尔市全国计算机等级考试数据库技术模拟考试(含答案)_第4页
(2021年)内蒙古自治区呼伦贝尔市全国计算机等级考试数据库技术模拟考试(含答案)_第5页
已阅读5页,还剩34页未读 继续免费阅读

下载本文档

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

文档简介

(2021年)内蒙古自治区呼伦贝尔市全国计算机等级考试数据库技术模拟考试(含答案)学校:________班级:________姓名:________考号:________

一、1.选择题(10题)1.下列的故障中,可能会造成事务执行失败的是

A.系统故障B.磁盘故障C.逻辑错误D.硬件故障

2.数据通信中数据传输速率是最重要的性能指标之一,它指单位时间内传送的二进制位数,常用的单位是

A.b/sB.byte/sC.Mb/sD.Kb/s

3.下列关于“分布式数据库系统”的叙述中,正确的是______。

A.分散在各节点的数据是不相关的

B.用户可以对远程数据进行访问,但必须指明数据的存储节点

C.每一个节点是一个独立的数据库系统,既能完成局部应用,也支持全局应用

D.数据可以分散在不同节点的计算机上,但必须在同一台计算机上进行数据处理

4.PC机通过下列哪一条途径启动硬件中断服务程序执行?

A.主程序中安排的中断指令B.中断控制器发出的中断请求信号C.主程序中安排的转移指令D.主程序中安排的调用指令

5.关系中规定主码不允许取空值,指的是()约束规则。

A.实体完整性B.引用完整性C.参照完整性D.用户自定义完整性

6.关系模式设计“不好”,通常会出现如下______问题。

Ⅰ.数据冗余

Ⅱ.更新异常

Ⅲ.插入异常

Ⅳ.删除异常

A.都是B.Ⅰ、Ⅱ和ⅢC.Ⅱ、Ⅲ和ⅣD.Ⅱ和Ⅲ

7.信息的价值与信息的哪些性质密切相关?()

①准确性

②及时性

③可靠性

④开放性

⑤完整性

A.①、②、③和④B.②、③、④和⑤C.①、②、③和⑤D.①、②、④和⑤

8.如下选项中不属于进程通信机制的是()。

A.消息B.共享内存C.信号量D.原语

9.在页式存储管理中,为加快地址映射速度,一般需要硬件提供支持。以下哪些硬件是用于地址映射的?()。Ⅰ.页表始址寄存器

Ⅱ.页表长度寄存器

Ⅲ.变址寄存器

Ⅳ.相联存储器

A.Ⅱ、Ⅲ和ⅣB.Ⅱ和ⅣC.Ⅰ、Ⅱ和ⅢD.全部

10.关系数据库中,实现主码标识元组的作用是通过

A.实体完整性规则B.参照完整性规则C.用户自定义的完整性D.属性的值域

二、填空题(10题)11.SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,语句REVOKE实现其中的______功能。

12.为保证对故障恢复的支持,登记日志记录必须先把日志记录写到外存的日志文件中,再把相应的数据库修改写到外存的数据库中。这称为【】原则。

13.某二叉树结点的对称序序列为A、B、C、D、E、F、G,后序序列为B、D、C、A、F、G、E,则该二叉树对应的树林中高度最大的树的高度为【】

14.三级抽象模式在数据库系统中都存储于数据库系统的【】中。

15.加密和解密算法的操作都是在一组密钥控制下完成的,它们分别被称为【】。

16.UNIX内核部分包括文件子系统和___________控制子系统。

17.IPv6的128位地址按每16位划分为一个位段,每个位段被转换为一个4位的十六进制数,并用冒号隔开,这种表示法称为___________表示法。

18.在口数据报分片后,通常用___________负责数据报的重组。

19.ADSL技术通常使用—___________对线进行信息传输。

20.在数据库的三级模式体系结构中,外模式与模式之间的映像(外模式/模式),实现了数据库的【】独立性。

三、单选题(10题)21.段页式存储管理汲取了页式管理和段式管理的长处,其实现原理结合了页式和段式管理的基本思想,即()

A.用分段方法来分配和管理存储空间,用分页方法来管理地址空间

B.用分段方法来分配和管理地址空间,用分页方法来管理存储空间

C.用分段方法来分配和管理主存空间,用分页方法来管理辅存空间

D.用分段方法来分配和管理辅存空间,用分页方法来管理主存空间

22.收缩整个数据库的大小,可以采用下列语句:()

A.DBCCSHRINKDATABASE

B.DBCCSHRINKFILE

C.ALTERDATABASE

D.CREATESCHEMA

23.一个数据表10000行数据,每行3500字节,计算表需要空间()

A.20MBB.40MBC.60MBD.80MB

24.在关系代数的连接操作中,连接操作需要取消重复列的是()。

A.自然连接B.笛卡尔积C.等值连接D.0连接

25.若实体间的联系是M∶N,则将联系类型()

A.的属性加入任一个关系模式中

B.的属性加入N端实体类型相对应的关系模式中

C.的属性加入M端实体类型相对应的关系模式中

D.也转换为关系模型

26.某数据库应用系统使用SQLServer2008作为数据库平台。在系统运行期间,用户反映某更新操作很慢,无法正常完成业务。系统工程师分别在用户的客户机和数据库服务器上使用数据库管理系统自带的客户端工具执行此更新操作语句,发现该语句执行后长时间无响应。经检查数据库服务器CPU使用率小于1%,磁盘IO也非常小。造成此现象可能的原因是()

A.客户机到数据库服务器的网络故障

B.更新操作涉及到的表没有建立主码

C.更新的字段没有建立有效的索引

D.更新操作涉及到的数据被锁定

27.下述哪个成立时,称X→Y为平凡的函数依赖?

A.XYB.YXC.X∩Y=D.X∩Y≠

28.把电路中的所有元件如晶体管、电阻、二极管等都集成在一个芯片上的元件称为()

A.TransistorB.IntegratedCircuitC.ComputerD.VacummTube

29.E-R图是数据库设计的工具之一,它适用于建立数据的()

A.中继器B.桥接器C.路由器D.网关

30.设栈S和队列Q的初始状态为空,元素e1、e2、e3、e4、e5和e6依次通过栈S,一个元素出栈后即进入队列Q,若6个元素出栈的顺序是e2、e4、e3、e6、e5、e1,则栈S的容量至少应该是()

A.6B.4C.3D.2

四、C语言程序设计题(10题)31.已知数据文件in.dat中存有300个四位数,并已调用读函数readDat把这些数存入数组a中,请编制一数jsValue,其功能是:求出个位数上的数减千位数上的数减百位数上的数减十位数上的数大于零的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的四位数按从大到小的顺序进行排序。最后main函数调用写函数writeDat把数组b中的数输出到文件0ut.dat。

32.函数ReadDat实现从文件in.dat中读取一篇英文文章,存入到无符号字符串数组XX中,请编制函数encryptChar,按给定的替代关系对数组)XX中的所有字符进行替代,其替代值仍存入数组XX的对应的位置上,最后调用函数writeDat把结果xx输出到文件out.dat中。

替代关系:)=p*17mod256,mod为取余运算,p是数组)xx中某一个字符的ASCII值,f(p)是计算后的无符号整型值(注意:中间变量定义成整型变量),如果计算后f(p)值小于等于32或f(p)是奇数时,则该字符不变,否则用f(p)替代所对应的字符。

33.已知在in.dat中存有若干个(个数<200)1四位十进制数字组成的正整数,函数ReadDat读取这若干个正整数并存入数组XX中。请编制函数CalValue0,其功能要求:

1.求出该文件中共有多少个正整数totNum;

2.求这些正整数右移1位二进制位后,产生的新数是偶数的数的个数totCnt,以及满足此条件的这些正整数(右移前的值)的算术平均值totPjz。最后main函数调用函数WriteDat把所求的结果输出到out.dat文件中。

注意:部分源程序存放在test.C文件中。

请勿改动数据文件in.dat中的任何数据,主函数main、读函数ReadDat和输出函数WriteDat0的内容。

34.已知数据文件in.dat中存有200个四位数,并已调用读函数readDat把这些数存入数组a中,请考生编制一函数jsVa,其功能是:把千位数字和十位数字重新组成一个新的含有两位数字的数ab(新数的十位数字是原四位数的千位数字,新数的个位数字是原四位数的十位数字),以及把个位数字和百位数字组成另一个新的含有两位数字的数cd(新数的十位数字是原四位数的个位数字,新数的个位数字是原四位数的百位数字),如果新组成的两个数ab-cd>=0且ab.cd<=10且两个数均是奇数,同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存入数组b中,并要计算满足上述条件的四位数的个数cnt。最后main函数调用写函数writcDat把结果cnt以及数组b中符合条件的四位数输出到文件0ut.dat中。

35.函数ReadDat实现从文件in.dat中读取一篇英文文章存入到字符串数组XX中,请编制函数ConvertCharA,其函数的功能是:以行为单位把字符串中的所有小写字母改写成该字母的下一个字母,如果是字母z,则改写成字母a,大写字母和其他字符保持不变。把已处理的字符串仍按行重新存入字符串数组XX中。最后main函数凋用函数WriteDat把结果XX输出到文件0ut.dat中。

36.函数readDat是从文件in.dat中读取20行数据存放到字符串数组xx中(每行字符串长度均小于80)。请编制函数jsSort,其函数的功能是:以行为单位对字符串变量的下标为奇数的位置上的字符按其ASCII值从小到大的顺序进行排序,下标为偶数的位置上的字符仍按原来位置存放,排序后的结果仍按行重新存入字符串数组)XX中,最后调用函数WrriteDat把结果xx输出到out.dat文件中。

37.函数ReadDat实现从文件in.dat中读取一篇英文文章,存入到字符串数组XX中;请编制函数encryptChar,按给定的替代关系对数组XX中的所有字符进行替代,仍存入数组xx对应的位置上,最后调用函数WriteDat把结果XX输出到文件out.dat中。

替代关系:f(p)=p*11mod256,mod为取余运算,P是数组XX中某一个字符的ASCII值,f(p)是计算后的无符号整型值(注意:中间变量定义成整型变量),如果原字符的ASCII值是偶数或计算后f(p)值小于等于32,则该字符不变,否则用f(p)替代所对应的字符。

注意:部分源程序存放在test.c文件中,原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格,并也按此替代关系进行处理。

请勿改动主函数main、读函数ReadDat和输出函数WriteDat的内容。

38.在文件in.dat中已存有200个正整数,且每个数均在1000至9999之间。函数readDat是读取这200个数存放到数组aa中。请编制函数jsSort,其函数的功能是:要求按每个数的后三位的大小进行降序排列,如果出现后三位相等的数值,则对这些数值按原始4位数据进行升序排列,将排序后的前10个数存入数组bb中。

最后调用函数writeDat把结果bb输出到文件out.dat中。

39.已知数据文件in.dat中存有200个四位数,并已调用读函数readDat把这些数存入数组a中,请考生编制一函数jsVal,其功能是:把一个四位数的个位数位置上的值减去千位数位置上的值再减去百位数位置上的值最后减去十位数位置上的值,如果得出的值大于等于零且原四位数是偶数,则统计出满足此条件的个数cnt,并把这些四位数按从小到大的顺序存入数组b中,最后调用写函数writeDat把结果cnt以及数组b中符合条件的四位数输出到0ut.dat文件中。

40.编写一个函数findStr(char*str,char*substr),该函数统计一个长度为2的子字符串substr在另一个字符串str中出现的次数,该次数作为函数值返回。例如,假定输入的字符串为”asdasasdfgasdaszx67asdmklo”,子字符串为”as”,函数返回值是6。

函数ReadWrite实现从文件in.dat中读取两个字符串,并调用函数findStr,最后把结果输出到文件out.dat中。

注意:部分源程序存在test.c文件中。请勿改动主函数main和其他函数中的任何内容,仅在函数findStr的花括号中

填入你编写的若干语句。

五、设计与应用题(2题)41.某网上商城因为业务发展,原有的系统不能很好的满足需要,因此采用了一套新的经营管理系统,此系统使用SQLServer2008数据库管理系统。此系统上线运行前,需将商场原有的数据导入到新系统中。原有系统使用SQLServer2000,数据结构与新系统不完全一致。因此需要把数据从SQLServer2000导入到SQLServer2008中,为了保证数据一致性,数据导入过程中要求暂停业务且必须在3小时内完成。(1)在原有数据导入新系统的过程中,实施人员发现原有数据量很大,导人数据需要四小时,业务无法接受。经分析某工程师认为,数据导入过程中的数据库I/O很高,但导人数据的程序本身对系统资源占用率很低。该工程师建议将数据导入过程中的数据恢复模式从“完整”模式改为“简单”模式以提高数据导人速度;而另一位工程师则认为此方法未必能提高数据导入速度,而且还可能导致数据丢失,不建议使用此方法。请分析此方法是否能够提高数据导入速度并给出理由,同时分析此操作的数据丢失风险。(5分)(2)在成功导入历史数据后,此系统顺利上线运行。在上线运行的第一周,发现数据库服务器的CPU使用率很高,达到近90%,高峰期间达到100%,且系统内存占用率达到90%,但系统I/O很轻。业务人员反应系统操作速度很慢。为了提高系统运行速度。在不修改应用程序的前提下,两位工程师提出了不同的解决办法:Ⅰ.为服务器增加2颗CPU,缓解CPU使用率很高的问题;Ⅱ.为服务器增加一倍内存,缓解内存使用率很高的问题。考虑成本,现阶段只能按照一种方案实施。请指出在现有情况下,哪种方案更合理并给出理由。(5分)

42.设有商品表(商品号,商品名,单价)和销售表(销售单据号,商品号,销售时间,销售数量,销售单价)。其中,商品号代表一类商品,商品号、单价、销售数量和销售单价均为整型。请编写查询某年某商品的销售总毛利的存储过程,毛利=销售数量x(销售单价一单价)。要求商品号和年份为输入参数,总毛利用输出参数返回。(10分)

六、单选题[1分](2题)43.设有购买表(顾客号,商品号,购买时间)。现要查询2012年顾客A购买了但顾客B没有购买的商品。有下列查询语句:1.SELECT商品号FROM购买表WHEREYEAR(购买时间)=ˊ2012ˊAND顾客号=ˊAˊAND商品号NOTIN(SELECT商品号FROM购买表WHEREYEAR(购买时间)=ˊ2012ˊAND顾客号=ˊBˊ)11.SELECT商品号FROM购买表WHEREYEAR(购买时间)=ˊ2012ˊAND顾客号=ˊAˊEXCEPTSELECT商品号FROM购买表WHEREYEAR(购买时问)=ˊ2012ˊAND顾客号=ˊBˊ11.SELECT商品号FROM购买表WHEREYEAR(购买时问)=ˊ2012ˊAND顾客号=ˊAˊINTERSECTSELECT商品号FROM购买表WHEREYEAR(购买时间)=ˊ2012ˊAND顾客号=ˊBˊIV.SELECT商品号FROM购买表WHEREYEAR(购买时问)=ˊ2012ˊAND顾客号=ˊAˊUNl0NSELECT商品号FROM购买表WHEREYEAR(购买时间)=ˊ2012ˊAND顾客号=ˊBˊ上述语句中,能够实现该查询要求的是()。

A.仅Ⅰ和ⅡB.仅Ⅰ和ⅢC.仅Ⅰ和ⅣD.全部

44.以下关于两段锁协议的原理叙述错误的是()。

A.每个事物的执行程序划分两个阶段,加锁阶段和解锁阶段

B.加锁阶段事务可以申请获得任何数据项上的任何类型的锁,允许释放任何锁

C.在解锁阶段,事务可以释放在任何数据项上任何类型的锁,但是不能再申请任何锁

D.每个事务开始执行后就进入了加锁阶段

参考答案

1.C解析:逻辑错误、系统错误可能会造成事务执行失败。注意:系统故障、磁盘故障和硬件故障都不会导致事务执行失败,因此A),B),D)选项不正确,故C)选项正确。掌握故障产生的原因,以及如何解除故障。

2.A解析:网络的传输速率用b/s来表示,其含义是每秒传输多少个二进制位的信息,b是bit的缩写,s表示秒(second)。

3.C解析:在分布式数据库中数据的共享有两个层次:一是局部共享,二是全局共享。对于每一个节点是一个独立的数据库系统,既能完成局部应用,也支持全局应用。选项C的叙述是正确的。分散在各节点的数据是相关的;用户可以对远程数据进行访问,但没必要指明数据的存储节点;数据可以分散在不同节点的计算机上,不一定在同一台计算机上进行数据处理.因此选项A、B和D是不正确的。正确答案为C。

4.B解析:在不同类型的中断中,软中断(也称内中断)是由于执行程序中某些指令引起的;而硬中断(也称外中断)则是由处理器以外的其他控制电路发出的中断请求信号引起的。

5.A解析:实体完整性规则如下:①实体完整性规则是对关系中的主属性值的约束。②若属性A是关系R的主属性,则属性A不能取空值。⑧它规定关系的所有主属性都不能取空值,而不仅是主码整体不能取空值。

6.A

7.C

8.D解析:操作系统中常用的进程通信机制包括消息、共享内存、信号量、管道等,在Linux系统中,socket和信号也是进程通信机制,原语也是由若干条指令构成的完成特定功能的一个过程,一个原子操作要么全做,要么全不做。

9.C解析:页表始址寄存器、页表长度寄存器和变址寄存器都是用于地址映射的。

10.A解析:实体完整性是保证表中的记录唯一的特性,即在一个表中不允许有重复的记录。参照完整性与表之间的联系有关,它的含义是:当插入、删除或修改一个表中的数据时,通过参照引用相互关联的另一个表中的数据,来检查对表的数据操作是否正确。用户定义的完整性规则通常是由用户定义,用来对属性值进行约束的规则。实现主码标识元组实际上就是要通过主码保证记录唯一的特性,因此本题的正确答案应该是A。

11.数据控制数据控制解析:SQL语言功能极强,但由于设计巧妙,语言十分简洁,完成数据定义、数据操纵、数据控制的核心功能只用了9个动词,如下:

•数据查询:SELECT;

•数据定义:CREATEDROPALTER;

•数据操纵:INSERTUPDATEDELETE;

•数据控制:GRANTREVOKE。

因此本题填数据控制。

12.先写日志先写日志解析:为保证数据库是可恢复的,登记日志文件时必须遵循两条原则:登记的次序严格扫描并行事务执行的时间次序;必须先写日志文件,后写数据库。为了安全,一定先写日志文件,即首先把日志记录写到日志文件中,然后写到数据库修改。

13.2由后序序列可以看出,E为根结点,A,B,C,D为左子树结点,F,G为右子树结点

14.数据字典数据字典解析:三级抽象模式在数据库系统中都存储于数据库系统的数据字典中。

15.加密密钥和解密密钥加密密钥和解密密钥

16.进程【解析】UNIX的系统结构可分为两大部分,一部分是操作系统的内核,另一部分是系统的外壳。内核部分由文件子系统和进程控制子系统组成;外壳由Shell解释程序、支持程序设计的各种语言、编译程序和解释程序、实用程序和系统调用接口等组成。

17.冒号十六进制【解析】IPv6的128位地址按每l6位划分为一个位段,每个位段被转换为一个4位的十六进制数,并用冒号隔开,这种表示法称为冒号十六进制表示法。

18.目的主机【解析】在接收到所有分片的基础上,主机对分片进行重新组装的过程称为IP数据报重组。IP协议规定,只有最终的目的主机才可以对分片进行重组。

19.1【解析】ADSL技术通常使用l对线进行信息传输。

20.逻辑逻辑解析:数据库系统的三级模式是对数据的三个抽象级别。为了能够在内部实现这3个抽象层次之间的联系和转换,数据库管理系统在这三级模式之间提供了两层映像:外模式/模式映像和模式/内模式映像。正是这两层映像保证了数据库系统中的数据能够具有较高的逻辑独立和物理独立性。

21.B

22.A

23.B

24.A解析:自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且要在结果中把重复的属性去掉。一般的连接操作是从行的角度进行运算,但自然连接还需要取消重复列,所以是同时从行和列的角度进行运算。

25.D

26.D

27.B解析:当YX时,称X→Y为平凡的函数依赖。

28.B

29.A

30.C

31.\n【审题关键句】个位-千位-百位-十位数大于零的个数,把所有满足此条件的数依次存入数组,按从大到小的顺序排序。

\n【解题思路】

\n本题类似第9套试题,通过审题可以发现有两个不同点:①要求统计的四位数的条件是“个位一千位-百位一十位数大于零的个数”,参考答案的第8条语句修改if语句的判断条件即可。②将统计结果按从大到小的顺序排序,参考答案的第13条语句,修改两数组元素的大小比较符即可。另外,对于数据交换的整型变量tmp可以自定义其变量名。

\n【参考答案】

\n

\n

32.\n【审题关键句】字符替代f(p)=p*11mod256,小于等于32或ASCII码是奇数不变,否则替换。

\n【解题思路】

\n本题类似第65套试题,通过审题可以发现主要是排序条件的设置要求有所不同,参考答案的第6行,修改if条件语句的设置即可。

\n【参考答案】

\n

\n

33.\n【审题关键句】读取正数,统计个数,右移后为偶数的个数及平均值。

\n【解题思路】

\n①定义整型变量i、j和长整型he,并把其初始值设置为0。

\n②用for循环语句对数组XX进行扫描,如果当前数组元素xx[i]零,则全局变量totNum加1。

\n③在for循环语句中,循环变量i从0开始递增到totNum一1,对数组xx中的每个元素XX[i]右移一位,把这个值赋给整型变量i,再对j的值对2求余数,如果余数等于0,则变量totCnt加1,并把数组元素xx[i]累加到变量he。

\n④退出循环时,把变量he的数据类型转换成双精度型再除以变量totCnt的值,就得到算术平均值totPjz。

\n【参考答案】

\n

\n

34.【审题关键句】千位+十位组合与个位+百位组合,都是奇数,两数相减结果大于等于0小于等于10,从大到小排序。

\n【解题思路】

\n①首先,本题要定义多个变量,包括两仑循环变量循环i、j;用来存放四位数分解之后各位数的变量qw(千位)、bw(百位)、SW(十位)和gw(个位);两个用来存放重新组合数字的变量newV1和newV2。

\n②通过for循环依次对数组中的每个四位数进行分解,每分解一个四位数,根据题目要求,对其各位数进行重新组合,形成两个新的十位数,组合条件分别是原四位数的千位和十位组成一个十位数,个位和百位组成一个十位数,并将两个新的十位数分别赋给变量newV1和newV2。

\n③数字重组完毕之后,再根据题目要求筛选满足条件的四位数,本题需要考虑多个筛选条件:一是新组合的十位数中,其十位数不能为0,即原四位数的千位和个位数字不能为0;二是两个新组合的十位数之差必须大于等于0小于等于10;三是两个新组合的数字均为奇数。

\n④将同时满足以上3个条件的四位数赋给数组b[cnt],同时数组下标值加1,当for循环执行完毕后,则将所有满足条件的四位数全部存放到数组b[cnt]qb。

\n⑤最后通过两个for循环,对数组b[cnt]中的元素按从大到小的顺序排序,排序过程中,可用newV1或newV2作为数据交换的中间变量。

\n【参考答案】

\n

\n

35.\n【审题关键句】以行为单位把字符串中的所有小写字母改写成该字母的下一个字母,大小写不变,其他字符不变。

\n【解题思路】

\n①定义整型循环变量i、i。

\n②在第一层for循环中,循环变量i从0开始,依次递增直到其值等于maxline,实现对文章每行的处理。第二层for循环中,循环变量j从0开始,依次递增直到其值等于strlen(xx[i]),在循环体中,利用if条件语句首先判断)xx[i][j]的值是否在小写字符字符’a’~’z’之间,然后,再判断在此范围之内的小写字母,如果是z,则该字符转换为a,如果字符不是z,则将其改写成它的下一个字母。

\n【参考答案】

\n

\n

\n

36.\n【审题关键句】以行为单位对字符串变量的下标为奇数的字符按从小到大排序,结果仍按行重新存入字符串数组中。

\n【解题思路】

\n①因为要进行字符之间的互换,所以定义局部字符变量ch。定义循环变量i、i、k。

\n②在第一层for循环中,循环变量i从0开始,依次递增直到其值等于或大于20,在循环体中实现对每行字符串的处理。在循环体中执行第二层for循环,循环变量j从1开始,依次递增2直到其值等于(int)strlen(xx[i]),在第三层for循环中,循环变量k从j+2开始,依次递增2,直到其值等于(int)strlen(xx[i]),如果字符)XX[i][j]的ASCIl码值大于)XX[i][k]的ASCII码值,则两者进行互换,实现字符串)XX[i]中下标为奇数的位置上的字符按其ASCII值从小到大的顺序进行排序,下标为偶数的位置上的字符仍按原来位置存放的功能。

\n【参考答案】

\n

\n

37.\n【审题关键句】字符替代f(p)=p*11mod256,小于等于32或原字符的ASCII码是偶数不变,否则替换。

\n【解题思路】

\n本题类似第70套试题,通过审题可以发现主要是排序条件的设置要求有所不同,参考答案的第6行,修改if条件语句的设置即可。

\n【参考答案】

\n

\n

38.\n【审题关键句】按每个数的后三位降序排列,然后取出满足此条件的前10个数依次存入数组;如果后三位的数值相等,则按原先的数值进行升序排列。

\n【解题思路】本题类似第7套试题,通过审题可以发现主要有两个不同点:①按每个数的后三位降序排列,参考答案的第5条语句,修改两数组元素的大小比较符即可;②后三位的数值相等则按原先的数值进行升序排列,参考答案的第13条语句,同样也是修改两数组元素的大小比较符即可。

\n【参考答案】

\n

\n

\n

39.\n【审题关键句】个位-千位-百位-十位,结果大于等于零且原四位数是偶数,统计出满足此条件的个数,并按从小到大的顺序存入数组。

\n【解题思路】

\n本题类似第9套试题,通过审题可以发现仅有一个不同点,即要求统计的四位数的条件是“个位-千位-百位-十位>=0”,参考答案的第8条语句,修改if条件语句的判断条件即可。

\n【参考答案】

\n

\n

40.\n【审题关键句】统计一个长度为2的子字符串在另一个字符串中出现的次数。

\n【解题思路】

\n①定义字符指针p,q,并且q指向字符串str。定义计数整型变量cnt,设置其值等于0。

\n②在while循环中调用C语言的字符串库函数strstr,返回子字符串substr在字符串q第一次出现的位置,赋给变量P。用if语句判断,如果p的值为空,则说明在字符串str没有找到子字符串,退出循环。否则,变量cnt加1,再把P的值加2(因为子字符串substr的长度为2)赋给变量q,执行下一次循环。直到字符串中不存在子字符串时,退出循环结束。

\n③最后,返回子字符串substr在字符串str中出现的次数。

\n【参考答案】

\n

41.【解题思路】(1)SQLServer2008的数据恢复模式有三种:①简单恢复模式,此方法可以最大幅度减少事务13志的管理开销,因为恢复模式不备份事务日志。但是如果数据库损坏,则简单恢复模式将面临极大的数据丢失风险。在这种恢复模式下,数据只能恢复到最新备份状态。因此对于用户数据库,简单恢复模式只适用于测试和开发数据库,或用于主要包含只读数据的数据库。②完整恢复模式,此方法可以完整的记录所有事务,并将事务日志记录保留到对其备份完毕为止。此方法相对简单恢复模式来说,更占用时间。③大容量日志恢复模式,此方法只对大容量操作进行最小记录,使事务日志不会被大容量加载操作所填充。在数据导入过程中,所有的业务都是暂停的,因此可以采用简单恢复模式提高数据导入速度。且只在数据导入的过程中暂时的修改恢复模式,因此数据并不会丢失。(2)提高数据库性能的方法一般是从外部环境、调整内存分配、调整磁盘I/0、调整竞争资源等几方面着手来改变数据库的参数。SQLServer2008采用将数据缓冲在内存的方式,因此在数据库系统运行的过程中会占用一定的内存,又因为I/O并不存在问题,说明内存尚满足需求。CPU使用率很高,表明CPU的计算能力不足,应该增加CPU的数量。【参考答案】(1)此方法能够提高数据导入速度。原因:此系统I/O很高,修改恢复模式后,系统最大限度减少日志开销

温馨提示

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

评论

0/150

提交评论