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

下载本文档

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

文档简介

2021年四川省德阳市全国计算机等级考试数据库技术真题(含答案)学校:________班级:________姓名:________考号:________

一、1.选择题(10题)1.以下不是队的基本运算的是

A.从队尾插入一个新元素B.从队列中删除第i个元素C.判断一个队列是否为空D.读取队头元素的值

2.关系模式规范化的最起码的要求是达到第一范式,即满足

A.每个非码属性都完全依赖于主码B.主码属性惟一标识关系中的元组C.关系中的元组不可重复D.每个属性都是不可分解的

3.若一个关系模式R∈3NF,则它同时又是()。

A.2NFB.1NFC.BCNFD.1NF、2NF

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

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

5.设有关系SC(SNO,CNO,GRADE),主码是(SNO,CNO)。遵照实体完整性规则

A.只有SNO不能取空值B.只有CNO不能取空值C.只有GRADE不能取空值D.SNO与CNO都不能取空值

6.单用户数据库管理系统与多用户数据库管理系统之间的最明显的也是最重要的差别是:是否支持多个用户______数据库。

A.查询B.定义C.修改D.共享

7.OLAP是以数据库或数据仓库为基础的,其最终数据来源是来自底层的

A.数据仓库B.操作系统C.数据字典D.数据库系统

8.SQL语言通常称为()A.结构化查询语言B.结构化控制语言C.结构化定义语言D.结构化操纵语言

9.Internet上的计算机,在通信之前需要

A.建立主页B.指定一个IP地址C.使用WWW服务D.发送电子邮件

10.逻辑文件存放在存储介质上时,采用的组织形式是与什么有关?

A.逻辑文件结构B.存储介质特性C.主存储器管理方式D.分配外设方式

二、填空题(10题)11.在数据仓库建立过程中,对数据进行纠正和预处理的过程称为数据______。

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

13.计算机是一类智能机器,这是因为它除了能完成算术运算外还能完成某些【】。

14.关系模式规范化过程中,若要求分解保持函数依赖,那么模式分解一定可以达到3NF,但不一定能达到______。

15.虚拟存储管理系统中,在进行地址映射时,若所需页面不在内存,则产生【】中断。

16.使用PowerDesigner的DataArchitect可以对数据库生成物理数据模型(PDM),这种功能通常称为【】。

17.如果关系模式R中所有的属性都是主属性,则R的规范化程度至少达到______。

18.在顺序表(4,7,9,12,13,14,18,19,22,29,50)中,用二分法查找关键码值11,所需的关键码比较次数为______。

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

20.在页式存储管理中,存放在高速缓冲存储器中的部分页表称为_____。

三、单选题(10题)21.以下有关数据结构的叙述,正确的是()

A.线性表的线性存储结构优于链式存储结构

B.二叉树的第i层上有2i-1个结点,深度为k的二叉树上有2k-1个结点

C.二维数组是其数据元素为线性表的线性表

D.栈的操作方式是先进先出

22.“把查询sc表和更新sc表的grade列的权限受予用户user1”的正确SQL语句是()。

A.GRANTSELECT,UPDATE(grade)ONTABLEscTOuser1

B.GRANTSELECTsc,UPDATEsc,gradeTOuser1

C.GRANTSELECT,UPDATEONTABLEsC.gradeTOuser1

D.GRANTSELECTONTABLEsc,UPDATEONTABLEsc(grade)TOuser1

23.进程具有并发性和()两大重要属性。

A.动态性B.静态性C.易用性D.封闭性

24.Aarr和Barr两个数组说明如下:VARAarr:Array[0…7]ofchar;Barr:Array[-5…2,3…8]ofchar;这两个数组分别能存放的字符的最大个数是()

A.7和35B.1和5C.8和48D.1和6

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

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

26.在SQL语言中,()子句能够实现关系参照性规则。

A.PRIMARYKEY

B.NOTNULL

C.FOREIGNKEY

D.FOREIGNKEY...REFERENCES...

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

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

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

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

28.下列关于数据库重构的说法中,错误的是__________。

A.数据库的重构就是对数据库的逻辑结构作必要的小范围改变

B.当存储空间的分配过于零散,导致存取效率下降,所以必须重构数据库

C.数据库重构包括重新设计数据库及其应用程序

D.如果能够重构数据库,尽量不要重新设计数据库及相应的应用程序

29.如果两个实体之间的联系是M∶N,则在转换成关系模型时,()引入第三个交叉关系。

A.需要B.不需要C.无所谓D.将两个实体合并

30.对具有相同关键字的关系模式,如果他们的处理主要是查询操作,且常在一起,可将这列关系模式进行什么操作?

A.模式评价B.优化模式C.合并D.分解

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

32.已知数据文件IN1.DAT和IN2.DAT中分别存有100个两位十进制数,并且已调用读函数readDat把这两个文件中的数存入数组a和b中,请考生编制一个函数jsVal,实现的功能是依次对数组a和b中的数按条件重新组成一个新数并依次存入数组C中,再对数组C中的数按从小到大的顺序进行排序,最后调用输出函数writeDat把结果C输出到文件out.dat中。组成新数的条件:如果数组a和b中相同下标位置的数均是奇数,则数组a中十位数字为新数的千位数字,个位数字仍为新数的个位数字,数组b中的十位数字为新数的百位数字,个位数字为新数的十位数字,这样组成的新数并存入数组C中。

33.函数ReadDat实现从文件in.dat中读取一篇英文文章存入到无符号字符串数组XX中;请编制函数ChA,其函数的功能是:以行为单位把字符串中的第一个字符的ASCII值加第二个字符的ASCII值,得到第一个新的值,存入数组单元xx[i][0]中(其中:i是文章中的某行)。第二个字符的ASCII值加第三个字符的ASCII值,得到第二个新的值,存入数组单元xx[i][1]中。以此类推一直处理到最后第二个字符,最后一个字符的ASCII值加原第一个字符的ASCII值,得到最后一个新的值,存放在原字符串对应的位置上,之后把已处理的字符串逆转后仍按行重新存入无符号字符串数组XX中。最后main函数调用函数WriteDat把结果XX输出到out.dat文件中。

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

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

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

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

35.已知在文件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的内容。

36.函数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的内容。

37.函数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的内容。

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

39.程序test.c的功能是:选出1000至5000范围内(包括1000、5000)符合下面条件的四位自然数。条件是:千位数字与百位数字之和等于十位数字与个位数字之和,且千位数字与百位数字之和等于个位数字与千位数字之差的整10倍。计算并输出这些四位自然数的个数cnt以及这些数的和sum。请编写函数countValue实现程序的要求。最后main函数调用函数writeDAT把结果crlt和sum输出到out.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.设某教学管理系统,其查询模块需要提供如下功能:Ⅰ.查询系信息,列出各系编号、系名和系办公电话;Ⅱ.查询某系教师的信息,列出教师号、教师名、工资和聘用日期;Ⅲ.查询某教师讲授的课程信息,列出课程号、课程名和学分;Ⅳ.查询讲授某门课程的教师信息,列出教师名和职称;V.查询某门课程的先修课程信息,列出先修课程号和先修课程名。系统有如下业务规则:Ⅰ.一个系可聘用多名教师,一名教师只能受聘于一个系;Ⅱ.一名教师可讲授多门课程,一门课程可由多名教师讲授;Ⅲ.一门课程可以有多门先修课程,也可以没有先修课程。(1)请根据以上查询功能与业务规则,用ER图描述该系统的概念模型。(5分)(2)将ER图转换为满足3NF的关系模式,并说明每个关系模式的主码和外码。(5分)

42.设有某商业单位需要建立商务数据库用以处理销售记账,它记录的数据包括:顾客姓名,所在单位及电话号码;商品名称,型号,产地及单价;某顾客购买某商品的数量及日期。假定无同名顾客,无同型号商品,由话公用腼客可存不同日期买同一商品。(1)请画出该单位的商务ER图模型并优化。(6分)(2)将ER模型换成关系模型并规范化到3NF。(4分)

六、单选题[1分](2题)43.在数据库应用系统生命周期中,系统设计完成后就进入到系统实现与部署阶段。下列关于数据库应用系统实现与部署阶段工作的说法,错误的是()。

A.此阶段会根据数据库逻辑结构和物理结构设计方案以及项目选择的数据库管理系统,编写相关脚本生成数据库结构

B.此阶段会将用户原有数据按照新的数据结构导人到新系统中

C.此阶段会进行应用系统编码和编码测试,编码测试可以使用白盒测试方法也可以使用黑盒测试方法

D.此阶段如果发现系统的功能、性能不满足用户需求,应尽快进行系统升级工作

44.在SQLServer2008中,设ul用户在某数据库中是db;_datawriter角色中的成员,则用户U1从该角色中可以获得的数据操作权限是()。Ⅰ.查询Ⅱ.插入Ⅲ.更改Ⅳ.删除

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

参考答案

1.B解析:队只能在队尾插入元素,从队头删除元素,这就是所谓的“先进先出”,而不能从队列中间删除或插入元素。

2.D解析:关系模式需要满足一定的条件,不同程序的条件称作不同的格式。最低要求的条件是元组的每个分量必须是不可分的数据项,这叫做第一范式,简称1NF,是最基本的规范化。

3.B解析:对于各种范式之间的联系,始终成立。

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

5.D实体完整性规则是对关系中的主属性值的约束,即若属性A是关系R的主属性,则属性A不能取空值。实体完整性规则规定关系的所有主属性都不能取空值,而不仅仅是主码整体不能取空值。由于关系SC(SNO,CNO,GRADE)的主码是(SNO,CNO),所以SNO与CNO都不能取空值。

6.D解析:同一时间内只支持一个用户的数据库管理系统称为单用户数据库管理系统,主要用于个人计算机中;可以并发地支持多个用户的系统称为多用户系统,现在大多数DBMS都是多用户系统。

7.D数据仓库是支持管理决策过程的、面向主题的、集成的、随时间变化的持久的数据集合。构建数据仓库的过程就是根据预先设计好的逻辑模式从分布在企业内部各处的OLTP数据库中提取数据并对经过必要的变换最终形成全企业统一模式数据的过程。当前数据仓库的核心仍是RDBMS管理下的一个数据库系统。数据仓库中数据量巨大,为了提高性能,RDBMS一般也采取一些提高效率的措施:采用并行处理结构、新的数据组织、查询策略、索引技术等等。

8.A解析:本题考查SQL语言的相关知识。SQL语言之所以能够为用户和业界所接受,成为国际标准,是因为它是一个综合的、通用的、功能极强同时又简洁易学的语言。SQL语言集数据查询(dataquery)、数据操纵(datamanipulation)、数据定义(datadefinition)和数据控制(datacontrol)功能于一体,充分体现了关系数据语言的特点和优点。正确答案为选项A。

9.B解析:本题是对Internet基础知识的考查。Internet地址能够唯一确定Internet上每台计算机与每个用户的位置。Internet上的计算机地址有两种表达形式:IP地址和域名。Internet上的每台计算机、路由器在通信之前首先需要指定一个IP地址。IP地址是Internet赖以工作的基础。因此本题正确答案为B。

10.B解析:用户的逻辑文件要存放到存储介质上时,文件系统要根据存储设备的类型,用户采用的存取方式决定文件在存储介质上的组织方式。

11.清理清理

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

13.信息处理信息处理解析:数据处理和信息处理是计算机的重要应用领域,当前的数据也已有更广泛的含义,如图、文、声等多媒体数据,它们都已成为计算机的处理对象。

14.BCNF

15.缺页缺页

16.逆向工程逆向工程解析:PowerDesignerDataArchitect用于两层的即概念层和物理层数据库设计和数据库构造。DataArchitect提供概念数据模型设计,自动的物理数据模型生成,针对多种数据管理系统的数据库生成,开发工具的支持和高质量的文档特性。使用其逆向工程能力,设计人员可以得到一个数据库结构的“蓝图”可用于文档和维护数据或移植到一个不同的DBMS。

17.3NF3NF解析:根据Boyce-Codd范式(BCNF)的定义:若关系R∈1NF,且对于每一个非平凡的函数依赖X→Y,都有X包含码,则R∈BCNF。由于关系模式R中所有的属性都是主属性,但是不能确定X都包含码,所以R的规范化程序至少到3NF。

18.4或4次4或4次解析:二分查找又称为折半查找,首先用待查元素的关键字与线性表中间位置的一个元素的关键值做比较,若相同则查找成功,否则以这个中间值为界将线性表分为两个子表,假设子表1中的所有元素的关键值都小于中间元素,子表2中的所有元素的关键值都大于中间元素,待查元素比中间元素值小,说明待查元素在子表1中,完成了一次查找,这是一次失败的查找,因为11并不在序列表中,所以一共进行了四次比较。

19.子表子表

20.快表快表

21.C

22.A解析:SQL语言用GRANT语句向用户授予数据访问权限,GRANT语句的一般格式为:

GRANT<权限>[,<权限>]…

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

TO<用户>[,<用户>]…

[WITHGRANTOPTION]

所以正确的是选项A)。

23.A

24.C

25.C

26.D

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

28.C

29.A

30.C解析:对具有相同关键字的关系模式,如果他们的处理主要是查询操作,且常在一起,可将这列关系模式进行合并。掌握关系数据库的逻辑结构设计过程,如何正确运用模式评价、优化模式、分解。

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

\n【解题思路】

\n本题类似第24套试题,通过审题可以发现主要是对四位数的筛选条件有所不同,体现在两个方面:①分解后重新组合成两位数的方式不同,参考答案的第8、9条语句重新指定两位数的组合方式:②新组合的两位数的偶数的判断及整除判断,参考答案的第10条语句。注意,两个整除关系表达式要用或运算符(||)连接,且用括号括起来先进行整除运算(因为或运算级别比与运算级别低,因此要括起来),再与奇偶性判断表达式进行与()运算。

\n【参考答案】

\n

\n

\n

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

33.\n【审题关键句】以行为单位,新字符串中每个字符的ASCII码值等于该位置上的原字符ASCII码值加其后面一个字符的ASCII码值,逆序排序。

\n【解题思路】

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

\n②在第一层for循环中,循环变量i从0开始,依次递增直到其值大于或等于maxline,在循环体中,首先把第i行的第一个字符)XX[i][0]赋给变量yuan,在第二层for循环中,循环变量j从0开始,依次递增直到其值等于该行字符串的长度减1,在循环体中,将字符xx[i][j]的ASCII码值与字符)XX[i][j+1]的ASCII码值相加的和保存到字符)xx[i][j]中。当退出第二层for循环后,把第i行的最后一个字符与第一个字符变量yuan的值相加,最后通过strreV函数对i行字符串逆序排序。

\n【参考答案】

\n

\n

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

\n【解题思路】

\n本题类似第9套试题,通过审题可以发现主要有两个不同点:一是要求统计的四位数的条件是“千位一百位-十位-个位>=0”,二是要求该四位数是奇数,这两个不同点都体现在参考答案的第8条语句中,对该语句进行修改即可,其中,可以判断奇数的表达式是“a[i]%2”。

\n【参老答案】

\n

\n

\n

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

\n【解题思路】

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

\n【参考答案】

\n

\n

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

\n【解题思路】

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

\n【参考答案】

\n

\n

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

\n【解题思路】

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

\n【参考答案】

\n

\n

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

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

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

\n【解题思路】

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

\n②在while循环中调用C语言的字符串库函数strstr,返回子字符串substr在字符串q第一次出现的位置,赋给变量P

温馨提示

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

评论

0/150

提交评论