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

下载本文档

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

文档简介

2021年湖南省株洲市全国计算机等级考试

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

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

一、1.选择题(10题)

1.在树T中,结点x的度为k(k>l),结点y是结点x的最右边一个子

女,在与树T对应的二叉树中,下列结论成立的是________o

A.y一定是x的左子女B.y一定是x的右子女C.y的左子树一定是空二

叉树D.y的右子树一定是空二叉树

2.Oracle针对Internet/Intranet的产品是____。

A.OracleWebserver

B.OracleWebListener

C.OracleWebAgent

D.Oracle7服务器

3.下面有几个关于局域网的说法,其中不正确的是_____。

A.局域网是一种通信网B.连入局域网的数据通信设备只包括计算机C.

局域网覆盖有限的地理范围D.局域网具有高数据传输率

4.设有属性A,B,C,D,以下表示中不是关系的是

A.A.R(A)B.R(A,B,C,D)C,R(AxBxCxD)D.R(A,B)

5.设有供应商关系S和零件关系P,它们的主码分别是“供应商号”和

“零件号”,而且,零件关系P的属性“颜色”只能取值为(红,白,蓝)。

SP

供应商号供应商名所在城市零件号颜色供应商号

B01红星北京010红B01

S10宇宙上海201蓝T20

T20黎明天津312白S10

Z01立新重庆

以下操作不能正常执行的是_____O

A.删除关系S中供应商号为‘Bor的行

B.删除关系S中供应商号为zor的行

C.向关系P插入新行('301」红」B0「)

D.向关系S插入新行CB021'红星1'南京)

6.数据库恢复的基础是利用转储的冗余数据。这些转储的冗余数据包括

A.数据字典、应用程序、审计文档、数据库后备副本

B.数据字典、应用程序、审计文档、日志文件

C.日志文件、数据库后备副本

D.数据字典、应用程序、数据库后备副本

7.系统出现死锁的原因是()。

A.计算机系统发生了重大故障

B.有多个封锁的进程同时存在

C.若干进程因竞争资源而无休止地等待其他进程释放已占有的资源

D.资源数大大少于进程数,或进程同时申请的资源数大大超过资源总数

8.关于操作系统的叙述哪一个是不正确的?

A.管理资源的程序B.管理用户程序执行的程序C.能使系统资源提高

效率的程序D.能方便用户编程的程序

9.为减少多媒体数据所占存储空间而采用了

A.存储缓冲技术B.压缩/解压缩技术C.多通道技术D.流水线技术

10.下列有关E-R模型向关系模型转换的叙述中,正确的是()。

A.一个实体类型转换为一个关系模式,实体的属性就是关系的属性,实

体的码就是关系的码

B.一个1:1联系只能与联系的任意一端实体所对应的关系模式合并

C一个1:n联系只能转换为一个独立的关系模式

D.一个m:n联系转换为一个关系模式,可以转换为一个独立的关系模

式,也可以与联系的任意一端实体所对应的关系模式合并

二、填空题(10题)

11.设有如下关系:学生(学号,姓名,性别,年龄,班号)其关键字是学

号,将学号为10的学生姓名改为“王华”的SQL语句是【】。

12.Linux操作系统由内核、外壳和应用程序四部分组成。

13.在一个双链表中,包括头结点在内共有6个节点,则共有【】个指

针。

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

语句REVOKE实现其中的功能。

15.死锁产生的原因是系统资源不足和_[]_

16.CPU交替执行操作系统程序和应用程序。根据运行程序对机器指令

的使用权限CPU置为不同的状态。用户只能在_____下运行。

17.严格两阶段锁协议要求对更新的封锁必须保持到事务的终点。

18.数据库并发操作控制包括以【】方式打开数据库和对数据库或记录

加锁两种方法。

19.设F是Tl、T2和T3三棵树组成的森林,与F对应的二叉树为B,

已知Tl、T2和T3的结点个数分别为nl,n2和n3,则二叉树B的根结

点左子树和右子树中结点的个数分别为【】和【】

20.进行数据库系统的物理结构设计时,数据的存储结构有三种选择方式,

分别是顺序存放、杂凑存放(或称散列存放、Hash存放)和【】。

三、单选题(10题)

21.二维数组的元素是4个字符(每个字符占一个存储单元)组成的

串,行下标i的范围从。到4,列下标j的范围从。到5。M按行

存储时元素M[3,5]的起始地址与M按列存储时元素()的起始地址相

同。

A.M[2,4]B.M[3,4]C.M[3,5]D.M[4,4]

22.操作系统在控制和管理进程的过程中,涉及到()这一重要数据结构,

这是进程存在的惟一标志。

A.FCBB.FIFOC.FDTD.PCB

23.下列不属于创建分区表步骤的是_________o

A.创建分区依据列B.创建分区函数C.创建分区方案D.使用分区方案

创建表

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

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

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

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

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

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

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

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

26.磁盘的读写单位是()

A.块B.扇区C.簇D.字节

27.以下关于因特网中的电子邮件的说法,错误的是()。

A.A.电子邮件是有固定格式的,它由邮件头和邮件体两部分组

B.电子邮件应用程序的最基本的功能是:创建和发送,接收、阅读和管

理邮件的功能

C.密码是对邮件的一个最基本的保护。目前,保证电子邮件安全性的主

要手段是使用大写字母、小写字母、数字和符号混用的密码

D.利用电子邮件可以传送多媒体信息

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

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

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

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

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

29.某数据库应用系统使用SQLServer2008作为数据库平台。在系统运

行期间,用户反映某更新操作很慢,无法正常完成业务。系统工程师分

别在用户的客户机和数据库服务器上使用数据库管理系统自带的客户

端工具执行此更新操作语句,发现该语句执行后长时间无响应。经检查

数据库服务器CPU使用率小于1%,磁盘10也非常小。造成此现象可

能的原因是()

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

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

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

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

30.下列关于SQLServer数据库服务器登录账户的说法中,错误的是

A.登录账户的来源可以是Windows用户,也可以是非Windows用户

B.所有的Windows用户都自动是SQLServer的合法账户

C.在Windows身份验证模式下,不允许非Windows身份的用户登录到

SQLServer服务器

D.sa是SQLServer提供的一个具有系统管理员权限的默认登录账户

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

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

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

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

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

出到文件out.dat中。

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

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

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

例如।位置012345678

源字符巾dcbahgfe

432198765

则处理后字符中hgfcabcd

876591234

注意,部分源程序存在teste文件中•

请匆改动数据文件in.dal中的任何1!(据、主函数main()、设函数readDatO和写函数writeDatO的内容.

1;iinclude<stdio«h>

2:*include<string.h>

3jvoidreadDat();

4jvoidwriteDat();

5*charxx[20][801;

6;voidjsSort()

7i(

j

8I

9;)

10;voidmainO

11;(

12•readDat();

13:jsSortO;

14!writeDatO;

15\)

!,•从文件m.dai中父取20tj数福存放到字符串软觎xx中•/

16jvoidreadDat()

17?/

18}FILE*in;

19jint1-0;

20*char*p;

www

21;in■fopen(in.datr*r);

22!whiled<20“fgets(xxli)r80,in)!-NULL)

23\(

24-p-strehr(xx[i)t,\n,);

25jif(p)*p-0;

26j

27•)

28;fclose(in);

29;}

i/•尼站果xx・出到文件om&t中•/

30*voidwrxteDat()

31j1

32-FILEeout;

33jint1;

34;out-fopen(*out.dat*,*w**);

37Iprintfxx(l]);

38ifprintf(out,xx(i));

39\)

40;fclose(out);

32.

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

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

字符串中的所有小写字母改写成该字母的上一个字母,如果是字母a,

则改写成字母Z,其他字符保持不变。把已处理的字符串仍按行重新存

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

到文件out.dat中。例:原文:Adb.Bcdza

abck.LLhj结果:Aca.Bbcyzzabj.LLgi原始数据文件存放的格式是:

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

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

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

4•Intmaxline-0;/•文聿的总行敷•/

5•intReadDat(void);

6;voidWriteDat(void);

!,•以后为•位忙字符串中的析科小耳学用改写成力学阳的上一个字用,如量能?用M修改写A字艰加M他字符保》不克♦/

7।voidConvertCharD(void)

8

9

10

11;voidmain()

12\I

13•if(ReadDatO)

14I(

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

16return;

17|I

[8»ConvertCharD(>;

19\WriteDatO;

20!J

;“从文件m&t中it以・英文文拿存入期字符mxx中。/

21!intReadDat(void)

I

22।(

23!FILE-fp;

24iint1-0;

25char*p;

ZE•if((fp-fopen("ln.dat*r*r**))-NULL)

27return1;

28•while(fget3(xx[1],80«fp)!•NULL)

29j(

30p•strcbr(xx(1],*\n•I;

31if(p)*p•0;

32!♦*;

33

34;tnaxline■i;

35!fclose(fp);

36jreturn0;

37

;/结果H■巾*文件am中•/

3B\voidWriteDat(void)

39)(

40FILEefp;

41*inti;

42fp-topen(wout.dat*,"w**);

43for(1-0;1<moxllno;)

44i(

45printfxx(1|;

46fprintf(fpr"IsXn",xx(i));

47

48।fcloae(fp);

49

33.已知数据又件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的内容。

1;finclude<stdio.h>

2-tdefineMAX200

3iInta(MAX)rb[MAX],ent

4;voidwriteDat();

5!voidjsValO

/*readDatO从数累文件m.dil中读取200个四位数存入数组>中♦/

voidreadDat()

10

11

12FILE*fp;

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

14for(i-0;1<MAX;

15fscant(fp,"W.&a(i]);

16fclose(fp);

17I

18voidmain()

19;(

20,int1;

21!readDat();

22;jsValO;〃调用”Vah)曲故,实现KH要求的功能

23\printf("湎足条件的数=Sd\n-,ent);

24•for(i■0;i<ent;1+♦)

25;printf(0%d”,b(i]);

261printf;

27'writeDat():

28;|

•函数writeD叫)和端聚cm以及数赳b中符合条件的四位数■出到oul4at文件中♦/

29;voidwriteDat()

30

31FILEefp;

32inti;

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

34fprintf(fp#ent);

35for(1=0;i<ent;

36fprintf(fp/"$d\n”,b[i1)

37fclose(fp);

38

34.在文件in.dat中存有若干个(个数<200)四位数字的正整数,函数

ReadDat读取这若干个正整数并存入数组XX中。请编制函数CalValue,

其功能要求:1.求出该文件中共有多少个正整数totNum;2.求出这些

正整数中的各位数字之和是偶数的数的个数totCnt,以及满足此条件的

这些正整数的算术平均值totPjzo最后main函数调用函数WriteDat把

所求的结果输出到Out.dat文件中。

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

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

和输出函数WriteDat的内容。

军.•include<stdio.h>

2■defineMAXNUM200

3intxx[MAXNUM);

4inttotNujn-0;〃文件an.<Ut中共有多少个正•故

5inttotCnt-0;〃料含条件的正■盘的个数

6doubletotPjz»0.0;〃平均值

7intReadDat(void);

8voidWriteDat(void);

9voidCalValue(void)

10

11

12

13voidmain0

14(

15int1;

16for(i«0;i<MAXNUM;[♦+)

17xx(i)•0;

18if(ReadDat())

19

20pin"("数据文件in.dat不能打开!\007\n");

21return;

22

23CalValue();

24printf("文件in.dat中共科正整8个\n*\totNum);

25printf("符合条件的正整数的个数"d个\n".totCnt);

26print--平均值,,・2JLf\n“,totPlz);

27WriteDat();

28»

/•读取这若干个正■效并存入数tflu中“

29intBeadDat(void)

30(

31FILE*fp;

32inti-0;

www

33if((fp-fopen("in.datrr))~NULL)

34return1;

35while(!feof(fp))

36(

37fscanf<fp,7dJ.&xx(i++));

38]

39fclose(fp);

40return0;

41}

八把计算蛀果存入文件。仇匕中•/

42voidWriteDat(void)

43(

44FILE*fp;

45fp-fopen("out.datM,**ww);

46fprlntf(fp/"%d\nid\n%.21f\nwrtotNan,totCnt,totPjz);

47fclose(fp);

48

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

1;flnclude<stdio«h>

2••include<string.h>

3itinclude<8tdlib.h>

4!fdefineMAX100

5•typedefstruct

6;<

7IchardmtS];,♦产用代码•/

8«charme(11];/•产品名寿•/

9•intdj;单钞•/

10!intsi;/•Ht*•/

11ilongje;/•命・•/

12:}PRO;

13jPROsell[MAX);

14|voidReadDat();

155voidWriteDat();

16jvoidSortDat()

17i(

18

20!voidmain(>

21[(

22'memset(sellt0,sizcof(sell));

23•ReadDat();

24iSortDatO;

25!WriteDat(”

26;1

27;voidReadDat()

28;(

29FILE#fp;

30charstr(80)9ch[1I];

31inti;

32fp,fopen("in.dat",Hrw>;

33for(l•0;1<100;1+♦)

34(

35fgets80.fp);

36memcpy(sell(1).dm,stt/4);

37metncpy(sell(i).me,atr*4f10);

38metnepy<ch.str*14.4);ch[41-0;

35sell(1।.dj■atol(cb);

40oteincpy(ch«str*18f5);ch(Sl*0;

41sell(i).91-atol(ch);

42sailfl).je•(long)sell[i]«dj•sell(i].si;

43)

44fclose(fp);

45)

46voidWritoDat0

47

48FILE*fp;

49int1;

50fp•fopen("out♦da**«**);

51fox(1•0/1<100;

52I

53fprlntf(fp,"%BIs%4d%SdH01d\n**,9«11(1].dmrsell(i),me,sell(1j.djrsell(1).slf

sellfi].je);

55fclose(fp);

56

36.已知在in.dat中存有若干个(个数<200)1四位十进制数字组成的正

整数,函数ReadDat读取这若干个正整数并存入数组XX中。请编制函

数CalValueO,其功能要求:

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

2.求这些正整数右移1位二进制位后,产生的新数是偶数的数的个数

totCnt,以及满足此条件的这些正整数(右移前的值)的算术平均值totPjz。

最后main函数调用函数WriteDat把所求的结果输出至【Jout.dat文件

中。

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

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

和输出函数WriteDatO的内容。

finclude<gtdio.h>

IdefineMAXNUM200

intxx(MAXNUM];

4inttotNum•0;//文件in.dat中知f多少个正接It

5inttotCnt•0;〃符合拿竹的iESIk的441

6doubletotPjz,0.0;〃平均值

7intReadDat(void);

8voidWriteDat(void);

9voidCalValue(void)

10

11

12

13voidmain()

14(

15int1;

16for(i•0;i<MAXNUM;

17xx[i]■0;

18if(ReadDat())

19(

20printf「数据文件in.dat不能打开!\007\nw);

21return;

22I

23CalValue();

24printf("文件xn.dat中共有正整数7d个totNum);

25printf("符合'条件的正核数的个敌个\n”,totCnt);

26printf<**平均值=、.21f\n",totPjz):

27WriteDat();

28|

,•设取这若干个正以融并存入敏mXX中♦/

29intReadDat(void)

30

31FILE*fp;

32Int1•0;

w

33if((fp-fopen("in.dat#*r"))-»NULL)

34return1;//1D*in.dat1

/•while-K执行女科Uudat的姑闻退出•/

35while(!feof(fp))

36

37fscanf(fp,wld,**,&xxfi+7);〃从文件in.da取个Mt存入xx⑴中.同N1Ml

38)

39/close(fp);

40return0;〃慰文件m.dAt若干个壬・室■取井正•存入CtMu<VfiM0

41)

/・里计算始瞿存入文件gt.dat中•/

42voidWriteDat(void)

43C

44FILE-fp;

M

45fp■fopen("out.datr"w*>;

H

46tprintf(fp9-%d\n%d\n%.21X\n#totNum,totCntttotPjx)2

47fclose(fp);

48

37.将文件in.dat中的200个整数读至数组XX中。请编制jsValue函

数,要求:求出数组XX中的数值为奇数的个数cntl和数值为偶数的个

数cnt2以及数组XX下标为奇数的元素值的算术平均值pjo

结果cntl,cnt2,pj输出到out.dat中。注意:部分源程序存在test.c

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

数read_dat和输出函数writeDat的内容。

1tlnclude<stdio.h>

2,defineN200

3Intchtl«5t2rxx[NJ;

4floatpj;〃平均值

5voidwriteDat();

6voidjsValue()

7

e

9

/•ro4d_d«t(intxxlN”/敷典文ftiiutot中的200个・收0至IWlu中•/

iovoidread_dat(intxx[N])

ii(

12intirj;

13FILE*fp;

w

14fp«fopen(**in.d3t,"r");

15for(1•0;i<20;

16(

17for(j-0;j<10;

18

19fscanf(fp«"dj,^xx(i*10*jJ);//从文件n&i中it取一个整数打入敷馔元索xx【l・107】中

20printf("%d",xx[i*10*j));

21]

22printf(*\nw);

23]

24fclose(fp);

25

26voidmain()

27(

28read_dat(xx);

29ijsValue();

30iprintf(H\n\ncntl-%d,cnt2«%d,pj*%6.2f\n*cntl/ent2,;

I/Pj>

3iiwriteDat();

32;)

/•将计算结果cntl.cm2,pj的出更IouLdai中,/

33JvoidwriteDat()

34I

35FILEWfw;

36jfw-fopen("out.dat*\Hww);

w

37!fprintf(fwr"%d\n%d\n%6.2f\nrentI,cnt2rpj);〃cml.cm2,pj写入到ouLdat中

38;fclose(fw);

39!

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

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

以行为单位对字符串变量的下标为奇数的位置上的字符按其ASCII值

从小到大的顺序进行排序,下标为偶数的位置上的字符仍按原来位置存

放,排序后的结果仍按行重新存入字符串数组)XX中,最后调用函数

WrriteDat把结果xx输出到out.dat文件中。

例如:位置01234567

源字符串hgfedcba

则处理后字符串hafcdebu

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

请勿改动数据文件indat中的任何数据、主函依读的数readDatO和写函效writeDat。的内容.

11•include<stdio.h>

2;IincludeOtring.h>

3:voidreadDat();

4!voidwrlteDat();

5;charxx(20](80];

6*voidjsSort()

7\(

e

main0

12•readDat();

131jsSort();

141writeDat();

15j)

;“从文件jit3中建取20疗数搦存放到字枸率加fix*中立

16!voidreadDatO

17\(

18|FILE*m;

19•inti■0;

20;char*p;

21!in•fopen("in.dat"/;

22iwhile(1<204&fgets(xx[1],80,in)NULL)

23J(

24\p•strchr(xx[i],\n*);

25;if(p)*p■0;

•/♦把姑果H0出到OUL<ta文件中♦/

30;voidwriteDat()

FILE•out;

33int1;

wH

34out■fopen("out.datew");

35for(i•0;i<20;

36

37prlntf("%s\nw,xx[i]);

fprintf(out,*%s\n*rxx[1]);

fclose(out);

39.已知数据文件INI.DAT和IN2.DAT中分别存有100个两位十进

制数,并且已调用读函数readDat把这两个文件中的数存入数组a和b

中,请考生编制一个函数JsVal,实现的功能是依次对数组a和b中的数

按条件重新组成一个新数并依次存入数组C中,再对数组C中的数按

从小到大的顺序进行排序,最后调用输出函数writeDat把结果C输出到

文件out.dat中。组成新数的条件:如果数组a和b中相同下标位置的

数均是奇数,则数组a中十位数字为新数的千位数字,个位数字仍为新

数的个位数字,数组b中的十位数字为新数的百位数字,个位数字为新

数的十位数字,这样组成的新数并存入数组C中。

例如,«(123124152115

b,3245172718IS

ct345112751155

播序后g113512753451

注意X部分源程序存在EC文件中.

用序中已定义:叩00卜b(IOO)和叩00]・

请勿改动敷据文件INLDAT和1N2.DAT中的任何数据.主函数mamQ.读曲数reMDatO和耳幽数writelM)的内秀.

11•includeOtdio.h>

2»tdefincMAX100

3•inta(MAXI•b(MAXJ,C(MAXJ;

4-intent-0;/•寿故折内要件数的个我•/

5•voidjsVdl()

IN1.DATIDN2.DAT中的100个眄粒十班.我存入也址,和b中・/

9«voidreadDat()

10j(

11;int1;

12jFILE*fp;

13:fp-fopen("ini.dacM***r")

14!for(i•0;1<MAX;

15;fscanf(fp,7cT.fcalll):

16!fclose(fp>;

17;fp•fop«n("in2.dat",・r”)

18-ford-0;1<MAX;if

19»fscanf(fp4Fd"・&b[l]);

20;fclose(fp):

21j1

22voidmain()

24;intifvoidwriteDat();

25;for(i-0;i<MAX;

26•c[l]•Q;

27-readDat();

28!jsVal();

29;for(i-0;1<MAX“C(

30:prlntf(*id\n",c(i)>:

31iwritoDat()I

32j)

i/•把M聚Ur蜗c,出到文林2小中〃

33-voidwriteDat()

FILEafp;

36mti;

3了fp-fopen("out.dit*,Ww"»;

38for(1-07i<MAX,,c(i)>0;

39fprXntf(fp,*ld\n*<e(l)):

40{close(fp);

41

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

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

位数的千位数位置上的值小于等于百位数位置上的值,百位数位置上的

值小于等于十位数位置上的值,以及十位数位置上的值小于等于个位数

位置上的值,并且原四位数是偶数,则统计出满足此条件的个数ent并

把这些四位数按从小到大的顺序存入数组b中,最后调用写函数

writeDat把结果ent以及数组b中符合条件的四位数输出到文件Out.dat

中。

注意,部分源程序存在u»tc文件中.

程序中已定义数组:a[200].b(200),已定义受ILent

请勿改动数据文件in.dat中的任何数据、主函数main。、读的数readDat。和写南数writd>ai()的内容・

1Ifinclude<stdio.h>

2jIdefineMAX200〃定义塞空量MAX,K僮哥于200

3jinta(MAX)rb(MAX),ent-0;〃定义整型散烟a【MAX),b[MAX]加更■ent,并Kf・ent1的初值为T

voidwriteDat();

voidjsVal()

voidreadDat()

FILE#fp;

fp•fopen(Hin.dat"/wr");

for(1-0;1<MAX:

fscanf(fp,"d",ia[i|>;

fclose(fp);

voidmain()

readDat();

jdVal();〃・用jsValO(Alt实现・目裳求的功能

printf满足条件的数・qd'n".cnt>;

for(1■0;i<ent*

printf(**%d**,b(1]);

printf(*\nw);

writeDat();

voidwriteDat()

30!(

FILE•fp;

fp•fopen(wout.dat","w");

fprintf(fp,ent);

for(1-0;i<ent;

fprintf(fp^b(1));

fclose(fp);

38

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

42.已知有如下关系模式:RI(a,b,c),R2(c,d,a),R3(e,

f),R4(a,e,g),其中标下划线的属性是主码。请将上述关系模

式用适当的ER图表示出来,并用下划线标注出作为实体主码的属

性。(10分)

六、单选题口分](2题)

43.在数据库运行过程中,数据库管理员应对数据库运行情况进行监控。

设有如下可能需要监控的内容:I.数据库空间使用情况II.数据库服

务器网络是否通畅HI.数据库缓冲区命中率情况IV.数据库用户向数据

库发送的每条SQL语句V.数据库中索引使用情况上述工作中属于数

据库日常监控内容的是()o

A.仅I、m和vB.仅I和me.仅n、m、w和vD.全部均是

44.设有关系模式R(A,B,C,D),存在函数依赖集:{A-B,C-D},

则R最高可属于()o

A.INFB.2NFC.3NFD.BCNF

参考答案

1.D解析:用二叉树表示一棵树的方法可以概括为“左子女-右兄弟”表示

法,也就是:在树中,如果结点y是结点x的第1个子女,那么在二叉

树中y就是X的左子女;如果y是X的右兄弟,则在二叉树中y将是X

的右子女。根据这一规则,本题中y是x的最右边一个子女,所以在它

的右边没有兄弟结点,所以它就没有右子女。也就是说它的右子树为空。

2.A解析:Oracle针对Intemet/Intranet的产品是OracleWebSevero它由

OracleWebListener、OracleWebAgent和Oracle7服务器3部分组成。

OracleWebserver2.0:它除了包括OracleWebserver1.0的功能及相应的

开发与管理工具外,还增加Java解释器和LiveHTML解释器,使其能

支持多种语言。OracleWebListener:它是一个进程,具有普通HTFP服

务器的功能,主要用于接收从Web浏览器发出的用户查询请求,并将查

询结果(即HTML文本)返回给用户。OracleWebAgent:是用公用网关

接口(CC1)实现的过程化网关,负责Web和Oracle7数据库之间的集成。

它由OracleWebListener启动,通过透明地调用Oracle7服务器中的存

储过程,从数据库中检索信息,产生HTML输出结果,并提交给Oracle

WebListenero

3.B解析:连入局域网的数据通信设备是广义的,包括计算机、终端和

各种外部设备。

4.C在关系代数运算中,符号%的含义是广义笛卡儿积,笛卡儿积是只

对于关系之间的运算有意义,因此选项C)显然表示的不是关系。

5.A

6.C解析:数据库恢复需要由DBA介入,装入最新的数据库后备副本,

和有关的日去文件副本,然后由系统进行恢复工作。

7.CCO【解析】计算机系统中有限的资源与众多请求分配资源的进程间

存在矛盾。当若干进程需求资源的总数大于系统所能提供的资源数时,

进程间就会出现抢占资源的现象,如果对进程抢占的资源管理或分配不

当就会引起死锁。

8.C解析:操作系统是直接运行在裸机上的最基本的系统软件,任何其

他软件都必须在操作系统的支持下才能运行。操作系统是一种资源管理

程序。其主要功能是管理计算机软硬件资源,组织计算机的工作流程,

方便用户的使用,并能为其他软件的开发与使用提供必要的支持。

9.B解析:多媒体技术是实现基本计算机的、对多种媒体(如数字、正文、

图形、图像、声音等)集成的技术。由于视频信号和音频信号占用空间很

大,所以必须采用数据压缩措施。在多媒体的实时压缩和解压缩层可以

快速地处理视频和音频信号的压缩和解压缩。

10.A解析:E-R模型向关系模型转换的规则如下。①一个实体类型转换

成一个关系模式,实体的属性就是关系的属性,实体的码就是关系的码

②一个1:1联系可以转换为一个独立的关系模式,也可以与联系的任

意一端实体所对应的关系模式合并。③一个1:n联系可以转换为一个

独立的关系模式,也可以与联系的n端实体所对应的关系模式合并。④

一个m:n联系转换为一个关系模式。与该联系相连的各实体的码以及

联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。

⑤3个或3个以上的实体间的多元联系转换为一个关系模式。与该多元

联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关

系的码为各实体码的组合。具有相同码的关系模式可合并。

11.UPDATE学生SET姓名="王华"WHERE学号="10"UPDATE学生SET

姓名='王华'WHERE学号=10,解析:SQL的数据更新命令如下:

UPDATETableNameSETColumn_Namel=eExpressionl[,Column_Name2=

eExpression2..,]WHERECondition

一般使用WHERE子句指定条件,以更新满足条件的一些记录的值。

12.文件系统【解析】Linux操作系统由四部分组成:内核,外壳,文件

系统和应用程序。

13.10头结点和尾节点都只有一个指针,其他的节点是4个指针,所以

共有10个指针

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

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

个动词,如下:

•数据查询:SELECT;

•数据定义:CREATEDROPALTER;

•数据操纵:INSERTUPDATEDELETE;

•数据控制:GRANTREVOKEo

因此本题填数据控制。

15.进程推进速度不合理死锁产生的原因是系统资源不足或者是进程调

度不合理。

16.目态目态解析:CPU的执行状态分为管态和目态。目态具有较低权

限,只能执行规定的指令,访问指定的寄存器和内存的指定区域。用户

只能在目态下运行,防止用户程序对操作系统的破坏。

17.未提交事务未提交事务

18.独立独立

19.

ni-1riz+ns

树与二叉树的转换;将森林中每棵树的根结点作为二叉树的根结点,每

个结点中的从左数第一个孩子是二叉树中的左孩子,该孩子的所有兄弟

都依次为该结点的右孩子,如此例推

20.聚簇存放物理设计中最重要的一个考虑是把数据记录如何在整个范

围内进行物理存储,常用的存储方式有以下三种:顺序存放,散列存放,

聚链存放

21.B

22.D解析FCB(文件控制块)是系统为管理文件而设置的一个数据结构,

是文件存在的标志,记录了系统管理文件所需要的全部信息;FIFO是

先进先出,一般表示某些算法(队列操作、存储页面淘汰等);PCB是进

程控制块,描述进程的基本情况以及进程的运行变化过程。

23.A

24.A

25.D

26.B

27.C选项A),电子邮件是有固定格式,它由邮件头和邮件体两部分组

成;选项B),电子邮件应用程序的最基本的功能是:创建和发送,接收、

阅读和管理邮件的功能;选项C),每个邮箱都有密码保护,这是最基本

的保护,目前,保证重要邮件的安全性的主要手段是使用数字证书,数

字证书可以证明用户的身份。加密电子邮件,保证不被修改;选项D),

利用电子邮件可以传送多媒体信息,MIME协议支持多媒体信息的发送。

28.C

29.D

30.B

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

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

符不参加处理。

\n【解题思路】

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

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

的设置即可。

\n【参考答案】

\n

\n

32.\n【审题关键句】以行为单位把字符串中的所有小写字母改写成该字

母的上一个字母,大小写不变,其他字符不变。

\n【解题思路】

\n①定义整型循环变量i、j。

\n②在第一层for循环中,循环变量i从0开始,依次递增直到其值等于

maxline,实现对文章每行的处理。第

温馨提示

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

评论

0/150

提交评论