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

下载本文档

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

文档简介

2023年山东省青岛市全国计算机等级考试

数据库技术真题(含答案)

学校:班级:姓名:考号:

一、1.选择题(10题)

1.二维数组A[0..8,0..9],其每个元素占2字节,从首地址400开始,

按行优先顺序存放,则元素A[8,5]的存储地址为

A.570B.506C.410D.482

2.电子邮件软件向邮件服务器发送邮件时使用的协议是

A.SMTPB.POP3C.IMAPD.MIME

3.Sybase公司目前的企业级服务器ASE支持下述哪些功能?。

I.JAVA语言和XML语言

II.服务器之间的失败转移

IH.保证分布式事务处理的完整性

A.I和IIB.II和HIC.I和IHD.全部

4.

在雇员信息表关系EMP中,哪个属性是外键(foreignkey)?

A.雇员号B.雇员名C.部门号D.工资

5.利用二分法在序列61,87,154,170,275,426,503,509,512,

612,653,677,703,765,897,908中查找关键码值为400的节点,

需要查找几次?

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

6.R(X,Y)是一个二日关系,X,Y是单属性,则o

A.R一定属于BCNFB.R一定不属于BCNFC.R不一定属于BCNFD.R

不一定属于BCNF,R一定属于3NF

7.当前比较流行的程序设计语言Java是用于的编程语言。

A.人工智能B.面向对象C.网络环境D.科学及工程计算

8.设散列函数为H(k)mod7,现欲将关键码23,14,9,6,30,12,18

依次散列于地址。〜6中,用线性探测法解决冲突,则在地址空间0〜6

中,得到的散列表是

A.14,6,23,9,18,30,12

B.14,18,23,9,30,12,6

C.14,12,9,23,30,18,6

D.6,23,30,14,18,12,9

9.下列有关分区存储管理的叙述中,不正确的是()。

A.分区存储管理能充分利用内存

B.分区存储管理有固定分区存储管理和可变分区存储管理

C.固定分区会浪费存储空间

D.分区存储管理不能实现对内存的扩充

10.下列关于“分布式数据库系统”的叙述中,正确的是____。

A.分散在各节点的数据是不相关的

B.用户可以对远程数据进行访问,但必须指明数据的存储节点

C.每一个节点是一个独立的数据库系统,既能完成局部应用,也支持全

局应用

D.数据可以分散在不同节点的计算机上,但必须在同一台计算机上进行

数据处理

二、填空题(10题)

11.防火墙是指设置在不同网络或之间的一系列部件的组

Qo

12.关系模型中要求关系模式至少达到o

13.地理信息系统的英文缩写是_________o

14.获得必要的资源并获得处理机时的进程状态为【】。

15.SQL语言集数据查询、数据操纵、数据定义和数据控制功能于一体,

语句REVOKE实现其中的功能。

16.无线局域网的英文缩写为o

17.

由于视图是虚表,因此对视图的修改,最终要转换为对」的修改。

18.设待排序关键码序列为(25,18,9,33,67,82,53,95,12,70),

要按关键码值递增的顺序进行排序,采取以第一个关键码为分界元素的

快速排序法,第一趟完成后关键码33被放到了第个位置。

19.第三代数据库系统(或新一代数据库系统)是____技术和数据库技

术相结合的系统。

20.数据库中,每个事务都感觉不到系统中其他事务在并发地执行,这

一特性称为事务的O

三、单选题(10题)

21.在概念设计和逻辑设计之间起桥梁作用的是()

A.DFDB.E-R图C.数据结构图D.功能模块图

22.SQL语言的GRANT和REVOKE语句主要用来维护数据库的

()。

A.安全性B.完整性C.可靠性D.一致性

23.下列关于数据的逻辑结构的叙述中,哪一个是正确的?()。

A.数据的逻辑结构是数据间关系的描述

B.数据的逻辑结构反映了数据在计算机中的存储方式

C数据的逻辑结构分为顺序结构和链式结构

D.数据的逻辑结构分为静态结构和动态结构

24.关于AdHoe网络的描述中,错误的是()

A.A.是一种对等式的无线移动网络

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

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

D.在军事领域应用广泛

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

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

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

C.反规范化方法:增加派生冗余列、增加冗余列、重新组表、分割表和

新增汇总表等方法。都会破坏数据完整性。

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

26.ODBC是()

A.客户机与服务器之间的接口标准B.数据库查询语言标准C.数据库

应用开发工具标准D.数据安全性标准

27•一个数据表10000行数据,每行3500字节,计算表需要空间()

A.20MBB.40MBC.60MBD.80MB

28.有两个实体集,并且它们之间存在着一个M:N联系,根据概念ER

模型转换成关系数据库的规则,这个ER结构转换成表的个数为()

A.lB.2C.3D.4

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

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

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

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

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

30.整个软件生存期中时间最长蹬是()

A.需求分析B.设计C.程序编制D.运行维护

四、C语言程序设计题(10题)

31.已知数据文件in.dat中存有200个四位数,并已调用读函数readDat

把这些数存入数组a中,请考生编制一函数jsVa,其功能是:把千位数

字和十位数字重新组成一个新的含有两位数字的数ab(新数的十位数字

是原四位数的千位数字,新数的个位数字是原四位数的十位数字),以及

把个位数字和百位数字组成另一个新的含有两位数字的数cd(新数的十

位数字是原四位数的个位数字,新数的个位数字是原四位数的百位数

字),如果新组成的两个数ab-cd>=0且ab.cd<=10且两个数均是奇数,

同时两个新数的十位数字均不为零,则将满足此条件的四位数按从大到

小的顺序存入数组b中,并要计算满足上述条件的四位数的个数ent。

最后main函数调用写函数writeDat把结果ent以及数组b中符合条件

的四位数输出到文件Out.dat中。

注意i部分源程序存在EX文件中.

程序中已定义数姐।1(200],b(200],已定义变ent

请勿改动数据文件中的任何数据.主iAltmaiM)、读函数rcadDetO和写函数writeDatO的内容.

1•Iinclude<stdio.h>

jtdefineMAX200〃定义宏如MAX,K值等于200

3;inta(MAX),b(MAXJ,ent-0;〃定义全局豪小一1•敷姐blHAX)和受量sn.再初值等于•o

4«voidwriteDat();

5;voidjaValO

6

7

8

9!voidreadDat()〃从m.dat文件中汰取200个四付数存入依拉•中

10

inti;

FILE*fp;

fp-fopon("Xn.dat","r")

for(1•0;i<MAX;

fscanf(fpr(a[i])

/close(fp);

voidmainO

int1;

21readDat();

22jsVai();〃■用o崎也实现■日要求的功貌

23printf("满足条件的效■Qd\n“.ent);

24for(i*0;i<ent;i++)

25printf(w%db[i]);

26printf("\nw);

27writeDat0;

28j)

29voidwriteDat()〃祀计K姑果Ctt以及故饵b中符合条件的西位数■出到OULdtt文件中

30

31FILE*fp;

32int1;

33fp-fopen("out.datw,"w");

34fprintf(fp,"%d\n"rent);

35for(i*0;1<ent;ii)

36fprintf(fpr"Qd'n",b[i]);

37fclose(fp);

38

32.已知数据文件in.dat中存有200个四位数,并已调用读函数readDatO

把这些数存入数组a中,请考生编制一函数jsVal,其功能是:依次从数

组a中取出一个四位数,如果该四位数大于该四位数以后的连续五个数

且该数是奇数(该四位数以后不满五个数,则不统计),则统计出满足此

条件的个数ent并把这些四位数按从小到大的顺序存入数组b中,最后

调用写函数writeDat把结果ent以及数组b中符合条件的四位数输出到

Out.dat文件中。

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

程序中已定义数组:a[200],b[200],已定义变量:ent

请勿改动数据文件in.dat中的任何数据、主函数main、读函数readDat

和写函数writeDat的内容。

•include<stdio.h>

fdefineMAX200

1nta(MAX)tb[MAX],ent«0;

voidwriteDat();

5voidjsVal()

6

7

8

/•readDat"从数界文件m.dat中法取200个内位被4Aftffi・中•/

9voidreadDat()

10(

11inti;

12FILE*fp;

13fp-fopen("in.dat**,*r**);

14for(i-0;i<MAX;1♦*)

15fscanf(fpr

16fclose(fp);

17\

18voidmain()

19

20int1;

21readDat();

22jsVal();〃0用晒改,实现电H要求的功健

23printf("满足条件的数K\d\n",err);

24for(i-0;i<ent;£+♦)

25printf(**%d”,b(i));

26prlntf(,•\nw);

27writeDat();

28I

/♦*数wriicDaH)把端聚cm取及!ttftlb中符合条件的四何散•出现outdat文科中•/

29voidwriteDat()

30(

31FILEefp;

32inti;

33fp»fopen("out.dat",Mw");

34fprintf(£p<**%d\n,\ent);

35for(i«0;i<ent;1*♦•+)

w

36fprintf(fp,%d\n**rb[i1);

37fclose(fp);

38

33.函数readDat是从文件in.dat中读取20行数据存放到字符串数组

XX中(每行字符串长度均小于80)。请编制函数jsSort,其函数的功能

是:以行为单位对字符串按下面给定的条件进行排序,排序后的结果仍

按行重新存入字符串数组XX中,最后调用函数writeDat把结果XX输

出到文件out.dat中。

条件:字符串从中间一分为二,左边部分按字符的ASCII值升序排序,

右边部分不变,左边经排序后再与右边部分进行交换。如果原字符串长

度为奇数,则最中间的字符不参加处理,字符仍放在原位置上。

例如,位置012345678

源字符中dcbahgfe

432198765

则处理后字符中hgfcabcd

876591234

注意;部分源程序存在teste文件中・

请勿改动数据文件ndai中的任何数据、主的数main。.读编数rcadDttO和写函数疝馆。皿)的内容.

*include<stdio.h>

*include<strlng.h>

3voidreadDat();

4voidwriteDat();

5Charxx(20][80);

6voidjsSort()

7

8

9

10voidmain()

11(

12readDat0;

13jsSort();

writeDat();

)

/♦从文件申金取20打数依存放*字/即故tau中♦/

16voidreadDat()

17(

18FILEein;

19int1-0;

20charep;

21in■fopen(win.datw,"rw);

22whiled<20“fgets(xx[l),80,in)!-NULL)

23(

24p-strchr(xx(ilt•\n,);

25if(p)-0;

26

27

28fclose(in);

29)

/•纪皓果XX■出到文件outat中•/

30voidwriteDat0

31(

32FILE•out;

33int1;

34out-fopen(*out.datw,*wn);

35for(l-0;i<20;

36(

37prlntfxx(l]);

38fprintf(out/xx[1));

39

40fclose(out);

41

34.在文件in.dat中已存有200个正整数,且每个数均在1000至9999

之间。函数readDat是读取这200个数存放到数组aa中。请编制函数

jsSort,其函数的功能是:要求按每个数的后三位的大小进行降序排列,

如果出现后三位相等的数值,则对这些数值按原始4位数据进行升序排

列,将排序后的前10个数存入数组bb中。

最后调用函数writeDat把结果bb输出到文件out.dat中。

例:处理前9012509960127025808X

处理后50998088702560129012

注意:部分源程序存在teste文件中.

请勿也动数据文件tn.dat中的任何数据、3为数main。、读函数edDai()和写球散writeDaU)的内容.

1«Iinclude<stdio.h>

2;Iinclude<string.h>

3*voidreadDat();

4;voidwriteDat();

5;intaa(200)#bb[10);

6»voidjsSortO

7\«

8;

9i)

10;voidmain()

11j(

12;readDat();

13­osSort();

14•writeDat(>;

15;)

16!voidreadDatO

17;I

18•FILE・皿

19•int1;

20।in•fopen(Hin.datw,wrw);

21;for(i»0;i<200;

22jfscanf(iri/Fd.",6aaHI);

23;fclose(in);

24\J

25»voidwriteDatO

26;f

27।!FILE•out;

28jinti;

wHM

29•out-fopen(•,out.datfw);

30\for(1•0;i<10;

31\(

w

32<print!%d\nri♦1rbb(i));

331fprlntf(out,"Wd\n”,bb[1D;

34|)

35!fclose(out);

36\!

35.函数ReadDat实现从文件in.dat中读取一篇英文文章存入到字符串

数组XX中;请编制函数SortCharD,其函数的功能是:以行为单位对

字符按ASCII码从大到小的顺序进行排序,排序后的结果仍按行重新存

入字符串数组XX中。最后main函数调用函数WriteDat把结果XX输

出到文件out.dat中。

例:原文:dAe,BfC.

CCbbAA结果:fedCBAbbCCAA原始数据文件存放的格式是:每行

的宽度均小于80个字符,含标点符号和空格。

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

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

的内容。

1jtinclude<stdio.h>

2;finclude<string.h>

3;charxx[50](80);

4junsignedintmaxline0;7•文章的总行数•/

5intReadDat(void);

6voidWriteDat(void);

voidSortCharD(void)

8

9

10jJ

11voidmain()

12(

13if(ReadDat())

14(

15printf("数据文件in.dat不能打开!\n\007")

16return;

17I

18SortCharDO;

19WriteDat();

20I

/♦从文件mdM中豫取一篇英文文・存入川字符席敏州xx中•/

21intReadDat(void)

22(

23FILE#fD:

24;inti•0;

25!char*p;

Hw

26jif((fp-fopen("in.dat,r"))*-NULL)

27-return1;〃如果文件In.0n内存为空.*返回1

!/♦当从文件Ln.dat中选取79个字符存入xx【L|没/命课发生》t执行/环体中的语句•/

28jwhile(fgets(xx[i],80rfp)!,NULL)

29\{

30•p-strchrCxxfi),,Xn1);〃在字杪率中叁找回车撰行将事一个IK配的位置

31;if(p)*p•0;〃如果p的值不为零,丽苴值设置为0

32;i+4;〃行变量加1

33•)

34jmaxline-1;〃尼文章的总行效M蛤堂fltaaitUne

35j(close(fp);

36jreturn0;

37;|

j,•纪咕累XX"出到文件中•/

38jvoidWriteDat(void)

39;(

40!FILE»fp;

41junsignedinti;

ww

42;fp-fopen(*out.dat°tw);

43!for(i-0;1<maxline;

44i(

ww

45;printf(ts\nrxx(i]);

46!fprintf(fp/"ls\n",xx[i]);

47i}

48-fclose(fp);

49•}

36.已知数据文件in.dat中存有200个四位数,并已调用读函数readDat

把这些数存入数组a中,请考生编制一函数jsVal,其功能是:从数组a

中依次取出一个四位数,对每一个四位数作如下处理:把个位数字和千

位数字重新组成一个新的含有两位数字的数(新数的十位数字是原四位

数的个位数字,新数的个位数字是原四位数的千位数字),以及把百位数

字和十位数字组成另一个新的含有两位数字的数(新数的十位数字是原

四位数的百位数字,新数的个位数字是原四位数的十位数字),如果两个

新组成数:一个是奇数,另一个为偶数,并且至少有一个数能被17整

除,同时两个新数的十位数字均不为零,则将满足此条件的四位数存入

数组b中,并计算满足上述条件的四位数的个数ent,而后对数组b进

行降序排序。最后main函数调用写函数writeDat把结果ent以及数组b

中符合条件的四位数输出到out.dat文件中。

例如:一个四位数为4512,依题意组成的第一个新数为24,第二个新

数为51,其中51能被17整除,这两个新数的十位数字不为零,则4512

这个四位数满足题意所规定条件。

注意,部分源程序存在处stc文件中,

程序中已定义散组;a[200].b[200],已定义攵*:ent

请勿改动数据文件m.dal中的任何数据.土函数读由数rradlXtO和函数writeDatO的内容.

linclude<stdio.h>

IdefineMAX200

intalMAX],b[MAXlrent

4voidwriteDat();

5voidjsVal()

6

7

8

9voidreadDat()//从,n.dau文件中需取20。个四位ft存入敷Ma中

10

int

FILE*fp;

wwM

fp-fopen("in.dat,r)

14for(1-0;i<MAX;

15»fscanf(fp,7d",&a

16;fclose(fp);

17i)

18ivoidmain()

19

20inti;

21readDat();

22jsValO;〃*用或效实现良求的功微

23printf(“清I足条件的数"d'n".:;nt);

24for(i»0;i<ent;

25print1("%dL

26printf("Kn");

27writeDat();

28;I

29voidwriteDat()〃把计算结蹙E以及敏物b中符合条件的四位数•出到OULdBl文件中

30

31FILEefp;

32inti;

33fp•fopen(Rout.dat**,Hww);

34fprlntf(fp,wid\n",ent);

35for(i»0;i<ent;i++)

n

36fprintf(fpr%d\n"rb[1])

37fclose(fp);

38

37.程序test.c的功能是:选出1000至5000范围内(包括1000、5000)

符合下面条件的四位自然数。条件是:千位数字与百位数字之和等于十

位数字与个位数字之和,且千位数字与百位数字之和等于个位数字与千

位数字之差的整10倍。计算并输出这些四位自然数的个数ent以及这

些数的和sum。请编写函数countValue实现程序的要求。最后main函

数调用函数writeDAT把结果crlt和sum输出到out.dat文件中。

注意:部分源程序存放在testx文件中.

请勿改动主函数mninO和输出数据函数wrheDAT。的内容・

Iinclude<stdio.h>

2intcntrsum;〃定义集中全局殳1tse和

3voidwriteDAT0;

4voidcountvalue()

5

6

7

8voidmain()

9(

10ent-sum»0;〃蛤全局交・cnc.,51献的值为0

11countvalue(>;〃,用countVAluoO.实现届目要求的功能

12printf("满足条件的自然数的个数-%d\n-rent);

M

13printf(**满足条件的自然数值的和■%d\nrsun);

14wrlteDATO;

15J

16voidwriteDAT()

17(

18FILEwfp;

19fp-fopen(*out.daf*,RwR);

20fprintf(fp,e*d\n\d\N,ent,sum);

21fclose(fp);

22

38.函数ReadDat实现从文件in.dat中读取一篇英文文章,存入到无符

号字符串数组XX中;请编制函数encryptChar,按给定的替代关系对数

组XX中的所有字符进行替代,其替代值仍存入数组)xx的对应的位置

上,最后调用函数wmeDat把结果xX输出到文件out.dat中。

替代关系:f(p)=p*llmod256,mod为取余运算,P是数组xx中某一个

字符的ASCIH1,f(p)是计算后无符号的整型值(注意:中间变量定义成

整型变量),如果计算后f(p)值小于等于32或f(p)对应的字符是小写字

母,则该字符不变,否则用f(p)替代所对应的字符。

注意:部分源程序存放在test.c文件中,原始数据文件存放的格式是:

每行的宽度均小于80个字符,含标点符号和空格,并也按此替代关系

进行处理。

请勿改动住数main、读数据函数ReadDat和输出数据函数WriteDat的

内容。

♦include<stdio.h>

2tinclude<string.h>

3•include<ctype.h>

4unsignedcharxx[50][80];

5intmaxllne-0;/•文章的总行数*/

6intReadDat(void);

7voidWriteDat(void);

8voidencryptChar()

9

10

11

12voidmaiaO

13(

14if(ReadDat())

15(

16printfL数据文件in.dat不能打开!\n\007-);

17return;

18

19encryptCharOs

20WriteDat();

21)

/•从文件nki中谈取一篇英文文章.存入更无符号字抑M敷烟u中•/

22intReadDat(void)

23(

24FILE*fp;

25inti•0;

26unsignedchar*p;

ww

27if((fp*fopen("in.datrr"))«NULL)

28return1;

29while(fgets(xx(1],80<fp)!•NULL)

30

31p-strchr(xx(i]t*\n*);

32if(p)*p■0;

33,♦储

34

35maxline-i;

36fclose(fp);

37return0;

38I

八圮怙果。■出到文件OUL&tf中〃

39voidWriteDat(void)

40(

41FILErp;

42inti;

43fp-fopen("out.dat°,*wH);

44for(i«0;i<maxline;1♦*)

45(

46print£(7s\n",xx[l]);

47fprintf(fpz7s\M,xx[i]);

48)

49fclose(fp);

50

39.已知数据文件in.dat中存有300个四位数,并已调用读函数readDat

把这些数存入数组a中,请编制一函数jsValue,其功能是:求出千位数

上的数减百位数上的数减十位数上的数减个位数上的数大于零的个数

ent,再把所有满足此条件的四位数依次存入数组b中,然后对数组b的

四位数按从小到大的顺序进行排序。最后main函数调用写函数writeDat

把数组b中的数输出到文件Out.dat中。

例如:9123,%1.2-AO.则读数满足条件存入敷81b中.且个数cmym+1・

9812.央心1・2<0,则读数不满足条件忽略.

注意:部分源程序存在teste文件中.

程序中已定义数ftba(100],b{300].已定义变量。ent

请勿改动数据文件in.dai中的任何数据、主函UtmiinO,读函数rcadDaH)和写函JRwriteDotO的内容.

♦include<stdio.h>

2inta(300),b(3001,cnt-0;〃定义整型依Ifia(300).b138】和交量ent,并且ent的初值为0

3voidwriteDat();

4voidreadDat();

5voidjsValue()

6

7

B

9main()

10(

11inti;

12readDat();

13isValue();

14;writeDat();

15!printf("cnt«%d\n'*,ent);

16ifor(i-0;i<ent;

w

17!printf(b(%dl-td\n"#i,b(ij);

18•)

19;voidreadDat()

20\(

21;FILE・fp;

22;Lnti;

wHwM

23:fp-fopen(ln.datrr);

24;for(i-0;1<300;

25•fscanf(fp,[1));

265fclose(fp);

27;I

28!voidwriteDat()

291(

30-FILE*fp;

31!int1;

32Ifp=fopen<*,out.datw,"ww);

33\fprmtf(tprent);

34•for(1-0;1<ent;

35ifprlntf(fp,“d\n”,b[it);

36Jfclose(fp);

37I)

40.已知在文件in.dat中存有100个产品销售记录,每个产品销售记录

由产品代码dm(字符型4位),产品名称me(字符型10位),单价dj(整

型),数量si(整型),金额je(长整型)五部分组成。其中:金额=单价*数

量。函数ReadDat读取这100个销售记录并存入结构数组sell中。请编

制函数SortDat,其功能要求:按金额从大到小进行排列,若金额相等,

则按产品代码从大到小进行排列,最终排列结果仍存入结构数组sell中。

最后main函数调用函数WriteDat把结果输出到文件out.dat中。

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

题。

例如:sell[i]=temp;

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

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

llnclude<stdio.h>

2llnclude<strxng.h>

3llnclude<8tdlib.h>

4•defineMAX100

5typedefstruct

6

7chardm[5];/•产晶代码•/

8charme(111;/•产品名琳•/

9intdj;/•♦价•/

10intsi;/•ft*•/

11longje;/•金■•/

12}PRO;

13PROsell[MAX];

14voidReadDat();

voidWriteDat();

16voidSortDat()

171

18

19

20voidmainO

21(

22n»ias«t(sellt0,sizcof(soli));

23ReadDat();

24SortDat();

25WritoDat();

26)

27voidReadDat()

28I

29FILEwfp;

30charstr(80)9ch[111;

31inti;

32fp•fopen("in.dat*r"L”

33for(l*0;1<100;£♦♦)

34(

35fgets(str«80«fp);

36memcpy(sell[1]str.4);

37momcpy(sell(l).mcrstr♦4,10);

38metncpy(ch,atr*14,4);ch(4]-0;

39sell(1).dj-atol(cb);

40taemcpy(ch,str*18,5);ch(5H0;

41sell(1).si•atol(ch);

42••11(1)»je•(long)sell(1).dj*sell[1].si;

43

44fclose(fp);

45)

46voidwritoDat0

47

48FILE*fp;

49int1;

50fp•topen("out«dat","w">;

51ford•0;1<100;

52I

53fprlntf(fp,"%Bla%4dISdHOldXn*,9011(11.dmFsell[i].me,sell(1j.djr>ell(1J.sl«

sell(1).je);

54

55fclose(fp);

56

五、设计与应用题(2题)

41.在SQLServer2008中,设有教师表(教师号,姓名,所在部门号,

职称)和部门表(部门号,部门名,高级职称人数)。请编写满足下列要

求的后触发型触发器(设触发器名字为tri_zc)。每当在教师表中插入一

名具有高级职称(“教授”或“副教授”)的教师时,或者将非高级职称教

师的职称更改为高级职称时,均修改部门表中相应部门的高级职称人数。

(假设一次操作只插入或更改一名教师的职称)(1。分)

42.某网上商城因为业务发展,原有的系统不能很好的满足需要,因此采

用了一套新的经营管理系统,此系统使用SQLServer2008数据库管理

系统。此系统上线运行前,需将商场原有的数据导入到新系统中。原有

系统使用SQLServer2000,数据结构与新系统不完全一致。因此需要把

数据从SQLServer2000导入到SQLServer2008中,为了保证数据一

致性,数据导入过程中要求暂停业务且必须在3小时内完成。(1)在原

有数据导入新系统的过程中,实施人员发现原有数据量很大,导人数据

需要四小时,业务无法接受。经分析某工程师认为,数据导入过程中的

数据库I/O很高,但导人数据的程序本身对系统资源占用率很低。该工

程师建议将数据导入过程中的数据恢复模式从“完整”模式改为“简单”

模式以提高数据导人速度;而另一位工程师则认为此方法未必能提高数

据导入速度,而且还可能导致数据丢失,不建议使用此方法。请分析此

方法是否能够提高数据导入速度并给出理由,同时分析此操作的数据丢

失风险。(5分)(2)在成功导入历史数据后,此系统顺利上线运行。在

上线运行的第一周,发现数据库服务器的CPU使用率很高,达到近90%,

高峰期间达到100%,且系统内存占用率达到90%,但系统I/O很轻。

业务人员反应系统操作速度很慢。为了提高系统运行速度。在不修改应

用程序的前提下,两位工程师提出了不同的解决办法:I.为服务器增

加2颗CPU,缓解CPU使用率很高的问题;II.为服务器增加一倍内

存,缓解内存使用率很高的问题。考虑成本,现阶段只能按照一种方案

实施。请指出在现有情况下,哪种方案更合理并给出理由。(5分)

六、单选题[1分](2题)

43.下列哪些属性不适合建立索引()。

A.经常出现在GROUPBY字句中的属性

B.经常参与连接操作的属性

C.经常出现在WHERE字句中的属性

D.经常需要进行更新操作的属性

44.有关系模式:系(系号,系名,系办公电话),教师(教师号,教师

名,职称,聘任日期,工资,所在系号)。现要定义下列约束:I.系号

是系关系的主码,教师号是教师关系的主码H.职称列的取值只能为“教

授”,“副教授”,“讲师”,“助理'和“其他”HI.教授的默认工资为10000

元,副教授的默认工资为8000元,讲师的默认工资为5000元IV.每个

教师的所在系号不能为空,且其值必须在系关系中存在若在数据库中实

现以上约束,需要使用触发器才能实现的是()o

A.仅I和IIB.仅HI和WC.仅HID.仅I和IV

参考答案

1.A解析:由题意可知,二维数组AO.8,0..9]是按行优先顺序存放的,

而顺序存放计算结点存储位置的公式为Li=LO+(i-l)*m,其中L0是第

一个结点的存储位置,Li是第i个结点的存储位置,m为每个结点所占

用的存储单元个数。按行优先的顺序存放结构,在数组A中元素A[8,

5]是第8*10+6=86个元素,按照上面的公式可以计算出元素A[8,5]的

存储地址为Li=L0+(i-1)*m=400+(86-1)*2=570o因此正确答案为Ao

2.A在电子邮件程序向邮件服务器发送邮件时,使用的是简单邮件传输

协议(SMTP);而在电子邮件程序从邮件服务器读取邮件时,可以使用邮

局协议(POP3)或交互式邮件存取协议(IMAP),它取决于邮件服务器支持

的协议类型。

3.D解析:由Sybase公司企业级服务器的特性知,题干中的三项都属于

ASE支持的功能。因此正确答案为选项D(全部)。

4.C解析:当关系中的某个属性(或属性组)虽然不是该关系的主码或只

是主码的一部分,但却是另一个关系的主码时,称该属性(或属性组)为

这个关系的外码(或外键)。

雇员信息表关系EMP中的部门号是DEFF的主键。

5.D解析:第一次查到509;第三次查到17。;第三次查到426;第四次

查到275;第五次没有找到,查找结束。

6.A解析:BCNF范式:若关系模式ReiNF,且每一个决定因素(非平

凡的函数依赖)都包含候选码,贝IJREBCNF。本题中因为R是一个二日

关系,在其中必定不存在非码关键字对主码的部分依赖,故R一定是

BCNF范式。

7.B

8.B解析:将23,14,9,6,30,12,18依次按散列函数K(k)=kmod7

计算,并按线性探测法解决冲突,得到的散列结果是14,18,23,9,

30,12,60

9.A解析:分区管理的基本思想是将内存分成若干连续的区域,有可变

分区和固定分区,•分区管理的主要缺点是不能充分利用内存,也不能对

内存进行扩充。固定分区会浪费一些内存空间,可变分区会引起碎片的

产生。

10.C解析:在分布式数据库中数据的共享有两个层次:一是局部共享,

二是全局共享。对于每一个节点是一个独立的数据库系统,既能完成局

部应用,也支持全局应用。选项C的叙述是正确的。分散在各节点的数

据是相关的;用户可以对远程数据进行访问,但没必要指明数据的存储

节点;数据可以分散在不同节点的计算机上,不一定在同一台计算机上

进行数据处理.因此选项A、B和D是不正确的。正确答案为C。

11.网络安全域【解析】防火墙是指设置在不同网络或网络安全域之间

的一系列部件的组合。

12.1NF1NF解析:关系模式需要满足一定的条件,不同程度的条件称为

不同的范式。最低要求的条件是元组的每个分量必须是不可分的数据项,

这是第一范式,即INF,是最基本的范式。

13.GIS【解析】地理信息系统(GIS)有时又称为“地学信息系统”或“资源

与环境信息系统”。它是一种特定的十分重要的空间信息系统。它是在计

算机硬、软件系统支持下,对整个或部分地球表层(包括大气层)空间中

的有关地理分布数据进行采集、储存、管理、运算、分析、显示和描述

的技术系统。

14.运行状态运行状态解析:进程状态分为:等待、运行和就绪状态。

获得必要的资源并获得处理机时的进程状态为运行状态。

15.数据控制数据控制解析:SQL语言功能极强,但由于设计巧妙,语

言十分简洁,完成数据定义、数据操纵、数据控制的核心功能只用了9

个动词,如下:

•数据查询:SELECT;

•数据定义:CREATEDROPALTER;

•数据操纵:INSERTUPDATEDELETE;

•数据控制:GRANTREV0KEo

因此本题填数据控制。

16.WLAN【解析】无线局域网(WirelessLAN,WLAN)是以微波、激光

与红外线等无线电波作为传输介质,部分或全部代替传统局域网中的同

轴电缆、双绞线和光纤,实现网络中移动结点的物理层与数据链路层功

能。

17.基本表或表通过视图修改数据包括插入,删除和修改三类操作,由于

视图是虚表,因此对视图的更新,最终要转换为对基本表的更新。

18.99解析:快速排序的基本方法是:在待排序序列中任取一个记录,

以它为基准用交换的方法将所有的记录分为两部分,关键码值比它小的

一个部分,关键码值比它大的一部分,再分别对两个部分实施上述过程,

一直重复到排序完成。具体操作如下:

2518933678253951270

2518933678253951270

1218933678253952570

1218933678253952570

1218933678253952570

1218925678253953370

1218925678253953370

1218925678253953370

1218925678253953370

1218925678253953370

所以第一趟完成后,关键码33被放到了第9个位置。

19.面向对象或00面向对象或00

20.隔离性隔离性解析尽管多个事务可以并发执行。但系统必须保证,

对任一对事务T1和T2,在T1看来。T2或者在T1开始之前已经停止

执行,或者在T1完成之后执行。这样,每个事务都感觉不到系统中有

其他事务在并发地执行。我们称之为事务的隔离性。

21.B

22.A

SQL语言中用GRANT、REVOKE语句实现数据控制功能,数据库中

权限的授予可以使用GRANT....ON....TO....语句,要求指明授予哪个用

户(组)对哪个对象有什么权限,而REVOKE语句实现数据库权限的回

收,需要指明从哪个用户(组)回收对于哪个对象的什么权限。

23.A解析按照逻辑结构的定义数据的逻辑结构是数据间关系的描述,

只抽象地反映数据元素之间的逻辑关系,不管其存储方式。顺序结构、

链式结构、静态结构和动态结构都是指存储结构。因此A是正确的。

24.B选项A),AdHoC网络是一种自组织、对等式、多跳的无线移动网

络;选项B),AdhoC网络是在分组无线网的基础上发展起来的;选项

C),AdHoC网络是由一组用户构成、不需要基站的移动通信模式;选

项D),AdHoC网络在军事上卜分重要,它可以支持野外联络、独立站

点通信和舰队战斗群通信、临时通信要求和无人侦查与情报传输。

25.A

26.A

27.B

28.C

29.C

30.D

31.【审题关键句】千位+十位组合与个位+百位组合,都是奇数,两数相

减结果大于等于。小于等于10,从大到小排序。

\n【解题思路】

\n①首先,本题要定义多个变量,包括两仑循环变量循环isj;用来存

放四位数分解之后各位数的变量qw(千位)、bw(百位)、SW(十位)和gw(个

位);两个用来存放重新组合数字的变量newVI和newV2o

\n②通过for循环依次对数组中的每个四位数进行分解,每分解一个四

位数,根据题目要求,对其各位数进行重新组合,形成两个新的十位数,

组合条件分别是原四位数的千位和十位组成一个十位数,个位和百位组

成一个十位数,并将两个新的十位数分别赋给变量newVl和newV2。

\n③数字重组完毕之后,再根据题目要求筛选满足条件的四位数,本题

需要考虑多个筛选条件:一是新组合的十位数中,其十位数不能为0,

即原四位数的千位和个位数字不能为0;二是两个新组合的十位数之差

必须大于等于。小于等于10;三是两个新组合的数字均为奇数。

\n④将同时满足以上3个条件的四位数赋给数组bfcnt],同时数组下标

值加1,当for循环执行完毕后,则将所有满足条件的四位数全部存放

到数组b[cnt]qbo

\n⑤最后通过两个for循环,对数组b[cnt]中的元素按从大到小的顺序排

序,排序过程中,可用newVl或newV2作为数据交换的中间变量。

\n【参考答案】

\n

\n

32.\n【审题关键句】大于后连续5个数,奇数,从小到大排序。

\n【解题思路】本题类似第35套试题,通过审题可以发现主要有两个不

同点:①判断数值为奇数,可通过a[i]%2进行判断,参考答案的第4条

语句;②要求进行比较的元素大于后连续5个数,因此在设置判断条件

时,作为比较的两个数之间应该是大于关系,参考答案的第4条语句。

\n【参考答案】

\n

\n

33.\n【审题关键句】以行为单位从字符串左边部分升序排序,排序后左

边部分与右边部分进行交换。如果原字符串长度为奇数,则最中间的字

符不参加处理。

\n【解题思路】

\n本题类似第77套试题,通过审题可以发现主要是对字符串左边部分

排序时所采用的排序方式不同,参考答案的第11行,修改if条件语句

的设置即可。

\n【参考答案】

\n

\n

34.

温馨提示

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

评论

0/150

提交评论