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

下载本文档

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

文档简介

【2021年】山东省蒲泽市全国计算机等级

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

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

一、L选择题(10题)

1.下述哪一个数据库系统属于第一代数据库系统?

A.SybaseB.IngresC.IMSD.ObjectStore

2.关系数据模型中,关系是指()。

A.元组中的一个属性值B.多个属性的总称C.关系模式和元组的集合

D.元素之间的联系的集合

3.在数据库的三级模式结构中,当模式改变时,通过修改外模式/模式的

映像而使外模式不变,从而不必修改应用程序,这是保证了数据与程序的

A.存储独立性B.物理独立性C.用户独立性D.逻辑独立性

4.下列哪一项不是日志文件中应该记录的内容?

A.事务开始B.事务提交C.事务对数据的修改D.事务对数据的查询

5.在下列关于关系的叙述中,错误的是

A.表中任意两行的值不能相同B.表中任意两列的值不能相同C•行在

表中的顺序无关紧要D.列在表中的顺序无关紧要

6.把SQL语言嵌入主语言使用时必须解决的问题有。

I.区分SQL语句与主语言语句

II.数据库工作单元和程序工作单元之间的通信

in.协调SQL语句与主语言语句处理记录的不同方式

A.I和IIB.I和IIIC.II和IIID.I、II和m

7.下图给出一棵二叉树,按照前序法周游二叉树的结点序列是

A.ABDEGCFHIB.DGEBHIFCAC.ADBGEFCIHD.ADGEBHIFC

8.限制程序的存取,使操作系统不能存取允许范围以外的实体,这种操

作系统隔离安全措施称为()。

A.A.物理隔离B.时间隔离C.逻辑隔离D.密码隔离

9.在关系模式R<U>中,对于U的子集X和Y如果X-Y,且YC

X,则称Y对X的依赖为()。

A.非平凡的函数依赖B.完全函数依赖C.传递函数依赖D.部分函数依

10.允许多个程序同时进入内存并运行的是

A.程序并发执行B.多道程序设计C.程序的顺序执行D.时间片轮转

二、填空题(10题)

11.多个事务在某个调度下的执行是正确的,是能保证数据库一致性的,

当且仅当该调度是

12.用二维表结构表示试题数据模型称为_口_数据模型

13.在实际应用中,分组交换技术可以分为两类擞据报与o

14.在计算机系统中,一个以科学的方法组织、存储数据,并可高效地

获取、维护数据的软件系统称为O

15.文件系统提供按名存取功能,要求用户在读文件之前调用文

件操作。

16.在一棵二叉树中,度为0的结点个数为No,度为2的结点个数为电则有No=口

17.JPEG是一种_________图像压缩编码的国际标准。

18.分布式数据库中定义数据分片时,必须满足3个条件:完备性条件、

重构条件和【】。

19.进行DES加密时,需要进行轮的相同函数处理。

20.网络攻击者设法涂改一个网站的主页,使得该网站的VWW服务不

能正常工作,这种网络攻击称为」L

三、单选题(10题)

21.消息认证是指接收者能够检验收到消息真实性的方法,下列不属于

消息认证的检验内容?

A.A.证实消息的源和宿B.消息的内容是否保持其完整性C.消息

的序号和时间性D.消息是否被窃取

22以下有关数据结构的叙述,正确的是()

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

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

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

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

23.收缩整个数据库的大小,可以采用下列语句:()

A.DBCCSHRINKDATABASE

B.DBCCSHRINKFILE

C.ALTERDATABASE

D.CREATESCHEMA

24.文件可存放在磁盘、磁带等多种存储介质上,通常只能按记

录的顺序存取,对这种文件进行更新,原则上需对文件做整体拷贝。

A.索引文件B.索引顺序文件C.顺序文件D.直接文件

25.在数据库技术中,为提高数据库的逻辑独立性和物理独立性,数据

库的结构被划分成用户级、()和存储级3个层次。

A.管理员级B.外部级C.概念级D.内部级

26.用数组存放循环队列的元素值,若其头尾指针分别为front

和rear,则循环队列中当前元素的个数为()

A.(rear-frontm)modm

B.(rear-front1)modm

C.(rear-front-1m)modm

D.(rear-front)modm

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

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

28.下列关于SQLServer数据库用户权限的说法中,错误的是_________

A.数据库用户自动具有该数据库中全部用户数据的查询权

B.通常情况下,数据库用户都来源于服务器的登录账户

C一个登录账户可以对应多个数据库中的用户

D.数据库用户都自动具有该数据库中public角色的权限

29.逻辑设计主要是把概念模式转换成()

A.DBMS能处理的模式B.与DBMS无关的模式C.层次结构模型D.子

模式

30.关系数据模型有许多优点,但下面所列的条目中哪一条不是它的优

点()。

A.A.结构简单

B.高度非过程化

C.有标准语言

D.可表不复杂的语义

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

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

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

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

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

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

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

成整型变量),如果原字符是数字字符0至9或计算后f(p)值小于等于

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

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

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

进行处理。

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

的内容。

!finclude<stdio.h>

ifinclude<string.h>

;finclude<ctypG.h>

4!unsignedcharxx[50][80];

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

6•intReadDat(void);

!voidWriteDat(void);

g;voidencryptChar()

Q

10

11

12।!voidmain()

13i(

14;if(ReadDat())

15!(

16pmtfLift据文件in.da七不能打开!\2007”);

17return;

18

19iencryptChar();

20!WriteDat();

21i}

\,♦从文件ilL&t中途取一■英文文章,存入到无符号字相*敷银U中♦/

22

t!intReadDat(void)

23iI

24;FILE*fp;

25!int1•0;

26।unsignedchar・p;

wH

27;if((fp-fopen(in.datr•,r"))-NULL)

28return1;

29;while(fgets<xx[i],80,fp)!-NULL)

30!(

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

32if(p)*p-0;

33

34;)*

35■maxiine=i;

36;fclose(fp);

37;return0;

381i

i八把结果U■出到文件OULdtt中•/

39'voidWriteDat(void)

40J(

41*FILE*fp;

42jint1;

43•fp-fopen("out.dat",Ww");

44jfor(i*0;i<maxline;

45;1

Mw

46!printf(ls\nrxx(1));

47jfprintf(fp^7s\n".xx(i]);

48{)

49!fclose(fp);

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

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

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

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

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

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

字),如果新组成的两个位数ab>cd,ab必须是偶数且能被5整除,cd必

须是奇数,同时两个新数的十位数字均不为零,则将满足此条件的四位

数按从大到小的顺序存入数组b中,并要计算满足上述条件的四位数的

个数cnto最后main函数调用写函数writeDat把结果ent以及数组b中

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

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

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

请勿改动数据文件in.dat中的任何数据、主函数main。、读函数readDMQ和写诿数writeDatO的内容.

1iIinclude<stdio.h>

2!IdefineMAX200

3\inta[MAX],b(MAX],ent-0;

4!voidwrlteDat();

5;voidjsVal()

6\<

*7i

8i)

91voidreadDat()〃从in.dat文件中it取200个西位数存入敷蛆a中

10i(

11-int1;

12\FILEefp;

wwwH

13;fp-fopen(in.datrr);

14jfor(i-0;i<MAX;D

15jfscanf(fpr"Qd",(i]);

16;fclose(fp);

17!1

18•voidmain()

19;(・

20!int1;

21•readDat();

22;jsValO;〃•用南敷”宏观要求的功能

23!printf<"涓足条件的数-%d\n”,ent):

24;for(1■0;i<ent;i**)

25\printf(*%d”,

26iprintf("\nw);

writeDat();

28

29voidwriteDat(>〃纪计W结果cm以及数蛆b中普台条村的四位数■出到outdot文件中

30(

31FILE*fp;

32int1;

33fp•fopen(wout.dat°,Ww*');

wR

34fprintf(fp,ld\nrent);

35for(1■0;i<ent;11♦♦)

36fprlntf(fp,b(l));

37fclose(fp);

38J)

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

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

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

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

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

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

果两个新组成的数均是偶数并且至少有一个数能被9整除,同时两个新

数的十位数字均不为零,则将满足此条件的四位数按从大到小的顺序存

入数组b中,并要计算满足上述条件的四位数的个数ent。最后main函

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

到Out.dat文件中。

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

程序中巳定义数SLa|200].b(200],巳定义变量:ent

请勿改动数据文件in,dat中的任何数据、主由数mainO、读函数rvadDatO和写函数writeDUO的内容.

t

1.•include<stdio.h>

2JIdefineMAX200

3!inta(MAX),ent-0;

4;voidjsValO

voidreadDatO〃从xn.dae文件中博取200个四伸数存入H18a中

12;fp-fopen("in.dat","r"

13!for(i■0;i<MAX;

14jfscanf(fp<6a(1]

15;fclose(fp>;

writeDat()〃兄计算站果cot以及我爆b中料含条件的内口数・出到outdu文件中

voidmain()

28

29mt1:

30readDat();

31jsVal();〃调阳的敝加me宝现&U要求的功能

32printf("满足条件的SUd\n”.nt);

33for(1-0;1<ent;1♦*)

34printf<7d”,b[i!);

35printf(H\nM);

36writeDat();

37!)

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

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

其功能要求:

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

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

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

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

中。

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

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

和输出函数WriteDat的内容。

1Itlnclude<stdlo«h>

2!IdefineMAXNUM200

3JintxxlMAXNUMJ;

4.inttotNuw-0;〃文件In,dat中央有多少个正餐数

5iinttotCnt•0;〃符合条件的正整畋的个敛

6-doubletotPjz-0.0;〃平

7!intReadDat(void);

8IvoidWriteDat(void);

9voidCalValue(void)

10

11

12

13voidmainO

14

int1;

16ford-0;i<MAXNUM;i+4)

17xx(1]-0;

18if(ReadDatO)

19(

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

21return;

22)

23CalValueO;

24pzlntf("文件in.dat中共有正整数个\n”,totNum);

25print—”符合条件的正整数的个敢-Qd个\n”.totCnt);

26;printfL平均值=$・21f\n・,totPjz);

27«WriteDat();

28;)

八R取这若干个正■数并存入aifiu中〃

29•intReadDat(void)

30j

315FILE*fp;

32;inti-0;

33;if((fp-fopen(*ln.dat","rM))-NULL)

34!return1;

35iwhile(!feof(fp))

36\

I

37!fscanf(fp,”dj.&xx(i+^]);

38j)

39!fclose(fp);

40•return0;

41:I

,•纪计翼站臬存入文件iut.dat中〃

42ivoidWriteDat(void)

43\

1

44»FILE*fp;

45;fp-fopen(wout.dat",**wH>;

w

46Ifprintf(fp,ld\n%d\ni.21f\n"#totNum,totCnt,totPjt);

47jfclose(fp);

48;

35.程序test.C的功能是:把s字符串中的所有字符左移一个位置,串

中的第一个字符移到最后。请考生编写函数chg(char*s)实现程序要求,

最后调用函数readwriteDAT把结果输出到Out.dat文件中。

例如:,字符串中版和内容为tMn.l23xyZ.则01用谍由数后.结果为t»J23xyZM.

注意r部分源理序存在ie«.c文件中.

请勿改动数据文件m.dai中的任何畋据.E函数01皿)和*出唠数re&dwntcDATO的内容.

llncludc<strln9»h>

■defineN81〃定义宏衰KttWT9X

voidreadwriteDAT();

voidchq<chares)

8

mAin()

4

puts(a)j

readwriteDAT()

“从文仲£八,51中流人字符巾♦脩字符由安■用函对字符小检税■目的量十加打处理,杵化处理姑果写入JM文件

out.dat中•/

char

fopen("out.da

〃从文件:kt中谪取f字符印“帏字符申+

chg(«)i〃0用•故uhg(«)时字符串・盘行蚣期

/杞处肾姑盘写入文件中

close(r

33fclove(wf)

36.已知在in.dat中存有若干个(个数<200)四位数字的正整数,函数

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

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

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

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

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

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

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

和输出数据函数WriteDat的内容。

1\Iinclude<stdlo.h>

2iIdefineMAXNUM200

3!intxx[MAXNUM);

4iinttotNiun,0;〃文件in.dat中共科多少个正整数

5JinttotCnt■0;〃符合条件的正整敏的个敏

6•doubletotPjz-0.0;//平均值

7iintReadDat(void);

8!voidWriteDat(void);

9jvoidCalValue(void)

10;(

13:voidmain{)

14;|

15!int1;

16;for(i-0;i<MAXNUM;i++)

17!xx[i]■0;

18»if(ReadDat())

19j(

20\printf「数据文件fn.dat不能打开!\0。八

21•return;

22j)

23!CalValue();

24;printf(*,文件in.dat中共有正整数Nd个\n".totNum);

25•printf(”符合条件的正整数的个数=totCnt);

26•printf(”平均值T.21f\n”,totPjz);

27\WriteDat();

281)

i/•读取这并F个正整数并存入触UIxx中•/

29;intReadDat(void)

30!(

31;FILE*fp;

32;inti-0;

33!if((fp»fopenCin.datM,"r">>--NULL)

34।return1;

35•while(!feof(fp))

36•(

37Jfscanf(fp«"Qd."■

38i!)

39jfclose(fp);

40;return0;

41>)

\/・IC计IT结聚存入文件out.dm中•/

421voidWriteDat(void)

43\

44!FILE*fp;

wHH;

45I!fp■fopen("out.dat,w)

R

46;fprintf(fp,%d\n%d\n%.21f\totNutn»totCntttotPjz)

5|fclose(fp);

48:

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

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

位数的千位数位置上的值减去百位数位置上的值再减去十位数位置上

的值最后减去个位数位置上的值,如果得出的值大于等于零且原四位数

是奇数,则统计出满足此条件的个数ent,并把这些四位数按从小到大

的顺序存入数组b中,最后调用写函数writeDat把结果ent以及数组b

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

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

程序中己定义做粗,<200],6(200).已定义变量,ent

请勿改动数图文件虹&«中的任何畋据、主fftUmiinO、读京数readDaH)和写序数writeDat。的内容.

1!linclude<atdio.h>

2iIdefineMAX200

3-intdiMAX),b(MAX),ent-0;

4*voidwriteDat()i

5;voidjsVal()

voidreadDat()

121FILE*fpf

13;fp•fopen("in.datw,-rw);

14ifor(i-0;1<MAX;if

15•fscanf(tp,"W.ia(i]I;

26;fclose《fp);

171J

18•voidmain()

19•I

21;readDat();

22!jaVal();

23<prlntf("满足条件的tk・,d\nR,ent);

24;for(1•0;1<ent;U)

25*printf(**%d",b[l));

26♦printf;

27•irrlteDat();

28!)

29ivoidwriteDat<)

33!fp-fopen(*out.dat","w");

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

35;for(i■0;i<ent;ii)

H

361fprlntf(fpr*td\nrb(1]);

37;fclose(fp);

38j1

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

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

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

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

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

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

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

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

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

侧仙Ai1231241521!5

b>3245172718IS

ct345I12751155

律序后a11551275MSI

注意:部分源密序存在EC文件中.

程序中已定义:a[100hWOO)和叩蚂・

请勿改动敷物文件INLDAT和1N2.DAT中的任何数据.主读数mainQ.读曲数readD叫)和耳#数writeD似。的内宾・

119include<3tdio.h>

2»IdefincMAX100

3;int&IMAX1«b[MAX!,C(MAX];

4-intent-0;/•右敖拘G要件数的个敦•/

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

注意】部分源程序存在test.c1t件中.

程序中已定义数组:a[200].b[200],已定义交最:ent

请勿改动1!(据文件in.dal中的任何数据.主函数nuin().i#函数rcadDatO和写函数writeDat()的内容.

1!tinclude<stdio.h>

2jIdefineMAX200

3;inta[MAX],b[MAX]tent-0;

4!voidwriteDat();

5(voidjsVal()

6J(

8;\

9!voidreadDat()〃从".dac■文件中曜取200个网位攻存入数口Ia中

10;(

11;int1;

12•FILEwfp;

13;fp-fopen("in.datw,*rM);

14«for(im0;i<MAX;

15\fscanf[1]);

16i(close(fp);

17!J

18»voidmain()

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

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

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

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

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

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

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

谪勿改动主函数m&in()和输出数据函数wriiuDAT。的内容.

1finclude<stdio.h>

2intcntrsum;〃定义整型全局受Itenu和dun

3voidwriteDATO;

4voidcountvalue()

5

6

7

8voidmainO

ent-sum=0;〃论全局变■cnc.sumM初值为Q

countvalue();〃调用丽敏countvaluo<),实现意H要求的功能

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

M

printf("满足条件的自然数值的和*%d\nrsum);

writeDAT();

16voidwriteDAT()

17

18FILE*fp;

19fp■fopen(*out«<latw,;

n

20fprintf(fpr%d\nid\n"/ent,sum);

21fclose(fp);

22;)

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

41.设某教学管理系统,其查询模块需要提供如下功能:I.查询系信

息,列出各系编号、系名和系办公电话;II.查询某系教师的信息,

列出教师号、教师名、工资和聘用日期;m.查询某教师讲授的课程

信息,列出课程号、课程名和学分;IV.查询讲授某门课程的教师信

息,列出教师名和职称;V.查询某门课程的先修课程信息,列出先修

课程号和先修课程名。系统有如下业务规则:I.一个系可聘用多名

教师,一名教师只能受聘于一个系;II.一名教师可讲授多门课程,

一门课程可由多名教师讲授;m.一门课程可以有多门先修课程,也

可以没有先修课程。(1)请根据以上查询功能与业务规则,用ER图

描述该系统的概念模型。(5分)(2)将ER图转换为满足3NF的关

系模式,并说明每个关系模式的主码和外码。(5分)

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

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

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

性。(10分)

六、单选题[1分K2题)

43.在数据库应用系统生命周期中,当逻辑设计阶段完成后进入到物理设

计阶段。下列不属于物理设计阶段活动的是()o

A.确定关系表的文件组织形式B.进行关系规范化设计C.创建必要的

索引D.设置存储分配参数

44.数据库系统的三级模式结构从数据库系统管理角度考虑数据的组织

与存储。下列不属于数据库三级模式结构的是()o

A.逻辑模式B.物理模式C.外模式D.应用模式

参考答案

1.C第一代数据库系统指层次模型数据库系统。层次模型数据库的代表

是IBM公司1969年研制出的信息管理系统(IMS)。IMS是最早和使用

最广的几个数据库之一。

2.C解析:在二维表中的行定义(记录的型),即对关系的描述称为关系模

式,在二维表中的一行(记录的值),称为一个元组。关系模式和元组的

集合通称为关系。

3.D解析:当模式改变时,数据库管理员对各个外模式/模式的映像作相

应的改变,可以使外模式保持不变。应用程序是依据数据的外模式编写的,

从而使应用程序不必修改,保证了数据与程序的逻辑独立性。

4.D解析:日志是日志记录的序列,它记录了数据库中所有更新活动。数

据查询并没有涉及到数据更新,所以事务对数据的查询并不是日志记录

的内容。

5.B

对于关系而言,二维表中的一行称为关系的元组,二维表中的一列称

为关系的属性,关系中不能有相同的元组,行、列在表中的顺序无关

紧要,但表的不同属性(列)可能有相同的值域,可以相同。

6.D解析:把SQL嵌入到主语言中使用,需要解决以下三个问题:使主

语言的编译程序能够区分程序中的SQL语句和主语言语句,•解决数据

库工作单元和程序工作单元之间的通信问题;解决主语言的单记录处理

方式和SQL语句多记录处理方式之间的矛盾。因此本题正确答案为选

项D。

7.A解析:前序法是先访问根,然后按前序周游左子树,按前序周游右

子树。掌握二叉树的周游树的方法:前序法、中序法和后序法。

8.C

解析:隔离是操作系统安全保障的措施之一,它又可分为:

①物理隔离使不同安全要求的进程使用不同的物理实体。

②时间隔离使不同的进程在不同的时间运行。

③逻辑隔离限制程序的存取,使操作系统不能存取允许范围以外的实

体。

④密码隔离进程以其他进程不了解的方式隐蔽数据和计算。

9.A解析这里要熟悉有关函数依赖的几个概念。①函数依赖设R(A1,

A2,An)是一个关系模式。X和Y是{Al,A2,An}的子集,

若只要关系r是关系模式R的可能取值,则r中不可能有两个元组在X

中的属性相等,而在Y中的属性值不等,则称X函数决定Y,记作X-Y。

②非平凡的函数依赖:若X-Y,但YRX,则称X-Y为非平凡的函数

依赖。③完全函数依赖:若X-Y,且对于X的任意一个真子集X都有

X-Y,则称Y对X完全函数依赖。④部分函数依赖:若X-Y,但Y

不完全函数依赖于X,则称Y对X部分函数依赖。⑤传递函数依赖:

若X-Y(Y(tX),Y不函数依赖于X,Y函数决定Z,则称Z对X传递

函数依赖。

10.B解析:程序并发执行是指两个或两个以上程序在计算机系统中处于

已开始执行且尚未结束的状态。多道程序设计就是允许多个程序同时进

入内存并运行。注意:多道程序设计的方法是允许多个程序同时进入内

存并运行的,故B)正确;而程序并发执行和此问题不相关,程序的顺序

执行和时间片轮转都不允许,多个程序同时进入内存并运行,故A),C),

D)选项错误。掌握程序的顺序执行的特点,以及顺序执行和并发执行的

区别。

11.可串行化的或可串行化可串行化的或可串行化解析:本题考察调度

可串行化的概念。

如果多个事务在某个调度下的执行结果与这些事务在某串行调度下的

执行结果一致,则称该调度为可串行化的调度。可串行化是多个事务并

发执行的正确性准则。所以答案为:可串行化的。

12.关系关系模型:用二维表的形式表示实体和实体间联系的数据模型。

13.虚电路【解析】在实际应用中,分组交换技术可以分为两类:数据

报与虚电路。

14.数据库管理系统(DBMS)数据库管理系统(DBMS)解析:数据库管理

系统(DBMS)是位于用户与操作系统之间的一个数据管理软件,它通过

数据定义、数据操纵、数据库的运行管理和控制、数据库的建立和维护

来科学地组织、存储数据,高效地获取、维护数据。

15.目录目录解析:文件系统一个最大的特点就是“按名存取”,用户只

要给出文件的符号名就能方便地存取在外存空间的文件信息,而不必关

心文件的具体物理地址。而实现文件符号名到文件物理地址映射的主要

环节是检索文件目录。

16.

N2+1

二叉树的特点;NO=N2+1

17.静止【解析】JPEG是关于静止图像压缩编码的国际标准,由国际标

准化组织和国际电报电话咨询委员会联合制定。它适合于连续色调、多

级灰度、单色或彩色静止图像的数字压缩编码。

18.不相交条件不相交条件解析:分布式数据库中的数据分片是通过关

系代数的基本运算实现的,数据分片的主要方法有3种:水平分片、垂

直分片和混合型分片。在定义各种分片时必须遵守3个条件,即完备性

条件、重构条件和不相交条件。

19.16【解析】在DES加密中,明文的处理经过3个阶段。首先,64位

的明文经过初试置换(IP)而被重新排列。然后进行16轮的相同函数的作

用,每轮的作用中有置换和代换。最后一轮迭代的输出有64位,它是

输入明文和密钥的函数。最后,预输出再被与置换(IP)互逆的逆初始置

换(IP-1)作用产生64位的密文。

20.服务攻击网络攻击主要可以分为两类,服务攻击和非服务攻击。服务

攻击是对网络提供某种服务的服务器发起攻击。非服务攻击是攻击者使

用各种方法对网络通信设备发起攻击。

21.D

消息认证是指接收者能够检验收到消息真实性的方法,检验的内容包

括:

①证实消息的源和宿

②消息的内容是否保持其完整性、即未篡改

③消息的序号和时间性

22.C

23.A

24.C解析顺序文件通常只能按记录的顺序存取,对这种文件进行更新,

原则上需对文件做整体拷贝。链接结构的文件可以将文件分散存放于若

干不连续的物理块中,每个物理块中设一指针,指向下一块。索引结构

的文件也可以将文件分散存放于若干不连续的物理块中,系统为每个文

件建立一张索引表。

25.C

对应于外模式的数据库称为用户级数据库。它是用户可以看到并准许

使用的数据库。模式也叫做概念模式,它是全局逻辑级的,是数据库

的整体逻辑结构。内模式对应于数据库的存储结构,是为了提高模式

对存储设备的独立性而设立的。

26.A

27.B解析:用户的逻辑文件要存放到存储介质上时,文件系统要根据存

储设备的类型,用户采用的存取方式决定文件在存储介质上的组织方式。

28.A

29.A

30.D

关系模型由关系数据结构、关系操作集合和关系完整性约束3大要素

组成。关系模型的数据结构单一,在关系模型中,现实世界的实体以

及实体问的各种联系均用关系来表示。关系操作的特点是集合操作方

式,即操作的对象和结果都是集合。关系代数、元组关系演算和域关

系演算均是抽象的查询语言,这些抽象的语言与具体的DBMS中实现

的实际语言并不完全一样,但它们能用作评估实际系统中查询语言能

力的标准或基础。关系模型的一个优点是高度非过程化。

31.\n【审题关键句】字符替代f(p)=p*llmod256,小于等于32或原字符

对应数字。〜9不变,否则替换。

\n【解题思路】

\n本题类似第67套试题,通过审题可以发现主要是排序条件的设置要

求有所不同,参考答案的第6行,修改if条件语句的设置即可。本题值

得一提的是在设置判断条件的时候,一定要注意两题要求中的两个细微

的差别,第67套要求的是新字符所对应的数字是。〜9的不变,是对数

值型数据进行判断;而本套要求的是原字符所对应的字符是。〜9的保持

不变,是对字符型数据进行判断,在条件表达式的写法上需要大家注意

区分。

W【参考答案】

\n

\n

32.\n【审题关键句】千位+十位与个位+百位,比较大小,整除,奇数,

从大到小排序。

\n【解题思路】

\n本题类似第26套试题,通过审题可以发现主要是对四位数的筛选条

件有所不同,即判断新组合的两位数要求第一个为偶数,第二个为奇数,

比较两题的第10条语句,只需将新组合的第二个数的判断条件改为奇

数判断,即“newV2%2”。

W【参考答案】

\n

\n

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

序。

\n【解题思路】

\n本题类似第24套试题,通过审题可以发现主要是对四位数的筛选条

件有所不同,体现在两个方面:①分解后重新组合成两位数的方式不同,

参考答案的第8、9条语句重新指定两位数的组合方式:②新组合的两

位数的偶数的判断及整除判断,参考答案的第10条语句。注意,两个

整除关系表达式要用或运算符(II)连接,且用括号括起来先进行整除运算

(因为或运算级别比与运算级别低,因此要括起来),再与奇偶性判断表

达式进行与()运算。

W【参考答案】

\n

\n

\n

34.\n【审题关键句】读取正数,统计个数,右移后为奇数的个数及平均

值。

\n【解题思路】

W本题类似第44套试题,通过审题可以发现仅有一个不同点,即参与

平均值计算的元素是数组xx[i]右移一位之后为奇数的元素,参考答案的

第9条语句。

W【参考答案】

\n

\n

35.【审题关键句】所有字符左移一个位置,串中的第一个字符移到最后。

\n【解题思路】

W定义循环变量i,字符变量first和字符指针变量P,并使P指向字符

串So

\n②把字符串S的第一个字符赋给first变量保存起来。

\n③在for循环语句中,循环变量i从。开始,依次递增直到其值等于或

大于(int)strlen(s)—1,把*(p+i+l)的值赋给+(p+i),实现把字符串S中的

所有字符左移一个位置,循环结束后,把first的值赋给p[strlen(s).1],

即把字符串的首字符移动到字符串的最后位置上。

W【参考答案】

\n

\n

36.\n【审题关键句】读取正数,统计个数,各位数之和为奇数的数的个

数及平均值。

\n【解题思路】

\n本题类似第46套试题,通过审题可以发现仅有一个不同点,即四位

数的各位数之和为奇数,参考答案的第13条语句,将该该语句为判断

各位数字之和是奇数的表达式即可。

W【参考答案】

\n

\n

37.\n【审题关键句】千位-百位-十位-个位,结果大于等于零且原四位数

是奇数,统计出满足此条件的个数,并按从小到大的顺序存入数组。

\n【解题思路】

W本题类似第9套试题,通过审题可以发现主要有两个不同点:一是要

求统计的四位数的条件是“千位一百位-十位-个位>=0”,二是要求该四位

数是奇数,这两个不同点都体现在参考答案的第8条语句中,对该语句

进行修改即可,其中,可以判断奇数的表达式是“a[i]%2”。

\n【参老答案】

\n

\n

\n

38.\n【审题关键句】数组相同下标位置上的奇数,数组a中十位数等于

新数的千位数字,个位等于新数个位数字,数组b中的十位等于新数的

百位数字,个位数字等于新数的十位数字,存入数组,从小到大排序。

\n【解题思路】

W①定义整型循环变量i、j和局部变量trapo

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

大于MAX,用if条件语句判断如果a[i]和b[j]同时为奇数,由a国的十

位数字为新数的千位数字,个位数字为新数的个位数字,b[i]的十位数字

为新数的百位数字,个位数字为新数的十位数字,把这个新组成的数存

入数组元素c[cn],同时数组下标变量cn加1。

\n③在第一层for循环语句中,循环变量i从。开始,依次递增直到其值

等于或大于ent,在第二层循环中,循环变量{从i+1开始,依次递增直

到其值等于ent,用if条件语句判断如果数组元素c[i]大于cU],则两者

进行互换,实现数组C中的数按从小到大的顺序进行排序。

\n【参考答案】

\n

\n

39.\n【审题关键句】个位+于位与百位+十位,奇数,偶数,整除,从大

到小排序。

\n【解题思路】

\n本题类似第24套试题,通过审题可以发现主要是对四位数的筛选条

件有所不同,体现在两个方面:①分解后重新组合成十位数的方式不同,

参考答案的第8、9条语句重新指定两位数的组合方式;②新组合的两

位数的奇偶性判断及整除判断,参考答案的第10条语句。

W本题第10条语句中各条件表达式之间的关系有些复杂,大致思路是:

①首先判断新组合的两位数的十位不为0,即表达式“gwbw";②再判断

新组合的第一个两位数为偶数,第二个两位数为奇数,且两个两位数中

至少有一个能被17整除的情况,两个整除关系表达式式要用或运算符

(11)连接,且用括号括起来先计算或运算,再与奇偶性判断表达式进行

与运算;③最后,在判断新组合的第一个两位数为奇数,第二个两位数

为偶数,且两个两位数中至少有一个能被17整除的情况(各表达式之间

的连接关系同第2步)。完成以上3部分的表达式设计后,再通过与运

算将3部分表达式连接起来

温馨提示

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

评论

0/150

提交评论