2022年山东省威海市全国计算机等级考试数据库技术模拟考试(含答案)_第1页
2022年山东省威海市全国计算机等级考试数据库技术模拟考试(含答案)_第2页
2022年山东省威海市全国计算机等级考试数据库技术模拟考试(含答案)_第3页
2022年山东省威海市全国计算机等级考试数据库技术模拟考试(含答案)_第4页
2022年山东省威海市全国计算机等级考试数据库技术模拟考试(含答案)_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

2022年山东省威海市全国计算机等级考试数据库技术模拟考试(含答案)学校:________班级:________姓名:________考号:________

一、1.选择题(10题)1.在分布式数据库系统中,逻辑数据库被划分成若干片段,其中桉投影操作来分片的称为

A.水平分片B.垂直分片C.导出分片D.选择分片

2.IP地址是

A.Internet中的子网地址

B.接入Internet的计算机地址编号

C.Internet中网络资源的地理位置

D.接入Internet的局域网编号

3.以下有关操作系统的叙述中,哪一个是不正确的?

A.操作系统管理着系统中的各种资源

B.操作系统应为用户提供良好的界面

C.操作系统是资源的管理者和仲裁者

D.操作系统是计算机系统中的一个应用软件

4.数据管理技术的发展是与计算机技术及其应用的发展联系在一起的,经历了由低级到高级的发展。分布式数据库、面向对象数据库等新型数据库属于哪一个发展阶段?

A.人工管理阶段B.文件系统阶段C.数据库系统阶段D.高级数据库技术阶段

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

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

6.在关系数据库系统中,当关系的类型改变时,用户程序也可以不变。这是

A.数据的物理独立性B.数据的逻辑独立性C.数据的位置独立性D.数据的存储独立性

7.若从第120号磁道开始扫描,采用最短寻道时间优先算法,磁道号的访问序列为{110,78,75,59,58,38,170,180,204},则平均寻道长度为()。

A.55.3B.27.5C.27.8D.32.5

8.设有关系R(S,D,M),其函数依赖集F={S→D,D→M}。则关系R至多满足()。

A.1NFB.2NFC.3NFD.BCNF

9.DBMS的层次结构按照处理对象的不同,依最高级到最低级的次序来划分,它们是()。

A.应用层、语言翻译处理层、数据存取层、数据存储层、操作系统层

B.应用层、数据存取层、语言翻译处理层、数据存储层、操作系统层

C.应用层、语言翻译处理层、数据存储层、数据存取层、操作系统层

D.应用层、数据存取层、数据存储层、语言翻译处理层、操作系统层

10.PowerDesigner中的AppModeler模块的主要功能是()。

A.用于物理(逻辑)数据库的设计和应用对象的生成

B.通过模型的共享支持高级团队工作的能力

C.用于数据仓库和数据集市的建模和实现

D.提供对PowerDesigner所有模型信息的只读访问

二、填空题(10题)11.在路由表中,特定主机路由表项的子网掩码为___________。

12.以太网帧结构由前导码、帧前定界符、目的地址字段、源地址字段、类型字段、___________和帧校验字段几个部分组成。

13.运行IP协议的Intemet可以为其高层用户提供___________的、面向无连接的、尽最大努力的数据报投递服务。

14.第三代数据库系统(或新一代数据库系统)是______技术和数据库技术相结合的系统。

15.组播路由协议分为___________组播路由协议和域间组播路由协议。

16.创建一个进程的主要任务是建立该进程的______。

17.计算机网络利用通信线路将不同地理位置的多台独立的——的计算机系统连接起来,以实现资源共享。

18.给定一个关键字序列(24,19,32,43,38,6,13,22),进行快速排序,扫描一趟后的结果是______。

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

20.设在关系模式R(A,B,C,D,E,F,G)中,根据语义有如下函数依赖集F=(A→B,C→D,C→F,(A,D)→E,(E,F)→G)。关系模式R的码是______。

三、单选题(10题)21.栈和队列是两种重要的线性结构,对它们的描述错误的是()。

A.栈顶是允许操作的一端,栈底是不允许操作的一端

B.表达式求值一般采用栈来实现

C.队列是一种先进先出的线性表,允许对队列两端进行操作

D.队列可以用链式存储结构

22.在对全局E-R模型进行优化时,通常利用规范化理论中的()概念消除冗余关系。

A.无损联接B.函数依赖C.范式D.逻辑蕴涵

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

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

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

A.SELECT

B.SELECT和INSERT

C.INSERT、UPDATE和DELETE

D.SELECT、INSERT、UPDATE和DELETE

25.关系数据模型有许多优点,但下面所列的条目中哪一条不是它的优点()。A.A.结构简单

B.高度非过程化

C.有标准语言

D.可表示复杂的语义

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

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

27.设数组data[0…m]作为循环队列SQ的存储空间,front为队头指针,rear为队尾指针,则执行出队操作的语句为()

A.front:=front1

B.front:=(front1)modm

C.rear:=(rear1)modm

D.front:=(front1)mod(m1)

28.在建立表结构时定义关系完整性规则()

A.使DBS能够自动维护数据完整性约束条件B.还需要编程实现数据完整性约束条件C.没有必要定义D.将使系统操作复杂

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

30.SQLServer数据库是由文件组成的。下列关于数据库所包含的文件的说法中,正确的是__________。

A.一个数据库可包含多个主要数据文件和多个日志文件

B.一个数据库只能包含一个主要数据文件和一个日志文件

C.一个数据库可包含多个次要数据文件,但只能包含一个日志文件

D.一个数据库可包含多个次要数据文件和多个日志文件

四、C语言程序设计题(10题)31.函数ReadDat实现从文件in.dat中读取一篇英文文章,存入到无符号字符串数组XX中;请编制函数encryptChar,按给定的替代关系对数组XX中的所有字符进行替代,其替代值仍存入数组)xx的对应的位置上,最后调用函数wmeDat把结果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的内容。

32.设有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的内容。

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

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

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

填入你编写的若干语句。

34.函数readDat是从文件in.dat中读取20行数据存放到字符串数组XX中(每行字符串长度均小于80)。请编制函数jsSort,其函数的功能是:以行为单位对字符串按下面给定的条件进行排序,排序后的结果仍按行重新存入字符串数组XX中,最后调用函数writeDat把结果XX输出到文件out.dat中。

条件:字符串从中间一分为二,左边部分按字符的ASCII值升序排序,右边部分不变,左边经排序后再与右边部分进行交换。如果原字符串长度为奇数,则最中间的字符不参加处理,字符仍放在原位置上。

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

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

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

37.程序test.C的功能是:利用以下所示的简单迭代方法求方程cos(x).x=0的一个实根。迭代公式:Xn+1=cos(xn)(n是迭代次数)

迭代步骤如下:

(1)取X1初值为0.0;

(2)X0=X1,把X1的值赋给x0;

(3)X1=cos(x0),求出一个新的x1;

(4)若x0.X1的绝对值小于0.000001,执行步骤(5),否则执行步骤(2);

(5)所求X1就是方程cos(X)-X=0的一个实根,作为函数值返回。

请编写函数countValue实现程序的功能,最后main函数调用函数writeDAT把结果输出到文件0ut.dat中。注意:部分源程序存放在test.C文件中。

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

38.已知在文件in.dat中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称mc(字符型10位),单价dj(整型),数量s1(整型),金额je(长整型)五部分组成。其中:金额=单价*数量。函数ReadDat读取这100个销售记录并存入结构数组sell中。请编制函数SortDat,其功能要求:按产品代码从小到大进行排列,若产品代码相同,则按金额从小大进行排列,最终排列结果仍存入结构数组sell中。最后main函数调用函数WriteDat把结果输出到文件out.dat中。

提示:若中间变量为PROtemp,则可以直接使用结构赋值语句进行解题;产品代码比较请用函数strcmp进行解题。例如:sell[i]=temp;

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

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

39.已知在文件in.dat中存有100个产品销售记录,每个产品销售记录由产品代码dm(字符型4位),产品名称mc(字符型10位),单价dj(整型),数量sl(整型),金额je(长整型)五部分组成。其中:金额=单价*数量。函数ReadDat读取这100个销售记录并存入结构数组sell中。请编制函数SortDat,其功能要求:按金额从小到大进行排列,若金额相等,则按产品代码从小到大进行排列,最终排列结果仍存入结构数组sell中。最后main函数调用函数WriteDat把结果输出到文件out.dat中。

提示:若中间变量为PROtemp,则可以直接使用结构赋值语句进行解题。

例如:sell[i]=temp;

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

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

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

例:原文:dAe,BfC.

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

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

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

六、单选题[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.效率低下的SQL语句往往是导致系统性能不佳的主要原因。设有如下优化系统性能的方法:Ⅰ.利用存储过程封装频繁使用的SQL语句Ⅱ.重新安排数据存储,整理回收碎块Ⅲ.不要随意使用游标Ⅳ.合理使用相关子查询Ⅴ.调整表结构定义以上属于优化SQL语句执行效率方法的是()。

A.Ⅰ、Ⅲ、ⅣB.Ⅰ、Ⅲ、ⅤC.Ⅱ、Ⅳ、ⅤD.Ⅰ、Ⅳ、Ⅴ

参考答案

1.B解析:投影操作是对表中属性(列)的操作。

2.B解析:IP地址标识了连接到网络上的某个计算机或网络设备,它是接入Internet的计算机地址编号,IP地址必须是惟一的。

3.D解析:操作系统是计算机系统中的一个系统软件,它是这样的一些程序模块的集合——它们有效地组织和管理计算机系统中的硬件和软件资源,合理组织计算机流程,控制程序的执行,并向用户提供各种服务功能,使用户能够灵活、方便和有效地使用计算机,使整个计算机能够高效运行。操作系统有两大重要作用:①管理系统中的各种资源,即是资源的管理者和仲裁者;②为用户提供良好的界面。对照本题的4个选项,选项A、B和C都在操作系统的定义和作用中提到。而选项D操作系统是计算机系统中的一个应用软件却与操作系统定义(是一系统软件)相矛盾。因此本题的答案为D。

4.D解析:高级数据库技术阶段大约从20世纪70年代后期开始。在这一阶段中,计算机技术获得了更快的发展,并更加广泛地与其他学科技术相互结合、相互渗透,在数据库领域中诞生了很多高新技术,并产生了许多新型数据库,如:分布式数据库和面向对象的数据库。

5.C解析:数据库概念结构设计的任务是产生反映企业组织信息需求的数据库结构,即概念模型。

6.B解析:当模式改变时,数据库管理员对各个外模式/模式的映像做相应的改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。

7.B解析:用最短寻道时间优先扫描算法,一次扫描的磁道为;110,78,75,59,58,38,170,180,204,分别移动的磁道长度为:10,32,3,16,1,20,132,10,24,因此平均寻道长度为27.5。

8.B解析:根据1NF,2NF的定义,关系R均满足,而3NF要求关系R中的每个非主属性不传递依赖于主码这由F显然是不可能满足的。故R至多满足2NF。

9.ADBMS的层次结构从最高级到最低级的次序:应用层、语言翻译处理层、数据存取层、数据存储层、操作系统层。

10.A解析:PowerDesignerAppModeler用于物理(逻辑)数据库的设计和应用对象的生成。PowerDesignerMetaWorks通过模型的共享支持高级团队工作的能力。PowerDesignerWarehouseArchitect用于数据仓库和数据集市的建模和实现。PowerDesignerViewer提供了对PowerDesigner所有模型信息的只读访问,包括处理、概念、物理(逻辑)和仓库模型。

55255【解析】在路由表中,对于特定主机路由,可采用255;255.255255作为子网掩码,采用目的主机IP地址作为目的地址:对于默认路由,则采用0.0.00作为子网掩码,默认路由器的地址作为目的地址。

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

13.不可靠【解析】互联网应该屏蔽低层网络的差异,为用户提供通用的服务。具体地讲,运行IP协议的互联层可以为其高层用户提供如F3种服务:(1)不可靠的数据投递服务;(2)面向无连接的传输服务;(3)尽最大努力投递服务。

14.面向对象或OO面向对象或OO

15.域内【解析】组播协议分为主机和路由器之间的协议,即组播组管理协议以及路由器和路由器之间的协议。目前,组管理协议包括hxtemet组管理协议IGMP和Cisc0专用的组管理协议CGMP,组播路由协议又分为域内组播路由协议和域间组播路由协议两类。

16.PCB或进程控制块PCB或进程控制块

17.自治【解析】计算机网络利用通信线路将不同地理位置的多个自治的计算机系统连接起来,以实现资源共享。

18.221913624384332

19.先写日志原则先写日志原则

20.(AC)(A,C)解析:候选码的定义是:设K为关系模式R<U,F>中的属性或属性组。若K→U在F+中,而找不到K的任何一个真子集K',能使K'→U在F+中,则称K为关系模式R的候选码。本题易知C必然是主属性,再利用增广律逐个尝试可以知道(A,C)是候选码。

21.C解析:队列是一种先进先出的线性表,它只允许在表的一段进行插入,而在另一端进行删除,允许插入的一端叫做队尾,允许删除的一端叫做队头。

22.B

23.B

24.C

25.D关系模型由关系数据结构、关系操作集合和关系完整性约束3大要素组成。关系模型的数据结构单一,在关系模型中,现实世界的实体以及实体问的各种联系均用关系来表示。关系操作的特点是集合操作方式,即操作的对象和结果都是集合。关系代数、元组关系演算和域关系演算均是抽象的查询语言,这些抽象的语言与具体的DBMS中实现的实际语言并不完全一样,但它们能用作评估实际系统中查询语言能力的标准或基础。关系模型的一个优点是高度非过程化。

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

27.D

28.A

29.D

30.D

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

\n【解题思路】

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

\n【参考答案】

\n

\n

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

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

34.\n【审题关键句】以行为单位从字符串左边部分升序排序,排序后左边部分与右边部分进行交换。如果原字符串长度为奇数,则最中间的字符不参加处理。

\n【解题思路】

\n本题类似第77套试题,通过审题可以发现主要是对字符串左边部分排序时所采用的排序方式不同,参考答案的第11行,修改if条件语句的设置即可。

\n【参考答案】

\n

\n

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

\n【解题思路】

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

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

\n【参考答案】

\n

\n

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

\n【解题思路】

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

\n【参考答案】

\n

37.\n【审题关键句】Xn+1=cos(Xn)的迭代计算。

\n【解题思路】

\n①因为方程cos(x).x=0的根为实数,所以定义两个双精度型变量x0,x1。并把变量x1的初值设为0.0。

\n②根据题目中给出的求方程一个实根的迭代算法,在while循环中,首先把变量x1的值赋给x0,然后利用表达式cos(xO)

\n求出一个值x1,再调用vc6.0的求绝对值的库函数fabs0,判断如果x0与x1差的绝对值小于0.000001,就认为x1的值是方程cos(x).x=0的一个实根,此时退出循环,把xl的值返回。

\n【参考答案】

\n

38.\n【审题关键句】计算金额,按产品代码从小到大进行排列,相同的则按金额从小到大排列,结果存入结构数组。

\n【解题思路】

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

\n【参考答案】

\n

\n

39.\n【审题关键句】计算金额,按金额从小到大进行排列,相同的则按产品代码从小到大排列,结果存入结构数组。

\n【解题思路】

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

\n【参考答案】

\n

\n

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

\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

温馨提示

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

评论

0/150

提交评论