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

下载本文档

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

文档简介

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

一、1.选择题(10题)1.下列关于数据存储结构的叙述中,不正确的是()。

A.数据的存储结构是逻辑结构在计算机存储器中的实现

B.数据的运算是在数据的存储结构实现的

C.数据的存储结构即是数据在计算机内的物理结构

D.数据运算是定义在数据的存储结构上的

2.十进制数值87的二进制数值是

A.1010111B.1010101C.1001111D.1001100

3.______是指对提供某种网络服务的服务器发起攻击,造成网络的“拒绝服务”或丧失服务能力,致使网络工作不正常,甚至于完全不能工作。

A.服务攻击B.非服务攻击C.对象攻击D.非对象攻击

4.下列哪一个不是CPU对外部设备的控制方式?()。

A.中断B.DMAC.通道D.虚设备

5.以下关于广义表的叙述中,哪一条是正确的?

A.广义表是0个或多个单元素或子表组成的有限序列

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.一个是DELETE,另一个是SELECT

B.一个是SELECT,另一个是UPDATE

C.两个都是UPDATE

D.两个都是SELECT

二、填空题(10题)11.设有二维数组A[1,…,10][1,…,12],其每个元素占2个字节,数据按行优先顺序存储,第一个元素的存储地址为1000,则元素A[5][5]的存储地址为

【】

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

13.DBMS对数据库进行封锁时采用的两种基本锁类型是排它锁(X)和______。

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

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

16.“报表向导”中设置字段排序时,一次最多能设置

【】

个字段

17.IP电话系统有4个基本组件:终端设备、___________、多点控制单元和网守。

18.冯.诺伊曼结构的计算机有5大功能部件组成:运算器、控制器、【】、输入设备和输出设备。

19.数据库管理系统提供数据库操纵语言及它的翻译程序,实现对数据库数据的操作,包括______、删除、更新和插入。

20.一个主报表最多只能包含

【】

子窗体或子报表

三、单选题(10题)21.数据库管理系统中用于定义和描述数据库逻辑结构的语言称为()

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

22.PowerBuilder具有的功能特点包括()。

Ⅰ.提供了良好的跨平台性

Ⅱ.具有自己的编程语言PowerScript

Ⅲ.是一种面向对象的开发工具

Ⅳ.事件驱动的程序设计方式

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

23.在SQLServer2008的系统数据库中,为调度信息和作业历史提供存储区域的是

A.MasterB.ModelC.PubsD.Msdb

24.FoxProDOS是()

A.DOS下的数据库B.DOS支持下的数据库管理系统C.为DOS做的FoxProD.DOS下的文字处理系统

25.操作系统在控制和管理进程的过程中,涉及到()这一重要数据结构,这是进程存在的惟一标志。

A.FCBB.FIFOC.FDTD.PCB

26.数据字典是软件需求分析阶段的最重要的工具之一,其最基本的功能是______。

A.数据库设计B.数据通信C.数据定义D.数据维护

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

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

28.某单道批处理系统中有四个作业JOB1、JOB2、JOB3和JOB4,它们到达“输入井”的时刻和需要的运行时间如下表所示:

假设9:30开始进行作业调度,按照最高响应比作业优先算法,首先被调度的作业是

A.JOB1B.JOB2C.JOB3D.JOB4

29.在SQLServer2008中,设有商品表(商品号,商品名,生产日期,单价,类别)。现经常需要执行下列查询:SELECT商品号,商品名,单价FROM商品表WHERE类别IN(′食品′,′家电′)ORDERBY商品号现需要在商品表上建立合适的索引来提高该查询的执行效率。下列建立索引的语句,最合适的是()。

A.CREATEINDEXIdx1ON商品表(类别)

B.CREATEINDEXIdx1ON商品表(商品号,商品名,单价)

C.CREATEINDEXIdx1ON商品表(类别,商品号,INCLUDE(商品名,单价)

D.CREATEINDEXIdx1ON商品表(商品号,INCLUDE(商品名,单价,WHERE类别='食品'OR类别='家电'

30.用直接插入排序方法对下面四个序列进行排序(由小到大),元素比较次数最少的是()

A.94、32、40、90、80、46、21、69

B.32、40、21、46、69、94、90、80

C.21、32、46、40、80、69、90、94

D.90、69、80、46、21、32、94、40

四、C语言程序设计题(10题)31.设有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的内容。

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

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

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

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

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

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

36.程序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的内容。

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

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

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

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

五、设计与应用题(2题)41.在SQLServer2008中,设有教师表(教师号,姓名,所在部门号,职称)和部门表(部门号,部门名,高级职称人数)。请编写满足下列要求的后触发型触发器(设触发器名字为tri_zc)。每当在教师表中插入一名具有高级职称(“教授”或“副教授”)的教师时,或者将非高级职称教师的职称更改为高级职称时,均修改部门表中相应部门的高级职称人数。(假设一次操作只插入或更改一名教师的职称)(10分)

42.设某全国性的运输企业建立了大型0LTP系统,并在该系统之上建立了数据仓库。0LTP系统和数据仓库中有如下数据表:运输明细表(运输单ID,发送站ID,终到站ID,货物ID,货物重量,运输价格,发货日期)汇总表1(发送站ID,终到站ID,货物ID,发货日期,总重,总运价)汇总表2(发送站ID,终到地区ID,货物ID,发货日期,总重,总运价)汇总表3(发送站ID,终到站ID,货物ID,发货月份,总重,总运价)汇总表4(发送地区ID,终到地区ID,货物类别ID,发货日期,总重,总运价)该企业管理的货运站约有100个,货物约有500种共l0类,各汇总表都建有主码,且各表有合理的维护策略,在每次维护后数据能保持一致。设有视图V,该视图的访问频率很高,其查询结果模式为(发送地区ID,终到站ID,发货月份,总重,总运价),该视图现以汇总表1为计算数据源。经监控发现,汇总表1的被访问频率过高,导致系统整体性能下降,而其它汇总表被访问频率较低。在不增加汇总表和索引的情况下,请给出一个改善系统服务性能的优化方案,并简要说明理由。(10分)

六、单选题[1分](2题)43.设有购买表(顾客号,商品号,购买时间)。现要查询顾客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.仅Ⅲ

44.设在数据库应用系统设计与实现过程中有下列活动:Ⅰ.创建触发器Ⅱ.定义事务隔离性级别Ⅲ.数字签名Ⅳ.定义主码上述活动中,用于数据库的完整性保护的是()。

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

参考答案

1.DD。【解析】数据的存储结构是逻辑结构在计算机存储器中的实现,又称为物理结构。数据运算是定义在数据的逻辑结构上的,在存储结构上实现。

2.A解析:如果要把十进制整数转换为二进制整数,其规则是:除2取余,直到商为0为止,将结果按照上右下左的排列方式列出,就是转换后的结果。

3.A解析:在Internet中,对网络的攻击主要可以分为两种基本类型,即服务攻击与非服务攻击。

4.D解析:CPU对外部设备的控制方式有4种:循环测试I/0方式、中断处理方式、DMA方式和通道方式。

5.A解析:本题考核的是广义表的知识,参考2.3.3“广义表的定义和存储”。广义表(又称列表)是线性表的推广,是由零个或多个单元素或子表所组成的有限序列。广义表的一个特征是广义表可以是递归的表,即广义表也可以是本身的一个子表。从上面的概念和特征可以看出例如A=O,B=(e),C=(a,C)都是广义表。所以B,C,D都是不正确的。而A就是广义表的定义。所以本题的答案是A。

6.C解析:外模式也称子模式或用户模式,是数据库用户的数据视图。存储模式是内模式。

7.D解析:关系数据库上的操作包括:查询、统计和汇总、插入、删除、修改等,其中查询是核心,所以关系DML语言,又称为查询语言。

8.B解析:本题是对关系模式设计不当所带来问题的考查,若关系模式设计不当可能带来以下问题:①数据冗余;②更新异常;③插入异常;④删除异常。对照题目中的4个选项可知,A、C、D均是关系设计不当所带来的,而选项B则是并发执行中存在的问题,因此本题的答案是选项B(丢失修改)。

9.A解析:进程调度即处理机调度。在多道程序设计环境中,进程数往往多于处理机数,这将导致多个进程互相争夺处理机。进程调度的任务是控制、协调进程对CPU的竞争,按照一定的调度算法,使某一就绪进程获得CPU的控制权,转换成运行状态。进程调度也叫低级调度。实际上进程调度完成一台物理的CPU转变成多台虚拟的(或逻辑的)CPU的工作。

10.D解析:因为DELETE和UPDATE都对数据库进行了修改,如与其他操作同时进行,容易造成对未提交数据的依赖;而SELECT不对数据库进行修改,因此两个SKLECT可以同时进行操作,而不会引起冲突。

11.1088A[5][5]前面有4行元素,第5行有4个元素,所以前面元素个数为10*4+4=44,44*2=88,所以结果为1088.

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

13.共享锁或S锁共享锁或S锁解析:给数据项加锁的方式有多种。最基本的两种是:

①共享锁如果事务T获得了数据项Q上的共享型锁(记为S),则T可读Q但不能写Q。

②排他锁如果事务T获得了数据项Q上的排他型锁(记为X),则T既可读Q又可写Q。

14.N-1

15.面向对象或OO面向对象或OO

16.4利用报表向导来建立报表,在设置字段排序时,一次最多不超过4个

17.网关【解析】IP电话系统有4个基本组件:终端设备、网关、多点控制单元和网守。

18.存储器存储器解析:冯诺伊曼结构的计算机系统有5大功能部件组成,它们是:运算器、控制器、存储器、输入设备和输出设备。

19.查询查询

20.两级一个主报表最多只能包含两级子窗体或子报表。\r\n

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

22.D解析:PowerBuilder是由美国著名的数据库应用开发工具厂商PowerSoft公司(于1991年6月推出的完全按照客户机/服务器体系结构设计的快速应用开发系统,是一个客户机前端开发工具。它除了具有题中选项中的特点,其特点还有可同时支持与多种数据库的连接,支持动态数据交换(DDE)、动态链接库(DLL)、对象链接与嵌入(OLE)强大的调试器和多种调试方式等。

23.D

24.B

25.D解析:FCB(文件控制块)是系统为管理文件而设置的一个数据结构,是文件存在的标志,记录了系统管理文件所需要的全部信息;FIFO是先进先出,一般表示某些算法(队列操作、存储页面淘汰等);PCB是进程控制块,描述进程的基本情况以及进程的运行变化过程。

26.C解析:数据字典是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的成果。数据字典通过对数据项和数据结构的定义宋描述数据流、数据存储的逻辑内容。所以数据字典的最基本的功能是数据定义。

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

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

28.B解析:响应比定义为系统对作业的响应时间与作业运行时间的比值。最高响应比作业优先算法优先选择响应比最高的作业。对JOB1,JOB2、JOB3和JOB4的响应比分别为60/80=0.75、40/20=2、10/40=0.25和0/35=0,因此首先被调度的作业是JOB2,正确答案为选项B。

29.D

30.C解析:直接插入排序的基本算法是:当插入第i(i>=1)个对象时,前面的v[0],V[1].……V[i-1]已经排好序,这时,用V[i]的关键码与V[i-2],V[i-2],……的关键码顺序进行比较,找到插入位置即将v[i]插入,原来位置上的对象则向后移。由此可知,直接插入排序法的关键码比较次数与对象的初始排列有关,准确的说,就是与i可以取的值有关。对于本题来说,A中i可以取1,B中i可以取2,C中i可以取3,D中i可以取1。所以C的关键码比较次数最少。

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

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

\n【解题思路】

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

\n【参考答案】

\n

\n

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

\n【解题思路】

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

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

\n【参考答案】

\n

\n

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

\n【解题思路】

\n①定义循环变量i、j、k和整型变量len、p。

\n②第一层for循环中,循环变量i从0开始,依次递增直到其值等于20,实现对20行数据的逐行处理。在循环体中,对于i行首先调用函数strlen(xx[i])求得第i行字符串的长度,并把其值赋给变量len,再用1en除以2,得到第i行字符串长度的一半,赋给变量P。在第二层for循环中,循环变量J从0开始,依次递过来增直到其值等于(p-1),在第三层for循环中,循环变量k从J+1开始,依次递过来增直到其值等于P,比较字符xx[i][j]ASCII码值与xx[i][k]ASCII码值的大小,如果字符xx[i]啪的ASCII码值小于xx[i][k]的ASCII码值,则两者进行互换实现对第i行字符串左半部分的字符串按降序排列。

\n③用变量len的值对2求余数,如果余数为1,则调用函数字符串拷贝函数strcpy,把从字符串xx[i]+P+1开始直到字符串xx[i]的结尾的子字符拷贝到字符串变量str中,再调用字符串连接函数stmcat把字符串xx[i]的中间字符连接到字符串变量str的后面,再调用字符串连接函数stmcat把字符串xx[i]的左半部分的子字符串连接到变量str的后面;如果余数不等于1,则调用字符串拷贝函数strcpy,把从字符串xx[i]+P开始直到字符串xx[i]的结尾的子字符拷贝到字符串变量str中,再调用字符串连接函数stmcat把字符串xx[i]的左半部分的子字符串连接到变量str的后面,实现字符串xx[i]左右部分子字符串的交换。

\n④调用字符串拷贝函数strcpy,把字符串变量str的值拷贝到字符串xx[i],实现把排序后的结果仍按行重新存入字符串数组XX中。

\n【参考答案】

\n

\n

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

\n【解题思路】

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

\n【参考答案】

\n

\n

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

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

\n【解题思路】

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

\n【参考答案】

\n

\n

38.\n【审题关键句】四位数的千位<=百位<=十位<=个位,且四位数是偶数,统计出满足此条件的个数,按从小大的顺序存入数组。

\n【解题思路】

\n①首先,本题要定义多个变量,包括两个循环变量循环i、i,一个用于数据交换的整型变量ab,以及分别用来存放四位数分解之后各位数的变量qw(千位)、bw(百位)、SW(十位)和gw(个位)。

\n②通过for循环依次对数组中的每个四位数进行分解,每分解一个四位数,根据题目要求,判断其“千位<=百位<=十位<=个位”的条件是否满足,并通过a[i]%2==0表达式判断该四位数是否为偶数,各判断表达式之间用运算符进行连接,当满足条件时,则将a嘲的值赋给数组变量b[cnt],同时数组下标变量cnt的值加1。循环结束后,所有满足条件的四位数都将保存到数组blent1中。

\n③将所有的四位数判断完毕后,最后通过两个for循环,对b[cnt]数组中的元素按从小到大的顺序排序。

\n【参考答案】

\n

\n

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

\n【解题思路】

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

\n【参考答案】

\n

\n

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

\n【解题思路】

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

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

\n【参考答案】

\n

41.【解题思路】创建触发器的SQL语句为:CREATETRIGGER,其语法格式为:CREATETRIGGER[schema_name.]trigger_nameON{tableIview}{FORlAlZl“ERIINSTEADOF}{[INSERT][,][DELETE][,][UPDATE]}AS{sql_statement}[;]其中AFFER指定触发器为后触发型触发器,INSERT,UPDATE和DELETE为指定引发触发器执行的操作。根据原题要求,insert触发器会在inserted表中添加一条刚插入的记录,update触发器会在更新数据后将更新前的数据

温馨提示

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

评论

0/150

提交评论