2021年安徽省阜阳市全国计算机等级考试数据库技术预测试题(含答案)_第1页
2021年安徽省阜阳市全国计算机等级考试数据库技术预测试题(含答案)_第2页
2021年安徽省阜阳市全国计算机等级考试数据库技术预测试题(含答案)_第3页
2021年安徽省阜阳市全国计算机等级考试数据库技术预测试题(含答案)_第4页
2021年安徽省阜阳市全国计算机等级考试数据库技术预测试题(含答案)_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

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

文档简介

2021年安徽省阜阳市全国计算机等级考试数据库技术预测试题(含答案)学校:________班级:________姓名:________考号:________

一、1.选择题(10题)1.下列对文件系统的多级目录结构的描述正确的是

A.线性结构B.树形结构C.散列结构D.双链表结构

2.将内存中暂时不能运行的进程或暂时不用的程序和数据换出到外存上,为满足条件的进程、程序和数据腾出空间,这种技术称为()。

A.对换技术B.置换技术C.虚拟存储D.缓冲技术

3.启动外围设备前必须组织好通道程序,下列哪一项不是通道程序的控制部件?

A.CCWB.CSWC.CAWD.PSW

4.下列关键码序列不符合堆定义的是()。

A.A、C、D、G、H、M、P、Q、R、X

B.A、C、M、D、H、P、X、G、Q、R

C.A、D、P、R、C、Q、X、M、H、G

D.A、D、C、G、P、H、M、Q、R、X

5.下述_____语句用于实现对用户的访问权限进行管理。

A.COMMITB.ROLLBACKC.GRANTD.CREATETABLE

6.下面关于SQL语言的说法中,错误的是()。

A.SQL的一个基本表就是一个数据库

B.SQL语言支持数据库的三级模式结构

C.一个基本表可以跨多个存储文件存放,一个存储文件可以存放一个或多个基本表

D.SQL的一个表可以是一个基本表,也可以是一个视图

7.在如下两个数据库的表中,若雇员信息表EMP的主键是雇员号,部门信息表DEPT的主键是部门号。若执行所列出的操作,哪一项操作不能执行?

A.从雇员信息表EMP中删除行('010','王宏达','01','1200')

B.从雇员信息表EMP中插入行('102','赵敏','01','1500')

C.将雇员信息表EMP中雇员号='010'的工资改为1600元

D.将雇员信息表EMP中雇员号='001'的部门号改为'05'

8.

在数据库逻辑结构设计中,将E-R模型转换为关系模型应遵循相应原则。对于三个不同实体集和它们之间的一个多对多联系,最少应转换为多少个关系模式?

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

9.原语是一个不可分割的原子操作,其本身实质上是由若干条()组成的一段程序。

A.机器指令B.汇编指令C.伪指令D.微指令

10.事务的持久性是指________。

A.事务中包括的所有操作要么都做,要么都不做

B.事务一旦提交,对数据库的修改就是永远的

C.一个事务内部的操作及使用的数据对并发执行的其他事务是隔离的

D.事务必须是使数据库从一个一致性状态变到另一个一致性状态

二、填空题(10题)11.以太网帧结构由前导码、帧前定界符、目的地址字段、源地址字段、类型字段、___________和帧校验字段几个部分组成。

12.在计算机系统中,一个以科学的方法组织、存储数据,并可高效地获取、维护数据的软件系统称为______。

13.在面向对象数据模型中,子类可以从其超类中______所有的属性和方法。

14.分布式数据库系统兼顾了数据的集中管理和分散处理两个方面,且数据库虽然分布在网络上的各个结点中,但仍然是统一管理的。因此分布式数据库系统有良好的性能,既可独立完成局部应用,也可协作完成【】应用。

15.关系数据模型包括关系数据结构、关系操作集合和______3个重要部分。

16.关系模式分解的等价性标准主要有两个,分别为分解具有______和分解保持函数依赖。

17.观看视频时,如果人物说话的口型与声音不吻合,观众就会觉得很不舒服。这种音频流与视频流之间的同步称为___________。

18.SMTP的通信过程可以分成三个阶段,它们是连接___________阶段、邮件传递阶段和连接关闭阶段。

19.______是用户接入Internet的入口点,一方面它为用户提供Internet接入服务,另一方面,它也为用户提供各类信息服务。

20.在SQL中,DROP和DELETE的区别在于是否删除了【】结构。

三、单选题(10题)21.在数据库概念设计阶段,将局部E-R图集成为全局的E-R图时有可能发生冲突,下面表述错误的是()。A.A.总共可能发生2类冲突

B.类型、取值范围的冲突属于属性冲突

C.属性冲突通过协商、讨论等手段进行解决

D.结构冲突要用技术手段解决

22.概念结构设计的目标是产生数据库概念结构(即概念模式),这结构主要反映()

A.DBA的管理信息需求B.应用程序员的编程需求C.企业组织的信息需求D.数据库的维护需求

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

A.DBCCSHRINKDATABASE

B.DBCCSHRINKFILE

C.ALTERDATABASE

D.CREATESCHEMA

24.有两个实体集,并且它们之间存在着一个M∶N联系,根据概念ER模型转换成关系数据库的规则,这个ER结构转换成表的个数为()

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

25.为了考虑安全性,每个部门的领导只能存取本部门员工的档案,为此DBA应创建相应的()。

A.视图(view)B.索引(index)C.游标(cursor)D.表(table)

26.消息认证是指接收者能够检验收到消息真实性的方法,下列不属于消息认证的检验内容?A.A.证实消息的源和宿B.消息的内容是否保持其完整性C.消息的序号和时间性D.消息是否被窃取

27.顺序程序和并发程序的执行相比()

A.基本相同B.无法确定C.并发程序执行总体上执行时间快D.顺序程序执行总体上执行时间快

28.概念设计的结构是得到一个与()

A.DBMS有关的逻辑结构B.DBMS无关的概念模式C.DBMS和硬件有关的逻辑结构D.DBMS和硬件无关的数据结构

29.在概念设计阶段,需要确定实体型特征由哪些属性组合而成,这个工作是对数据进行什么抽象?()

A.分类B.聚集C.概括D.数据抽象

30.下列哪项是SQLServer数据库拥有的逻辑空间结构和物理空间结构。A.表空间B.段C.区D.数据文件

四、C语言程序设计题(10题)31.程序test.c的功能是:选出1000至5000范围内(包括1000、5000)符合下面条件的四位自然数。条件是:千位数字与百位数字之和等于十位数字与个位数字之和,且千位数字与百位数字之和等于个位数字与千位数字之差的整10倍。计算并输出这些四位自然数的个数cnt以及这些数的和sum。请编写函数countValue实现程序的要求。最后main函数调用函数writeDAT把结果crlt和sum输出到out.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.已知数据文件IN1.DAT和IN2.DAT中分别存有100个两位十进制数,并且已调用读函数readDat把这两个文件中的数存入数组a和b中,请考生编制一个函数jsVal,实现的功能是依次对数组a和b中的数按条件重新组成一个新数并依次存入数组C中,再对数组C中的数按从小到大的顺序进行排序,最后调用输出函数writeDat把结果C输出到文件out.dat中。组成新数的条件:如果数组a和b中相同下标位置的数均是奇数,则数组a中十位数字为新数的千位数字,个位数字仍为新数的个位数字,数组b中的十位数字为新数的百位数字,个位数字为新数的十位数字,这样组成的新数并存入数组C中。

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

36.函数ReadDat实现从文件in.dat中读取一篇英文文章存入到字符串数组XX中;请编制函数SortCharD,其函数的功能是:以行为单位对字符按ASCII码从大到小的顺序进行排序,排序后的结果仍按行重新存入字符串数组XX中。最后main函数调用函数WriteDat把结果XX输出到文件out.dat中。

例:原文:dAe,BfC.

CCbbAA结果:fedCBA.,bbCCAA原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格。

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

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

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

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

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

填入你编写的若干语句。

38.已知数据文件in.dat中存有200个四位数,并已调用读函数readDat把这些数存入数组a中,请考生编制一函数jsVal,其功能是:如果四位数各位上的数字均是奇数,则统计出满足此条件的个数cnt并把这些四位数按从大到小的顺序存入数组b中。最后main函数调用写函数writeDat把结果cnt以及数组b中符合条件的四位数输出到0ut.dat文件中。

39.已知数据文件in.dat中存有200个四位数,并已调用读函数readDat把这些数存入数组a中,请考生编制一函数jsVal,其功能是:从数组a中依次取出一个四位数,对每一个四位数作如下处理:把个位数字和千位数字重新组成一个新的含有两位数字的数(新数的十位数字是原四位数的个位数字,新数的个位数字是原四位数的千位数字),以及把百位数字和十位数字组成另一个新的含有两位数字的数(新数的十位数字是原四位数的百位数字,新数的个位数字是原四位数的十位数字),如果两个新组成数:一个是奇数,另一个为偶数,并且至少有一个数能被17整除,同时两个新数的十位数字均不为零,则将满足此条件的四位数存入数组b中,并计算满足上述条件的四位数的个数cnt,而后对数组b进行降序排序。最后main函数调用写函数writeDat把结果cnt以及数组b中符合条件的四位数输出到out.dat文件中。

例如:一个四位数为4512,依题意组成的第一个新数为24,第二个新数为51,其中51能被17整除,这两个新数的十位数字不为零,则4512这个四位数满足题意所规定条件。

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

五、设计与应用题(2题)41.设在采用SQLServer2008数据库的图书馆应用系统中有三个基本表,表结构如下所示,请用SQL语句完成下列两个查询:BORROWER:借书证号姓名系名班级12011106蒋辉文计算机系12-112011107王丽计算机系12-112012113范园园信息系12-2LOANS:借书证号图书馆登记号借书日期12011106T0010012012.01.0212012113T0010262013.02.O6BOOKS:索书号书名作者图书登记号出版社价格TP311.1数据库系统李明T001001科学19.00TP311.2二级C语言王珊T001026人民32.00(1)检索至少借了5本书的同学的借书证号、姓名、系名和借书数量。(5分)(2)检索借书和王丽同学所借图书中的任意一本相同的学生姓名、系名、书名和借书日期。(5分)

42.设有高校选课系统,需要对学校的系信息、教师信息、课程信息、学生信息、学生选课信息进行管理。已知系(DEPT)信息包括系编号(DeptNO)、系名称(DeptName);教师(Teacher)信息包括教师号(TNO)、教师名(Tname);课程(Course)信息包括课程号(CNO)、课程名(CName)、课程学分(Credit);学生(Student)信息包括学号(SNO)、学生姓名(Sname)、学生性别(Sex)。选课系统的管理规则如下:Ⅰ.一个系可聘用多名教师,一个教师只受聘于一个系;Ⅱ.一个系可有多名学生,一个学生只属于一个系;Ⅲ.一名教师可讲授多门课程,一门课程可由多名教师讲授;Ⅳ.一名学生可选修多门课程,一门课程可被多名学生选修;V.学生选修完课程后,可获得相应课程的成绩。针对以上描述,完成下列设计内容:(1)构建选修课系统的ER图。(要求图中的实体集名用试卷中给出的英文名,联系所关联的实体集名的首字母,字母问用“一”或“_”连接,大小写不限)。(6分)(2)根据所构建的ER图,设计满足3NF的关系模式,并标出每个关系模式的主码和外码。(要求关系模式名同实体集名或联系名,属性名用试卷中给出的英文名,大小写不限)(4分)

六、单选题[1分](2题)43.设某数据库在非工作时间(每天8:00以前、18:00以后、周六和周日)不允许授权用户在职工表中插入数据。下列方法中能够实现此需求且最为合理的是()。

A.建立存储过程B.建立后触发型触发器C.定义内嵌表值函数D.建立前触发型触发器

44.关系模型是数据库系统最常用的一种数据模型。下列关于关系模型的说法,错误的是()。

A.关系模型中的关系是一个二维表,表中的一行对应关系中的一个元组

B.按照一定的规则可以将ER模型转换为关系模型中的关系模式

C.关系模型是建立在集合论的基础上的,关系模型中数据存取对用户是透明的

D.关系模型中的关系模式描述关系的动态结构,其内容随用户对数据库的操作而变化

参考答案

1.B解析:多级目录结构也称树形目录结构,在多级目录结构中,常常把第一级作为系统目录,也称根目录。

2.A解析:交换技术又称为对换技术(Swapping),多用于分时系统。当内存空间紧张时,系统将内存中某些进程(如暂时不用的进程)暂时移到外存,再把外存中某些进程换进内存。交换技术是进程在内存和外存之间的动态调整,是缓解内存紧张矛盾的一种有效方法。

3.D解析:通道的运算控制部件包括:通道地址字(CAW),记录下一条通道指令存放的地址;通道命令字(CCW),保存正在执行的通道指令;通道状态字(CSW),记录通道、控制器、设备的状态。

4.C解析:根据堆的定义:堆是一个关键码序列(K1,K2,……Kn),它具有如下特征:Ki≤K2i,Ki≤K2i+1,i=1,2,……,[n/2]堆实质上是一棵完全二叉树结点的层次序列,此完全二叉树的每个结点对应于一个关键码,根结点对应于关键码K1。堆的特性在此完全二叉树里解释为:完全二叉树中任一结点的关键码值都小于或等于它的两个子女结点的关键码值。根据这个特征,选项C)中的K2>K5(即D>C)、K4>K8(即R>M)、K4>K9(即R>H),因此选项C)不符合堆的定义。

5.C解析:COMMIT是向数据库递交数据,ROLLBACK是回滚数据,CREATETABLE是创建表,而GRANT是用来对用户权限进行管理,可以实现数据存取的安全机制。

6.A解析:一个SQL表由若干行记录集构成,一行有若干列,每列对应一个数据项,一个表可以有若干索引,索引也存储在存储文件中,存储文件的逻辑结构组成了关系数据库的内模式,基本表是实际存储在数据库中的表。在SQL中,一个关系对应一个基本表。一些基本表对应一个存储文件,一个表可以带若干索引,索引存放在存储文件中。

7.D解析:当执行删除操作时,一般只需要检查参照完整性规则。如果是删除被参照关系中的行,检查被删除行在主码属性上的值是否正在被相应的被参照关系的外码引用,若不被引用,可以执行删除操作;若被引用,有3种可能的做法:不可以执行删除操作(拒绝删除),或将参照关系中相应行在外码属性上的值改为空值后再执行删除操作(空值删除),或将参照关系中相应行一起删除(级联删除)。

8.C解析:本题考查的是E-R模型向关系模型转换的规则。转换规则中有:多对多的联系转换为一个关系模式。3个或3个以上实体集间的多元联系转换为一个关系模式。3个实体集两两间存在的多对多联系可以转换为3个关系模式,3个实体集间的多元联系又可以转换为1个关系模式,因此最少可以转换为4个关系模式,本题的答案为C。

9.A解析:原语是不可分割的整体,要么全部执行,要么都不执行,原语本身也是由若干条机器指令构成的,用于完成一定功能的过程,它与一般过程的区别在于它们是“原子操作”。

10.B解析:数据库管理系统中要求数据库系统维护以下事务特性,即原子性、一致性.隔离性和持久性。事务的原子性是指事务的所有操作要么全部正确反映出来,要么不反映;事务的一致性是事务的隔离执行保持数据库的一致性;事务的隔离性是指尽管多个事务可以并发进行,但要使每个事务都感觉不到系统中其他事务在并发进行;事务的持久性是指一个事务成功完成后,它对数据库的改变必须是永久性的,即使系统可能出现故障。因此本题正确选项为B。

11.数据字段【解析】以太网帧结构由以下几个部分构成:①前导码与帧前定界符字段;②目的地址和源地址字段;③类型字段;④数据字段;⑤帧校验字段。

12.数据库管理系统(DBMS)数据库管理系统(DBMS)解析:数据库管理系统(DBMS)是位于用户与操作系统之间的一个数据管理软件,它通过数据定义、数据操纵、数据库的运行管理和控制、数据库的建立和维护来科学地组织、存储数据,高效地获取、维护数据。

13.继承继承

14.全局全局解析:应填“全局”,这是分布式数据库系统的特点。

15.关系完整性约束关系完整性约束

16.无损连接性无损连接性解析:规范化过程中将一个关系模式分解若干个关系模式,应该保证分解后产生的模式与原来的模式等价。常用的等价标准有要求分解是具有无损连接性的和要求分解是保持函数依赖的两种。

17.唇同步【解析】唇同步要求音频与视频之间的偏移在?80ms内,这样多数观众不会感到偏移的存在。

18.建立【解析】SMTP的通信过程可以分成三个阶段:连接建立阶段、邮件传递阶段和连接关闭阶段。

19.ISPISP解析:Internet服务提供商(ISP)是用户接入Internet的入口点。一方面它为用户提供Internet接入服务;另一方面,它也为用户提供种类信息服务。

20.表DROP是删除表结构,DELETE是删除了表中的行

21.A将局部E-R图集成为全局的E-R图时有可能发生3类冲突,即属性冲突,结构冲突,命名冲突。

22.A

23.A

24.C

25.A解析:视图是从一个或几个基本表中根据用户需要而做成的一个虚表。视图是虚表,它在存储时只存储视图的定义,而没有存储对应的数据,视图是只在刚刚打开的一瞬间,通过定义从基表中搜集数据,并展现给用户。

26.D消息认证是指接收者能够检验收到消息真实性的方法,检验的内容包括:

①证实消息的源和宿

②消息的内容是否保持其完整性、即未篡改

③消息的序号和时间性

27.C

28.B

29.D

30.D

31.\n【审题关键句】千位+百位等于十位十个位,且千位+百位等于个位.千位的10倍。计算并输出这些四位自然数的个数cnt以及这些数的和。

\n【解题思路】

\n①首先定义一个循环变量i,以及分别用来存放四位数分解之后各位数的变量qw(千位)、bw(百位)、SW(十位)和gw(个位)。

\n②通过for循环依次对数组中的每个四位数进行分解,循环初值为1000,终值为5000,每循环一次,循环变量i的值加1。每分解一个四位数,根据题目要求,判断其“千位十百位=十位+个位”的条件是否满足,同时判断“(千位+百位)=(个位-于位)*10”的条件是否满足,两个条件之间用运算符进行连接。当同时满足以上两个判断条件时,计数变量cnt的值加1,同时将该四位数累加到求和变量sum中,最终得到满足条件的四位自然数个数cnt及它们的和sum。

\n本题中cnt和sum变量在源程序中已经定义,在该子程序中就不需要再重新定义了。

\n【参考答案】

\n

\n

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

\n【解题思路】

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

\n【参考答案】

\n

\n

33.\n【审题关键句】数组相同下标位置上的奇数,数组a中十位数等于新数的千位数字,个位等于新数个位数字,数组b中的十位等于新数的百位数字,个位数字等于新数的十位数字,存入数组,从小到大排序。

\n【解题思路】

\n①定义整型循环变量i、j和局部变量trap。

\n②在for循环语句中,循环变量i从0开始,依次递增直到其值等于或大于MAX,用if条件语句判断如果a[i]和b[j]同时为奇数,由a[i]的十位数字为新数的千位数字,个位数字为新数的个位数字,b[i]的十位数字为新数的百位数字,个位数字为新数的十位数字,把这个新组成的数存入数组元素c[cn],同时数组下标变量cn加1。

\n③在第一层for循环语句中,循环变量i从0开始,依次递增直到其值等于或大于cnt,在第二层循环中,循环变量{从i+1开始,依次递增直到其值等于cnt,用if条件语句判断如果数组元素c[i]大于c[j],则两者进行互换,实现数组C中的数按从小到大的顺序进行排序。

\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①因为要进行字符之间的互换,所以定义局部字符变量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

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

\n【解题思路】

\n①首先定义字符变量ch和无符号整型变量i、j、k。

\n②对字符二维数组XX,在第一层for循环中,变量i从0开始,依次递增直到其值等于maxline,实现对文章每行的扫描,在第二层for时循环中,变量j从0开始,依次递增直到其值等于strlen(xx[i]),即第i行的长度。在第三层循环语句中,变量k从j开始,依次递增直到其值等于strlen(xx[i]),对每一行中的数组元素xx[il[j]、XX[i][k]按照它们的ASCII码值的大小进行比较,如果xx[i][j]的ASCII码小于XX[i][k]的ASCII码,则两者交换,实现整篇文章中的字符按ASCII码值从大到小的顺序进行排序。

\n【参考答案】

\n

\n

37.\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

38.\n【审题关键句】各位都是奇数,从大到小排序。

\n【解题思路】

\n本题类似第32套试题,通过审题可以发现主要是对四位数的筛选条件有所不同,即判断四位数的每一位数都为奇数,参考答案的第8条语句,只需将每位数的判断条件改为奇数判断即可。

\n【参考答案】

\n

\n

39.\n【审题关键句】个位+于位与百位+十位,奇数,偶数,整除,从大到小排序。

\n【解题思路】

\n本题类似第24套试题,通过审题可以发现主要是对四位数的筛选条件有所不同,体现在两个方面:①分解后重新组合成十位数的方式不同,参考答案的第8、9条语句重新指定两位数的组合方式;②新组合的两位数的奇偶性判断及整除判断,参考答案的第10条语句。

\n本题第10条语句中各条件表达式之间的关系有些复杂,大致思路是:①首先判断新组合的两位数的十位不为0,即表达式“gwbw”;②再判断新组合的第一个两位数为偶数,第二个两位数为奇数,且两个两位数中至少有一个能被17整除的情况,两个整除关系表达式式要用或运算符(11)连接,且用括号括起来先计算或运算,再与奇偶性判断表达式进行与运算;③最后,在判断新组合的第一个两位数为奇数,第二个两位数为偶数,且两个两位数中至少有一个能被17整除的情况(各表达式之间的连接关系同第2步)。完成以上3部分的表达式设计后,再通过与运算将3部分表达式连接起来。

\n【参考答案】

\n

\n

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

\n【解题思路】

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

\n【参考答案】

\n

\n

41.【解题思路】(1)采用两表联合查询。以两表“借书证号”为相等条件,在结果集中用GROUPBY按照“借书证号”来分类,并且用HAVING关键字统计出符合条件的记录数。(2)采用IN关键字进行两表联合查询,在BORROWER和LOANS联合的结果集中查找满足第三个表指定的条件。【参考答案】(1)SELECTLOANS.借书证号,姓名,系名,COUNT(*)As借书数量FROMBORROWER,LOANSWHEREBO

温馨提示

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

评论

0/150

提交评论