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

下载本文档

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

文档简介

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

一、1.选择题(10题)1.设有关系R、S和T如下。关系T是由关系R和S经过______操作得到的。

RST

ABCABCABC

a1b1c1a1b2c2a1b2c2

a1b2c2a1b3c2alb1e1

a2b2c1a2b2c1a2b2c1

a1b3c2

A.R∪SB.R-SC.R×SD.R∩S

2.下列关于Oracle数据库系统的表空间叙述中,不正确的是()。

A.每个数据库分成一个或多个表空间

B.每个表空间只能创建一个数据文件

C.一个数据文件只能和一个数据库相关联

D.数据库表空间的总存储容量就是数据库的总存储容量

3.下列______不属于故障的主要类型。

A.事务故障B.逻辑故障C.系统故障D.磁盘故障

4.数据库管理系统的数据操纵语言(DML)所实现的操作一般包括()

A.建立、授权、修改B.建立、授权、删除C.建立、插入、修改、排序D.查询、插入、修改、删除

5.下面的叙述中,正确的是

A.队列限定仅在表的一端进行插入和删除运算的线性表

B.队列是限定仅在表的一端进行插入和删除运算的线性表

C.串是仅在表的一端进行插入和删除运算的线性表

D.数组是仅在表的一端进行插入和删除运算的线性表

6.下面所列的工具中,不能用于数据库应用系统界面开发的工具是______。

A.VisualBasicB.DelphiC.PowerDesignerD.PowerBuilder

7.线性链表不具有的特点是

A.随机访问B.不必事先估计所需存储空间大小C.插入与删除时不必移动元素D.所需空间与线性表长度成正比

8.引起中断的中断源有5种,分别为I/O中断、数据通道中断、时钟中断、程序中断和

A.存取越界中断B.故障中断C.奇偶校验错中断D.数据溢出中断

9.系统产生死锁的四个必要条件是:资源的独占使用、资源的非抢占分配、资源的循环等待和资源的

A.完全分配B.部分分配C.静态分配D.顺序分配

10.()是将若干对象和它们之间的联系组合成一个新的对象。

A.分解B.抽象C.聚集D.概括

二、填空题(10题)11.SQL中REVOKE是______命令。

12.()是数据库中的一个逻辑命名空间,可以存放表、视图等数据库对象,用于对数据库对象进行分类。

13.系统中有N个进程,则进程就绪队列中最多有【】个进程。

14.在OSl中,采用了三级抽象,即体系结构、服务定义和___________。

15.如果资源分配图中没有______,则系统中没有死锁发生。

16.一般来说,商品化的数据库管理系统,如Oracle,其产品主要包括数据库服务器软件、______软件和开发工具三类。

17.广义表是线性表的推广,是由零个或多个单元素或______所组成的有限序列。

18.设有关系R(A,B,C)和s(A,D,E,F),若将关系代数表达式:πR.A,R.B,S.D,S.F(R∞S)用SQL语言的查询语句表示,则有:SELECTR.A,B,D,FFROMR,SWHERE______。

19.在SQLServer2008中,系统提供的具有创建数据库权限的服务器角色是__________。

20.传感器、___________和观察者构成传感器网络的3个要素。

三、单选题(10题)21.在关系代数运算中,五种基本运算为()

A.并、差、选择、投影、自然连接B.并、差、交、选择、投影C.并、差、选择、投影、乘积D.并、差、交、选择、乘积

22.在SQLServer2008中,设用户U1是某数据库db_datawriter角色中的成员,则U1在该数据库中有权执行的操作是()

A.SELECT

B.SELECT和INSERT

C.INSERT、UPDATE和DELETE

D.SELECT、INSERT、UPDATE和DELETE

23.关于反规范化说法不正确的是:

A.完全规范化与部分规范化数据库之间处理性能会有没多大差别

B.反规范化是将规范化关系转换为非规范化的关系的过程。

C.反规范化方法:增加派生冗余列、增加冗余列、重新组表、分割表和新增汇总表等方法。都会破坏数据完整性。

D.采用反规范化技术从实际出发均衡利弊。

24.关于AdHoe网络的描述中,错误的是()A.A.是一种对等式的无线移动网络

B.在WLAN的基础上发展起来

C.采用无基站的通信模式

D.在军事领域应用广泛

25.若让元素1,2,3依次进栈,则出栈次序不可能出现哪一种情况?

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

26.某数据库应用系统中,数据库管理员发现某个查询功能是用多表连接操作实现的,此操作性能较差。在保证功能不变的前提下,若要提高该查询的执行效率,下列方法中可行的是()

A.将此查询语句放置在视图中,使用视图实现该查询操作

B.修改实现此功能的查询语句,将连接查询改为嵌套查询

C.将此功能涉及到的表进行合并,然后对合并后的表进行查询

D.将此查询语句放置在存储过程中,通过调用存储过程实现该查询操作

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

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

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

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

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

28.数据库管理系统中用于定义和描述数据库逻辑结构的语言称为()

A.数据库模式描述语言(DDL)B.数据库子语言(SubDL)C.数据操纵语言(DML)D.数据结构语言

29.SQL语言集数据定义、数据查询、数据操纵和数据控制功能于一体,语句UPDATE实现()功能。

A.数据定义B.数据查询C.数据操纵D.数据控制

30.在数据库技术中,为提高数据库的逻辑独立性和物理独立性,数据库的结构被划分成用户级、()和存储级3个层次。A.管理员级B.外部级C.概念级D.内部级

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

32.已知数据文件in.dat中存有300个四位数,并已调用读函数readDat把这些数存入数组a中,请编制一函数jsValue,其功能是:求出千位数上的数加百位数上的数等于十位数上的数加个位数上的数的个数cnt,再求出所有满足此条件的四位数平均值pjz1,以及所有不满足此条件的四位数平均值pjz2。最后main函数调用写函数writeDat把结果cnt,pjz1,pjz2输出到out.dat文件。

33.程序test.c的功能是:计算100以内满足以下条件的所有整数i的个数cnt以及这些i之和sum。条件:i,i+4,i+10都是素数,同时i+10小于100。请考生编写函数countvalue实现程序要求,最后调用函数wfiteDAT把结果cnt和sum输出到文件out.dat中。(数值l不是素数)

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

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

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

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

35.程序test.c的功能是:计算出自然数SIX和NINE满足条件SIX+SIX+SIX=NINE+NINE的个数cnt,以及满足此条件的所有SIX与NINE的和SUM。请编写函数countValue实现程序的要求,最后main函数调用函数writeDAT把结果cnt和sum,输出到文件0ut.dat中。

其中的S,I,X,N,E各代表一个十进制数字,允许代表的数字相同,但s和N不能为0。例如:944+944+944=1416+1416注意:部分源程序存放在test.c文件中。

请勿改动主函数main和输出数据函数writeDAT的内容。

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

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

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

填入你编写的若干语句。

37.函数ReadDat实现从文件in.dat中读取一篇英文文章存入到字符串数组XX中,请编制函数StrCharJR,其函数的功能是t以该文章中的行为单位把字符串中的所有字符的二进制ASCII值右移4位,高位补0,然后把右移后的字符ASCII值再加上原字符的ASCII值,得到新的值仍存入原字符串对应的位置上,之后把已处理的结果仍按行重新存入数组XX中。最后main函数调用函数WriteOat把结果XX输出到文件out.dat中。

例如:

”z”对应的ASCII值为7AH,二进制值为01111010,右移4位后为00000111,加上原来”2”的ASCII值01111010得到10000001结果。

原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符号和空格,并也按字符处理。

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

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

38.程序test.c的功能是:选出1000至5000范围内(包括1000、5000)符合下面条件的四位自然数。条件是:千位数字与百位数字之和等于十位数字与个位数字之和,且千位数字与百位数字之和等于个位数字与千位数字之差的整10倍。计算并输出这些四位自然数的个数cnt以及这些数的和sum。请编写函数countValue实现程序的要求。最后main函数调用函数writeDAT把结果crlt和sum输出到out.dat文件中。

39.设有n个人围坐一圈并按顺时针方向从1到n编号,从第s个人开始进行1到m的报数,报数到第m个人,此人出圈,再从他的下一个人重新开始1到m的报数,如此进行下去直到所有的人都出圈为止。现要求按出圈次序,每10人一组,给出这n个人的顺序表。请考生编写函数Josegh(void)实现此功能,并调用函数writeDat,把结果P输出到文件out.dat中。

设n=100,s=1,m=10。

①将1到n个人的序号存入一维数组P中;

②若第i个人报数后出圈,则将p[i]置于数组的倒数第i个位置上,而原来第i+1个至倒数第i个元素依次向前移动一个位置;

③重复第②步直至圈中只剩下p[1]为止。

注意:部分源程序已经给出。

请勿改动主函数main和输出数据函数writeDAT的内容。

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

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

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

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

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

五、设计与应用题(2题)41.设在SQLServer2008某数据库中,已建立了四个文件组:fg1、f92、f93和f94,以及一个分区函数RangePF1。RangePF1的定义代码如下:CREATEPARTITIONFUNCTIONRangePFl(int)ASRANGELEFTFORVALUES(100,200,300)(1)请基于RangePFl创建一个分区方案RangePSl,每个分区对应一个文件组。(5分)(2)请使用RangePSl创建一个分区表PartitionT(Gid,GoodName,Price),该表基于Gid列创建分区。其中Gid:int类型,取值大于等于1;GoodName:统一字符编码可变长类型,最多可存储20个汉字;Price:定点小数类型,小数部分1位,整数部分到千位。(5分)

42.设某教学管理系统,其查询模块需要提供如下功能:Ⅰ.查询系信息,列出各系编号、系名和系办公电话;Ⅱ.查询某系教师的信息,列出教师号、教师名、工资和聘用日期;Ⅲ.查询某教师讲授的课程信息,列出课程号、课程名和学分;Ⅳ.查询讲授某门课程的教师信息,列出教师名和职称;V.查询某门课程的先修课程信息,列出先修课程号和先修课程名。系统有如下业务规则:Ⅰ.一个系可聘用多名教师,一名教师只能受聘于一个系;Ⅱ.一名教师可讲授多门课程,一门课程可由多名教师讲授;Ⅲ.一门课程可以有多门先修课程,也可以没有先修课程。(1)请根据以上查询功能与业务规则,用ER图描述该系统的概念模型。(5分)(2)将ER图转换为满足3NF的关系模式,并说明每个关系模式的主码和外码。(5分)

六、单选题[1分](2题)43.关于优化查询说法正确的是()。

A.避免或简化排序的目的是实现查询优化

B.在保证数据库一致性的前提下,将频繁操作的多个可以分割的处理过程放在一个存储过程中,这样可以大大提高系统的响应速度

C.使用临时表会占用较多的系统资源,尤其对于大规模并发量的情况下,很容易使得系统资源耗尽而崩溃

D.相关子查询的使用可以加速查询

44.设有购买表(顾客号,商品号,购买时间)。现要查询顾客A与顾客B购买的相同商品。有下列查询语句:Ⅰ.SELECT商品号FROM购买表WHERE顾客号=ˊAˊAND商品号IN(SELECT商品号FROM购买表WHERE顾客号=ˊBˊ)Ⅱ.SELECT商品号FROM购买表WHERE顾客号=ˊAˊEXCEPTSELECT商品号FROM购买表WHERE顾客号=ˊBˊⅢ.SELECT商品号FROM购买表WHERE顾客号=ˊAˊINTERSECTSELECT商品号FROM购买表WHERE顾客号=ˊBˊⅣ.SELECT商品号FROM购买表WHERE顾客号=ˊAˊUNl0NSELECT商品号FROM购买表WHERE顾客号=ˊBˊ上述语句中,能够实现该查询要求的是()。

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

参考答案

1.A

2.B解析:Oracle表空间有以下特性:1、每个数据库分成一个或多个表空间。有系统表空间和用户表空间之分。2、每个表空间创建一个或多个数据文件。一个数据文件只能和一个数据库相关联。3、数据库表空间的总存储容量就是数据库的总存储容量。

3.B解析:计算机系统发生的主要故障主要是事务故障、系统故障和磁盘故障。

4.D解析:数据库管理系统的数据操纵功能提供用户对数据库的操纵功能,实现对数据库系统的检索、插入、更新和删除。一个好的DBMS应提供功能强、易学易用的数据操纵语言(DML),方便的操作方式和较高的数据存储效率。因此本题正确答案为选项D(查询、插入、修改、删除)。

5.A解析:栈是限定仅在表的一端进行插入和删除运算的线性表。队列是限定所有的插入都在去的一端进行,所有的删除都在表的另一端进行的线性表。串是由零个或多个字符组成的有限序列。注意:队列是限定所有的插入都在表的一端进行,所有的删除都在表的另一端进行的线性表,故B)错;栈是限定仅在表的一端进行插入和删除运算的线性表,故C),D)错。掌握栈和队列、串和数组的的区别,以及链表的存储方式。

6.C解析:本题是对用于数据库应用系统界面开发工具的考查。题目中的选项A、B和D都是数据库应用系统界面的开发工具。而选项C(PowerDesigner)属于计算机辅助软件工程工具,是一个功能强大而使用简单的工具集,支持从处理流程模型到对象和组件的生成的应用开发周期的各个阶段,并提供了一个完整的建模解决方案,不属于界面开发工具。因此本题正确答案为选项C.

7.A解析:线性链表具有的特点是不必事先估计所需存储空间大小,插入与删除时不必移动元素,所需空间与线性表长度成正比,但不能进行随机访问。

8.B解析:一个进程占有处理器运行时,由于自身或外界的原因(出现了事件)使运行被打断,让操作系统处理所出现的事件,到适当的时候再让被打断的进程继续运行,这个过程称“中断”。把引起中断的事件称为“中断源”。中断源分为5种,分别为I/O中断、数据通道中断、时钟中断、故障中断和程序中断。

9.B解析:系统产生死锁的4个必要条件是:1、资源的独占使用;2、资源的非抢占分配;3、资源的循环等待;4、资源的部分分配。

10.C解析:聚集是将若干对象和它们之间的联系组合成一个新的对象。

11.权限回收(或收回权限)权限回收(或收回权限)解析:SQL的安全控制功能由GRANT和REVOKE语句实现。其中GRANT是授予权限命令,REVOKE是收回权限命令。REVOKE命令的一般格式为:

REVOKE<权限>[<权限>]

[ON<对象类型><对象名>][,<对象名>]…

FROM<用户>[,<用户>]…;

12.架构(或模式,Schema)

13.N-1

14.协议规格说明【解析】在OSl中,采用了三级抽象,即体系结构、服务定义和协议规格说明。

15.环或环路或回路或进程环路环或环路或回路或进程环路解析:死锁是一种系统状态,在多道程序系统中,一组进程的每一个进程均无限期地等待被该组进程中的另一个进程所永远不会释放的资源。产生死锁的必要条件是:

①互斥条件

②不可剥夺(不可抢占)

③部分分配(占有等待)

④循环等待

如果没有一个资源占有的环路,是不会形成死锁的。

16.联接产品联接产品

17.子表子表

18.R.A=S.A或S.A=R.AR.A=S.A或S.A=R.A解析:自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且要在结果中把重复的属性去掉。本题是自然连接,所以本题答案为R.A=S.A或S.A=R.A。

19.Dbcreator

20.感知对象【解析】传感器、感知对象和观察者构成传感器网络的3个要素。

21.B

22.C

23.A

24.B选项A),AdHoC网络是一种自组织、对等式、多跳的无线移动网络;选项B),AdhoC网络是在分组无线网的基础上发展起来的;选项C),AdHoC网络是由一组用户构成、不需要基站的移动通信模式;选项D),AdHoC网络在军事上卜分重要,它可以支持野外联络、独立站点通信和舰队战斗群通信、临时通信要求和无人侦查与情报传输。

25.C解析:栈是限制仅在表的一端进行插入和删除运算的线性表,通常称插入、删除的这一端为栈顶(Top),另一端称为栈底(Bottom)。当表中没有元素时称为空栈。

根据上述定义,每次删除(退栈)的总是当前栈中“最新”的元素,即最后插入(进栈)的元素,而最先插入的是被放在栈的底部,要到最后才能删除。根据上述原理,C)3,1,2,既然先出栈的是3,说明1,2已经进栈,那么1不可能在2之前出栈。

26.C

27.D

28.A解析:数据库管理系统提供数据定义语言(DDL)来描述逻辑模式,严格定义数据的名称、特征、相互关系、约束等。DML是实现对数据库数据检索、插入、更新与删除操作的数据库操纵语言。

29.CSQL语言集数据定义、数据查询和数据操纵和数据控制功能于一体。数据定义语言的动作包括CREATE、DROP和ALTER;数据操纵语言的动作包括:INSEPT、UPDATE和DELETE;数据控制语言的动作包括GRANT和REVOKE。

30.C对应于外模式的数据库称为用户级数据库。它是用户可以看到并准许使用的数据库。模式也叫做概念模式,它是全局逻辑级的,是数据库的整体逻辑结构。内模式对应于数据库的存储结构,是为了提高模式对存储设备的独立性而设立的。

31.【审题关键句】千位+十位组合与个位+百位组合,都是奇数,两数相减结果大于等于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

32.\n【审题关键句】千位+百位等于十位+个位的数的个数,求满足此条件以及不满足此条件的四位数平均值pjz1和pjz2。

\n【解题思路】

\n本题类似第20套试题,通过审题可以发现仅有一个不同点,即判断符合条件的四位数是“千位+百位等于十位+个位”,参考答案的第8条语句,修改if条件语句的判断条件即可。

\n【参考答案】

\n

33.\n【审题关键句】100以内(含l00)满足i、i+4、i+10都是素数的整数的个数以及这些i之和。

\n【解题思路】

\n①首先定义循环变量i,然后将i的值赋初值为3,每循环一次则将i的值加1,直到i<90。

\n②在for循环中,每执行一次循环则调用函数isPrime(该函数具体的算法已经在源程序中给出,直接用即可),对i、i+4、i+10是否同时是素数进行判断,如果这三个数同时为素数,则计数变量cnt值加1,同将时将变量i的值累加到sum上。

\n【参考答案】

\n

\n

34.\n【审题关键句】字符替代f(p)=p*11mod256,小于等于32或对应大写字母不变,否则替换。

\n【解题思路】

\n本题类似第65套试题,通过审题可以发现主要是排序条件的设置要求有所不同,参考答案的第6行,修改if条件语句的设置即可。另外,在源程序中已经定义了一个无符号变量va1,因此,在编写答案程序时,不需要再重新定义。

\n【参考答案】

\n

\n

35.【审题关键句】计算满足条件的sIX+sIX+sIx-NINE+NINE的SIX和NINE的个数以及满足此条件所有的SIX与NINE的和,S,I,X,N,E各代表一个十进制数字。

\n【解题思路】

\n①定义整型变量S,i,X,n,e,six,nine。

\n②在第一层for循环中,因为S的值不能为0,所以循环变量s从1开始,依次递增直到其值等于10,退出循环。在第二层for循环中,循环变量i从0开始,依次递增直到其值等于10,退出循环。在第三层for循环中,循环变量X从0开始,依次递增直到其值等于10,退出循环。在第四层for循环中,因为n的值不能为0,所以循环变量n从1开始,依次递增直到其值等于10,退出循环。在第五层for循环中,循环变量e从0开始,依次递增直到其值等于10。

\n③设置完所有for循环条件后,在循环体中,由变量S的值乘以l00,变量i的值乘以10,以及变量X组成一个三位数赋给变量six,由变量n的值乘以1000,变量i的值乘以100,变量n的值乘以10,以及变量e组成一个四位数赋给变量nine,再用if条件语句判断,如果三倍的six等于两倍的nine,则计数变量cnt加1,把six与nine的和累加到变量sum,同时在屏幕上,输出six与nine的值。

\n【参考答案】

\n

\n

\n

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

37.\n【审题关键句】字符的ASCII值右移4位二进制位,高位补0后加原字符的ASCII值。

\n【解题思路】

\n①定义两个循环变量i、j和一个无符号字符变量tmp。

\n②在第一个for循环语句中,循环变量i从0开始,依次递增直到其值等于文章最大行数maxline。在第二个for循环中,从每行第1个字符开始,依次递增直到其值等于该行字符串的最大长度,然后在循环体中指定每次循环时,将第i行第i个位置上的字符的ASCII值的二进制数右移4位,然后将所得的值再加上原字符的ASCII码值。

\n【参考答案】

\n

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

39.\n【审题关键句】围圈问题。

\n【解题思路】

\n①定义整型变量i、j,表示出圈人位置的变量s1和出圈人序号的变量W。并将S的值赋给变量s1(s的值已在源程序中赋值为1)。

\n②通过一个for循环,将n个人的序号存入一维数组P中(n的值已在源程序中赋值为100)。

\n③再建立一个for循环,循环变量i从n开始,即从100开始,依次递减直到其值小于2时退出循环。由于每执行一次循环,人数就会减少1个,因此,此处的for循环应表示为递减方式。在该循环体中,先计算每次出圈人的位置,通过表达式“(s1+m.1)%i”计算每次出圈人的位置(m的值已在源程序赋值为1O)。若所得结果为0,则说明要开始报数的是最后一个人,在此人前面的那个人就是要出圈的人,再通过一个循环将要出圈的人移到数组最后。

\n【参考答案】

\n

\n

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

\n【解题思路】

\n本题类似第44套试题,通过审题可以发现仅有一个不同点,即参与平均值计算的元素是数组xx[i]右移一位之后为奇数的元素,参考答案的第9条语句。

\n【参考答案】

\n

\n

41.(1)【解题思路】数据实际上是依附于表而存在,我们将表放入到文件组中,而文件组是一个逻辑的概念,其实体是辅助数据库文件(nd

温馨提示

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

评论

0/150

提交评论