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

下载本文档

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

文档简介

2021年陕西省铜川市全国计算机等级考试

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

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

一、1.选择题(10题)

1.下列关于码的叙述中,正确的是

A.在一个关系中,不可能存在两个不同的元组在码属性上取值相同

B.属性是一个元组区别于其他元组的依据

C.在一个关系中,可能存在码或码的一部分为空值的元组

D.码不是一个元组赖以存在的条件

2.如果有多个中断同时发生,系统将根据中断优先级响应优先级最高的

中断请求。若要调整中断事件的响应次序,可以利用下列哪一项?

A.中断嵌套B.中断响应C.中断向量D.中断屏蔽

3.下面有关客户机/服务器模式的说法不正确的是

A.客户和服务器之间是一对多的关系,Client/Server软件应向客户提供

服务器位置透明性服务。

B.客户机/服务器数据库系统又可分为集中式的服务器结构和分布式的

服务器结构

C.这种结构中系统数据的安全性能增强

D.客户和服务器之间所交换的数据信息包括:SQL语句、查询结果集合

以及错误消息

4.下列关于进程间通信的叙述中,不正确的是()。

A.进程互斥是指每次只允许一个进程使用临界资源

B.进程控制是通过原语实现的

C.P、V操作是一种进程同步机制

D.管道不是一种进程高级通信机制

5.如果有多个中断同时发生,系统将根据中断优先级响应优先级最高的

中断请求。若要调整中断事件的响应次序,可以利用

A.中断向量B.中断嵌套C.中断响应D.中断屏蔽

6.在关系代数中,自然连接的运算符号为o

A.nB.xC.oD.oo

7.在下列解决死锁的方法中,属于死锁预防策略的是

A.资源有序分配法B.资源分配图化简法C.死锁检测算法D.银行家算

8.下列叙述正确的是

A.运行状态是指进程已获得CPU,并且在CPU上执行的状态

B.等待状态是指一个进程已经具备运行条件,但没有获得CPU不能运

行所处的状态

C.就绪状态也称作阻塞状态是指进程因某种原因暂时不能运行的状态

D.处于等待状态的进程一旦获得CPU,该进程就可以运行

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

A.SybaseB.IngressC.IMSD.ObjectStore

10.在所有的关系数据库上的操作是核心,是其他操作的前提。

A.插AB.删除C.修改D.查询

二、填空题(10题)

1L在口数据报分片后,通常用负责数据报的重组。

12.Blowfish算法由两部分组成:密钥扩展和。

13.设根结点的层次为0,则高度为k的完全二叉树的最小结点数为

14.电子邮件程序向邮件服务器发送邮件时,使用的协议是

15.关系的数据操纵语言按照表达式查询方式可分为两大类_口_和[]

16.在数据库设计的各阶段中,每个阶段都有自己的设计内容,“为哪些

表,在哪些属性上建立什么样的索弓『这一设计内容应该属于[】阶段。

17.数据管理经过了人工管理、文件系统和【】3个发展阶段。

18.一个路由器的两个IP地址为和,其路由表如下所示。

当收到源IP地址为40.0.0.8,目的IP地址为的数据报时,它将

把此数据报投递到(要求写出具体的IP地址)

-------------------------------

要到达的网络,下一路由器

20.0.0.0直接投递

30.0.0.0ft接投递

20.0.0.5

40.0.0.030.0.0.7

19.从被管理设备中收集数据有两种方法:轮询法和基于中断法,将两者

结合起来的(Trap—directedPolling)是执行网络管理最有效

的方法。

20.在实际应用中,分组交换技术可以分为两类:数据报与

三、单选题(10题)

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

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

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

()。

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

23.在数据库设计的()阶段,产生DBMS可以接受的源代码。

A.概念设计B.逻辑设计C.物理设计D.实现

24.在对全局E-R模型进行优化时,通常利用规范化理论中的()概念消

除冗余关系。

A.无损联接B.函数依赖C.范式D.逻辑蕴涵

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

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

模式

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

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

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

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

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

27.已经获得除CPU以外的所有所需资源的进程处于()状态。

A.运行状态B.就绪状态C.自由状态D.阻塞状态

28.影响优化器的主要因素有:

A.由于现有索引不足,导致排序索引中不包括一个或几个待排序的列。

B.Groupby和orderby子句中列的次序与索弓1次序一致。排列的列来自

不同的表。

C.建立的索引文件太多。

D.事务处理太多

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

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

A.lB.2C.3D.4

30.下列不是TCP/IP参考模型中的应用层协议()。

A.A.电子邮件协议SMTPB.网络文件系统NFSC.简单网络管理协议

SNMPD.文件传输协议FTP

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

31.设有n个人围坐一圈并按顺时针方向从1到n编号,从第s个人开

始进行1到m的报数,报数到第m个人,此人出圈,再从他的下一个

人重新开始1到m的报数,如此进行下去直到所有的人都出圈为止。现

要求按出圈次序,每10人一组,给出这n个人的顺序表。请考生编写

函数Josegh(void)实现此功能,并调用函数writeDat,把结果P输出到文

件out.dat中0

设n=100,s=l,m=10o

①将1到n个人的序号存入一维数组P中;

②若第i个人报数后出圈,则将p1]置于数组的倒数第i个位置上,而原

来第i+1个至倒数第i个元素依次向前移动一个位置;

③重复第②步直至圈中只剩下p[l]为止。

注意:部分源程序已经给出。

请勿改动主函数main和输出数据函数writeDAT的内容。

1!Iinclude<stdio.h>

2-IdefineN100

3j*defineS1

4;*defineM10

5!intp[100]9nrs.m;

6ivoidWriteDat(void);

7!voidJosegh(void)

6;J

9;

10j)

11;voidmain()

12J(

13;m«M;

14!n-N;

ISismS;

161Josegh();

17iWriteDat();

18-}

!/•把姑塞p•出到文件ouuto中•/

19;voidWriteDat(void)

211int1;

22jFILE*fp;

23>fp•fopen("out.dat*,Rw");

;八以史修的方式,以1。个触媒为一闾把IHfip【川■出到屏幕相文件outdai中•/

24»for;i>«0;i-T

25;(

26!printf("%4d",p(i});

27;fprintf(fp,"Md”,p(i]);

if(i%10-0)〃如果i・被10■除.剜■出一个回车换行符

29•(

30;printf("\nM);

31!fprintf(fp>"\n");

32;}

33!

)

34\

fclose(fp);

35}

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的内容。

2}tinclude<string.h>

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.函数ReadDat实现从又件in.dat中读取一篇英又文章存入到字符串

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

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

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

出到文件out.dat中。

例:原文:dAe,BfC.

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

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

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

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

的内容。

1jlinclude<stdio»h>

2itinclude<string.h>

3;charxx[50)(80];

4junsignedintmaxline■0;/•文章的总行数•/

5;intReadDat(void);

6!voidWriteDat(void);

7jvoidSortCharD(void)

B;(

10f>

11;voidmain()

12!(

13•if(ReadDat())

14;(

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

16।return;

17;1

18!SortCharD();

19;WriteDat();

20;)

»/•从文件m.<bt中族取一篇英文文拿存入a字符串敷01xx中•/

21;intReadDat(void)

22•(

23•FILE♦£>

24;inti•0;

25!char*p;

26jif((fpmfopenC^in.dat","r">)•"NULL)

27;return1;〃加泉文件in,d小内容为匕则返回1

!,•当从文件ln.dat中读取79个字符存入xxlil设育1•设发生时.执行微环体中的语句〃

28;while(fgets(xx[i]#80efp)!■NULL)

29;1

30•p-strchr(xx(i),tXn');〃在字符率xx[£)中秀找回车换打符事一个西配的位置

31;if(p)*p-0;〃如果p的值不为零.划元其值设置为0

32;i++;〃行爻量加】

33:}

34।maxline•1;//IE文章的总行敬M蛤攵■naxllne

35[(close(fp);

36|return0;

37;|

i/・1E怙果XX・出刎文科ouLdat中•/

38;voidWriteDat(void)

39;(

40!FILE*fp;

41junsignedinti;

Mw

42;fp•fop^n(out•dat*'t**w);

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

44i(

H

45;printf(*%s\nrxx[1]);

46!fprintf(fp,7s\n3xxfi]);

47i}

48•fclose(fp);

49!}

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

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

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

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

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

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

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

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

程序中已定义数组sa[200].b(200],已定义变量Ient

请勿改动数据文件!ndtt中的任何数据、主函数main().读函数nadM)和写的微writeDatO的内容.

1»Imcludo<5tdio.h>

2;IdefineMAX200

3inta[MAX],b[MAXJ.

4voidwriteDat();

5voidjsVal()

6

7

8

9voidreadDat()

10

13।fp»fopen("in.dat**.

14;ford-0;i<MAX;1++

15!fscanf(fp,**%d**r[i

16।fclose(fp);

17

18voidmain()

19

20

21readDat();

22jsVal();

23prin"「满足条件的数7d\M,cn

24for(1-0;i<ent;

M

25print—”,drbit]);

26printf(w\nw);

27writeDat();

26

29voidwriteDat()

30(

31FILE#fp;

32inti;

33fp-fopen("out.daf*,;

nn

34fprintf(fp#%d\nrcnt);

35for(1-0;i<ent;ix)

36fprintf(fpr7d\nR,bl:]);

37fclose(fp);

38

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

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

上的数加百位数上的数等于十位数上的数加个位数上的数的个数ent,

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

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

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

制如,7153.7+1-5+3.划读数满足条件存入数纲b中.且个敷cnvott+l.

8129,8+11=2+9,则该数不满足条件忽略.

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

程序中已定义故组;af300].b[300].巳定义变Kbent

请勿改动数据文竹in.dat中的任何数据.I函数main。.该函数rcadDat。和力的收wnteDatO的内容.

1jtinclude<stdio.h>

2!inta[300]b[300)cnt-0;

itt

3;voidreadDat();

4-voidwriteDat();

5»jsValue()

6;(

7t1

Qm*•*a

9।main()

10;(

11iint1;

12;readDat();

13•jsValue();

14t,writeDat();

tw

15'printf(•cnt=%d\n/ent);

16•for(i,■0;i<ent;

17;printf(Rb[ld]«td\nM,i,b(i));

18t*)

19;voidreadDat()

20;«

21!FILEwfp;

22int1;

23fp-fopen("in.daL,"r");

24for(i-0;i<300;"♦)

25fscanfffp,Fd.".&a(i]);

26fclose(fp);

27

28voidwriteDatO

29

30FILE*fp;

31inti;

32fp-fopen("out.dat"w");

33fprintf(fp,0%d\nw/ent);

34for(i-0;i<ent;[♦♦)

35fprintf(fp,*%d\n"/b(i));

36fclose(fp);

37

36.编写一^函数findStr(char*str,char*substr),该函数统计一^长度为

2的子字符串substr在另一个字符串str中出现的次数,该次数作为函数

值返回。例如,假定输入的字符串为"asdasasdfgasdaszx67asdmklo”,

子字符串为“as",函数返回值是6。

函数ReadWrite实现从文件indat中读取两个字符串,并调用函数findStr,

最后把结果输出到文件out.dat中。

注意:部分源程序存在test.c文件中。请勿改动主函数main和其他函

数中的任何内容,仅在函数findStr的花括号中

填入你编写的若干语句。

^include<stdio.h>

*include<string.h>

voidReadWrlte();

a

intfindStr(char3trtchar•substr)

main0

charstr(81|,substr(3];

intn;

printf("输入原字符申:w);

gets(str);

pdntf("■入子字符串:”);

gets(substr);

puts(str>;

puts(aubstr);

nwfindStr(str,substr);

"n

printf(*n"%d\n,n);

ReadWrite();

I

,•从文件in.dii中It取两个字符中,蚌■用炳欣findSoO,■后1E郎果博出到文件即如中,/

22voidReadWrite()

24charstr[81)rsubstr(3],ch;

25intn,lenri00;

e

26FILEerfrwf;

27rf=fopen(*£n.dat**,wrH);

wwHM

28wf-fopen(out.datrw>;

29while(i<5)

30|

31fgets(str,80,rf);〃从文件mdai中域取长度为R的字符中存入到字符中

32(gets(subset<10,rf);〃从文件mdit中读取长度为Q的子字符中存入到字符率substr

33len■strlen(substr)•1;〃mf字符南gubstr的长度K1的

ch-substr(lenI;〃把子字符州的量后T字箝的但"字符ch

人如臬子字符申的量后个字椅是同架按行符或是文钟帖贩料,明纪子字符串的♦后f字符的值设置X。•/

35if(ch«•'\n'11ch~Oxla)

36substr[len]・0;

flndStr(4tr«■ubstr)返Z1子字符串subst.r在字符率Atr中出现的次数*/

37n-findStr(str,substr);

38fprintf(wf/Fd\n".n);//IC计H纳暨n写入到文件out.dau中

39〃谓环堂量士加】

40I

41fclose(rf);

42fclose(wf);

43

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

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

中的所有字符进行替代,仍存入数组XX对应的位置上,最后调用函数

WriteDat把结果xX输出到文件out.dat中。

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

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

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

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

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

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

进行处理。

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

finclude<stdio.h>

Iinclude<string.h>

3•finclude<ctype.h>

4unsignedcharxx[50][80];

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

6;intReadDat(void);

7•voidWriteDat(void);

8;voidencryptCharO

9J(

10;

unsignedintval;

11;

12;

13;voidmam()

14;(

15!if(ReadDatO)

16i(

:;iprintf("数据文件m.dat不能打开!\n\007");

return;

19;

20jencryptChar();

21;WriteDat();

22jI

/•从文件tiLdm中谕取一篇英文文IL存人勃字符中数批1*中•/

23;intReadDat(void)

24!I

25JFILE*fp;

26\inti-0;

27!unsignedchar*p;

28\

if((fp-fopenLin.daL,)-NULL)

29-return1;

1

30•while(fgets(xx(i)#80,fp)«NULL)

31((

32j

p-strchr(xx[ih*\n*);

33iif(p),P-0;

34\if

35:

36;maxiine«i;

37;fclose(fp);

38!return0;

39;»

/•£结果MX■出到文件outdai中•/

40-voidWriteDat(void)

41

42FILE*fp;

43inti;

44fp-fopen(•,out.dat**,、");

45for(i»0;i<maxline;1♦♦)

46(

H

47printf("ls\nrxx[i]);

48fprintf(fp,Fs\n”,xx[ij);

49)

50fclose(fp);

51

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

14include<stdio.h>

2Iinclude<»trlng.h>

3•IncludeOtdlib.h>

4fdefineMAX100

5typed©fstruct

6(

7chardm⑸;/•产4代码•/

8charnc(lll:/•MW•/

9intdj;/•・饼•/

10intsi;/•■■•/

11longje;/••・•/

12)PRO;

13PRO8011【MAX);

14voidReadDat();

15voidWritet>at();

16voidSortDat()

17

16

19

20voidmain()

21<

22momoot(selli0.stzeof:

23ReadDat();

24SortDat();

25WriteDatO;

26)

21voidReadDat()

28I

29FILEefp;

30charatr(80),ch(ll);

31Int1;

32fp-fopen("in.ckit","rw);

33for(i•0;1<100;

34(

35fgetBtstXr80,fp);

36memcpy(sell(l).dm,str,4);

37memcpy(sellfil.me,str♦4,10);

38menepy(ch«stx*14r4):ch(4J-0:

39sell(i).dj-atoi(ch>;

40memcpy(chrstr*18v5);ch(5]-0;

41sell(i).al-atoi(ch);

42sell(i).je-(long)sellU).dj•selldl.al;

43)

44fclose(fp);

45}

46voidWrlteOat()

47<

48FILEefp;

49inti;

50fp-fopen("out.**w*);

51tor(1•0;1<100;*+♦)

52

w

fprintf(fp,3%4d%5dt101d\n,seUUbdh,sellll).mc«aellUJ.djr.

sttllll)»je);

54;

55!fclose(fp);

56h

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

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

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

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

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

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

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

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

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

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

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

注意।部分图程序存在te«x文件中.

程序中已定义数fth4200].b{200],已定义变量tent

请勿改动数据文件itL&M中的任何数据・主函数main().读函数neadIXtO和写函数writeDatQ的内容.

1•Iinclude<stdio.h>

2\tdefineMAX200〃定义宏支量MAX.其值的于zoo

3\inta【MAX),b(MAXJ,ent-0;〃定义全局整VTt敷烟alMAX].bIMAX)和支・ent.苒匐值等于0

4IvoidwriteDat();

5;voidjsVal()

6ii

1।

8j1

9!voidreadDatO〃从2n.st文件中it取zoo个四位flt存入数ifl■中

10i{

111inti;

12!FILEefp;

13;fp-foponwr*);

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

ISifscanf(fp,(a[1]);

16•fclose(fp);

1711

j

18ivoidmain。

19i(

20int1;

21readDat();

22jsvaio;〃•用”vno的总实现融目要求的动俺

23printf「满足条件的n".ent);

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

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

26printf;

27writeDat();

28j)

29voidwriteDatO〃化itir姑累cm以及数饵b中符合条件的四位数■出到OULdM文件中

30

31FILE#fp;

32int1;

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

34fprintf(fp,fd\n",ent);

35for(i•0;1<ent;

36fprintf(fpr-%d\n"rb(il);

37fclose(fp);

38

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

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

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

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

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

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

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

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

程序中已定义效蜗:a[200J.b(200],已定义变■,ent

请勿改动数图文件而.市«中的任何畋据、主函ISmainO、懊南1tMiDa")和写序数*tcDat。的内容.

1•linclude<stdio.h>

2\IdefineMAX200

3;intalMAXhb[MAX)rent-0;

4jvoidwriteDat();

5;voidjsVal()

9!voidreadDat()

10;|

11;int1;

12jFILE*fp;

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

141for(1»0;1<MAX;ii

15jfscant(fp,"Qd**.&a[i

16•fclose(fp);

17!)

18♦voidmain()

19■I

21;readDat();

prlntf("满足条件的数・2\口*\ent);

for(1•0;1<ent;ii)

printf(0%d”,b[l]>;

prlntfC;

voidwriteDat<)

int1;

fp■fopen(*out.dat*,**w*);

fprlntf(fp*"%d\n"rent);

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

fprintf(fpr*%d\n*rb(i));

fclose(fp)f

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

41.已知某教务管理系统的设计人员在需求分析阶段收集到下列原始数

据表格:

教师

上级领导教师

教师号教师名职称工资

9868王文华教授8000null

9983李一斌副教授60009868

9985丁一讲师删9868

0783王润泽讲师删9868

0899欧阳丹妮讲师删9868

课程

课程号课程名学分教材号教材名出版社名任课教师号

计算机原清华大学出

C2006311计算机原理9868

理版社

计算机原计算机原理与高等教育出

C20063129868

理应用版社

清华大学出

C2004数据结构313数据结构9868

版社

数据库原清华大学出

C2010314数据库原理9868

理版社

数据库原数据库原理与高等教育出

C20103159868

理技术版社

清华大学出

S3001音乐欣赏216音乐欣赏9983

版社

已知该业务系统存在如下规则:

I.每个教师有唯一的教师号,每个教师号对应唯一的一名教师;

II.每门课程有唯一的课程号,每个课程号对应唯一的一门课程;

III.每本教材有唯一的教材号,每个教材号对应唯一的一本教材;

IV.每个教师最多只有一个上级领导,也可以没有上级领导;

V.一门课程仅由一名教师讲授;

VI.一本教材仅用于一门课程。(12分)

(1)请根据原始数据表及业务规则,给出该系统的关系模式,保证每个

关系模式满足3NF,并说明每个关系模式的主码和外码。

⑵画出该系统的ER图,ER图中需给出每个实体集的属性,主码属性

用下划线标识。

42.设有某商业单位需要建立商务数据库用以处理销售记账,它记录的数

据包括:顾客姓名,所在单位及电话号码;商品名称,型号,产地及单

价;某顾客购买某商品的数量及日期。假定无同名顾客,无同型号商品,

由话公用腼客可存不同日期买同一商品。(1)请画出该单位的商务ER

图模型并优化。(6分)(2)将ER模型换成关系模型并规范化到3NF。

(4分)

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

43.在SQLServer2008中,设在某数据库中建有如下所示的存储过程:

CREATEPROCPl@aint=20,@bchar(4)AS设有下列调用该存储

过程的语句:I.EXECP1100,'a01'II.EXECP1'aOlzIII.EXEC

Pl®b='a0/W.EXECPl@a=default,@b='aOl’上述语句中,能够

正确调用该存储过程的是()。

A.仅I和IIB.仅I、II和nic.仅I、m和ivD.全部

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

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

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

参考答案

1.A解析:码是一个元组区别于其他元组的依据,同时也是一个元组赖

以存在的条件。在一个关系中,不可能存在两个不同的元组在码属性上

取值相同,也不可能存在码或码的一部分为空值的元组。注意:在一个

关系中,不可能存在两个不同的元组在码属性上取值相同,故A)选项正

确;属性不是一个元组区别于其它元组的依据,故B)选项不正确;在一

个关系中,不可能存在码或码的一部分为空值的元组,故C)选项不正确;

码是一个元组赖以存在的条件,故D)选项不正确。掌握主属性,外码概

念的理解。

2.D解析:中断屏蔽是指在提出中断请求之后,CPU不予响应的状态。

它常常用来在处理某一中断时防止同级中断的干扰或在处理一段不可

分割、必须连续执行的程序时防止任何中断事件的干扰。本题正确答案

为选项D。

3.A客户机/服务器系统Client/serversystem简称C/S系统。是一类按新

的应用模式运行的分布式计算机系统。在这个应用模式中,用户只关心

完整地解决自己的应用问题,而不关心这些应用问题由系统中哪台或哪

几台计算机来完成。在C/S系统中,能为应用提供服务(如文件服务,

打印服务,拷贝服务,图象服务,通信管理服务等)的计算机或处理器,

当其被请求服务时就成为服务器。一台计算机可能提供多种服务,一个

服务也可能要由多台计算机组合完成。与服务器相对,提出服务请求的

计算机或处理器在当时就是客户机。从客户应用角度看,这个应用的一

部分工作在客户机上完成,其他部分的工作则在(一个或多个)服务器

上完成。答案A应该是多对多的关系。

4.D

5.D解析:如果有多个中断同时发生,要调整中断事件的响应次序,可

以利用中断屏蔽的方式。

6.D解析:在关系代数中,s表示连接;x表示广义笛卡尔积;II表示投

影;o表示选择。

7.A解析本题考查死锁的预防策略。预防死锁可以采取三种预防措施:

采用资源的静态预分配策略;允许进程剥夺使用其他进程占有的资源;

采用资源有序分配法。四个选项中只有A是死锁预防策略,因此本题的

答案为A。

8.A解析:就绪状态是指一个进程已经具备运行条件,但没有获得CPU

不能运行所处的状态。处于就绪状态的进程一旦获得CPU,该进程就可

以运行。等待状态也称作阻塞状态是指进程因某种原因暂时不能运行的

状态。

9.C解析:第一代数据库系统指层次模型数据库系统。层次模型数据库

的代表是IBM公司于1969年研制出的信息管理系统(IMS),IMS是最

早和使用最广的几个数据库之一。

10.D解析:关系数据库上的操作包括:查询、统计和汇总、插入、删除、

修改等,其中查询是核心,所以关系DML语言,又称为查询语言。

H.目的主机【解析】在接收到所有分片的基础上,主机对分片进行重

新组装的过程称为IP数据报重组。IP协议规定,只有最终的目的主机

才可以对分片进行重组。

12.数据加密【解析】Blowfish算法由两部分组成:密钥扩展和数据加

mo

13.2k2k解析:如果一棵二叉树最多只有最下面的两层结点,度数可以

小于2,且最下面一层的结点都集中在该层最左边的若干位置,称此二

叉树为完全二叉树。可知,若要二叉树结点最少,则最后一层上只有1

个结点,其余层是满二叉树,所以,最少有2k个结点。

14.简单邮件传输协议或SMTP简单邮件传输协议或SMTP解析:在电

子邮件程序向邮件服务器发送邮件时,使用的是简单邮件传输协议

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

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

议类型。

15.关系代数关系演算关系的数据操纵语言按照表达式查询方式可分为

关系代数和关系演算

16.数据库物理设计数据库物理设计解析:数据库的物理设计是对已确

定的逻辑数据库结构,利用DBMS所提供的方法、技术,以较优的存储

结构,数据存储路径,合理的数据存放位置以及存储分配,设计出一个

高效的,可实现的物理数据库结构。

17.数据库系统数据库系统解析:数据管理技术的发展,与硬件、软件

和计算机应用的范围有密切关系。数据管理技术的发展经过了3个阶段:

人工管理阶段、文件系统阶段和数据库阶段。

18.20001【解析】一个路由表通常包含许多(N,R)对序偶,其中N指目

的网络的1P地址,R是网络N路径上的“下一个”路由器的IP地址。本

题中,目的IP地址为,属于A类网络地址,其网络地址为,

因此路由器收到该IP数据包按照路由表的第一个(N,R)对序偶下一路

由选择为“直接投递”,即直接投递给接收主机,因此投递的IP地址为:

20.0.0.lo

19.陷入制轮询法【解析】从被管理设备中收集数据有两种方法:一种

是轮询方法,另一种是基于中断的方法。将以上两种方法结合的陷入制

导轮询方法可能是执行网络管理最有效的方法。

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

报与虚电路。

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

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

22.A

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

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

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

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

23.D

24.B

25.A

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

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

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

27.B

28.A

29.C

温馨提示

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

评论

0/150

提交评论