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

下载本文档

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

文档简介

(2023年)山东省莱芜市全国计算机等级

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

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

一、1.选择题(10题)

i.在关系数据库基本操作中,从表中选择满足某种条件的记录的操作称

为O

A.选择B.投影C.连接D.扫描

2.下列哪一个是输入设备?

A.绘图仪B.打印机C.光笔D.数/模转换器

3.在下面列出的数据模型中,哪一个模型是概念数据模型?

A.关系模型B.层次模型C.网状模型D.实体-联系模型

4.如果两个实体之间的联系是1M,则实现1M联系的方法是____。

A.将两个实体转换成一个关系

B.将两个实体转换的关系中,分别加入另一个关系的主码

C.将“1”端实体转换的关系的主码,放入“M”端实体转换的关系中

D.将“M”端实体转换的关系的主码,放入“1”端实体转换的关系中

5.某作业到达系统时间为12:00,估计运行时间为2小时,若14:00

该作业获得处理机开始执行,则其响应比是()。

A.lB.2C.3D.4

6.在关系数据库设计理论中,如果一个关系R满足1NF,但R的某个

非码属性传递函数依赖于码,则关系R至多属于

A.1NFB.2NFC.3NFD.BCNF

7.实现数据库的特性能够避免对未提交更新的依赖(“脏数据”

的读出)。

A.完整性B.并发性C.安全性D.可移植性

8.在中断处理中,输入输出中断是指

A.设备出错B.数据传输结束C.设备出错和数据传输结束D.都不是

9.下列进程状态的转换中,哪一个是不正确的?

A.就绪T运行B.运行T就绪C.就绪T等待D.等待T就绪

10.数据库管理系统(DBMS)是()。

A.一个功能齐全的数据库应用系统B.操作系统的扩充C一组软件的

集合,属于系统软件D.硬件与软件的集合

二、填空题(10题)

11.广义表是线性表的推广,是由零个或多个单元素或所组成的

有限序列。

12.在关系模式R<U,F>中,如果X-Y且存在X的一个真子集X',

有X,一Y,则称Y对X的依赖为_____函数依赖。

13.在关系模型中,若属性A是关系R的主码,则在R的任何元组中,

属性A的取值都不允许为空,这种约束称为规则。

14.用二维表的形式来表示实体之间联系的数据模型叫做o

15.设有两个散列函数Hl(k)=kmodl3和H2(k)=kmod111,散

列表T[0…12],用双重散列解决冲突。函数H1用来计算散列地址,当

发生冲突时,H2作为计算下一个探测地址的增量,假定在某一时刻表

T的状态为:

012345678910II12

\\\\1111111\

T:|||67|72|||||34|||||

I_______I_I_____I____L__1___I____I___L__L_____I____I_L__I

下一个被插入的关键码是41,其插入的位置是o

16.传输层的主要任务是向用户提供可靠的服务,透明地传

送报文。

17.先写日志原则是为了发生故障后保持数据库的原子性和所必

须遵循的原则。

18.一个功能完备的网络系统应该提供一些基本的安全服务功能,这些

功能包括保密性数据完整性、防抵赖和访问控制。

19.层次数据库模型的结构是一棵_口_,树的结点是记录类型。

20.设有关系R(A,B,C)和S(A,D,E,F),若将关系代数表达式:

「♦一”、…旧小用SQL语言的查询语句表示,则有:SELECTR.A,B,D,

FFROMR,SWHERE。

三、单选题(10题)

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

A.DBCCSHRINKDATABASE

B.DBCCSHRINKFILE

C.ALTERDATABASE

D.CREATESCHEMA

22.在登录日志文件时,应该

A.将更新数据库与登录文件两个操作同时完成

B.将更新数据库与登录文件两个操作按随机的顺序完成

C.先写数据库的更新,后登录日志文件

D.先登录日志文件,后写数据库的更新

23.在计算机硬件系统的基本组成中,完成解释指令、执行指令的功能

部件是

A.运算器B.控制器C.存储器D.输入输出设备

24.数据库是在计算机系统中按照一定的数据模型组织、存储和应用的()

A.文件的集合B.数据的集合C.命令的集合D.程序的集合

25.E-R图是数据库设计的工具之一,它适用于建立数据的()

A.中继器B.桥接器C.路由器D.网关

26.下列存储管理方案中,()允许动态扩充内存容量。

A.固定分区B.可变分区C.页式D.虚拟页式

27.采用SPOOLing技术的主要目的是()。

A.提供内存和磁盘的接口B.减轻用户编程负担C.提高CPU和设备交

换信息的速度D.提高独占设备的利用率

28.设计与试运行之后投入运行,开始维护工作,过程中监控、评价、调

整与修改以保证数据库系统正常和高效地运行。以下关于数据库运行维

护工作说法不正确的是()

A.数据库转储与恢复

B.数据库安全性、完整性控制

C.检测并改善数据库性能

D.数据库的重组修改数据库原有设计的逻辑结构和物理结构

29.链栈与顺序栈相比,有一个比较明显的优点是()

A.插入操作更加方便B.通常不会出现栈满的情况C.不会出现栈空的

情况D.删除操作更加方便

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

进行处理。

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

••include

;tinclude

3finclude<ctype.h>

Aunsignedcharxx(50](80);

5intmaxline■0;/•文第的总行数•/

6intReadDat(void);

7voidWritoDat(void);

8voidencryptChar()

9

10

11

请勿改动主函敷mainO、读函数ReadDaH)和泊出的数WritelM)的内容,

IInclude<stdlo.h>

•include<string.h>

3•include<ctype.h>

4unsignedcharxx(50)(801;

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

6intReadDat(void);

7voidWriteDat(void);

8voidencryptChar()

9

10

12voidmainO

13

14if(ReadDat())

15

16print,(“数据文件in.dat不能打开!\n\007”);

17return;

18

19encryptChar();

20WriteDat();

21

八从文件m.4bt中请取一■英文文章,存入到字料*收机XX中•/

22intReadDat(void)

23

24;FILE«fp;

25jinti-0;

26;unsignedchar*p;

27!www

if((fp-fopen(in.datrr*))-NULL)

281return1;

29;while(fgets(xx(i]r80,fp)!,NULL)

30

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

32if(p)*p-0;

33

34J

35maxline«1;

36fclose(fp);

37return0;

38)

八把她JRu-出现文件ouLdM中•/

voidWrileDat(void)

40(

.jFILE*fp;

42;int1;

43jfp■fopen(wout.dat",Hww);

44;for(i*0;i<maxline;,ix)

45:(

46iprintfxx[i]);

47j

fprintf(fp,"%s\nw,xx(i]);

48!)

49;fclose(fp);

voidmain()

13

14if(ReadDat())

15(

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

17return;

18)

19encryptChar();

20WriteDat();

21)

/•从文件adM中it取一・英文文我.存入弘学料冷敷超xx中•/

22intReadDat(void)

23[

24FILE・£p;

25int1-0;

26unsignedchar*p;

Mww

27if((fp-fopen(in.dat*rr))-NULL)

28return1;

29while(fgets(xx[i]#80rfp)!-NULL)

30(

31p■strchr(xx(l)9•\n*);

32if(p)*p«0;

33i+储

34)

35maxline*1;

36fclose(fp);

37return0;

38I

/•杷州-出N文件outdat中•/

39voidWriteDat(void)

40(

41FILE*fp;

42inti;

43fp-fopen(*out.dat**,wwM);

44for(i•0;i<maxline;£♦♦)

45(

Mw

46printf(%s\ntxx[i]);

47fprintf(fpr*%s\n*rxx[1]);

48)

49fclose(fp);

50

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

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

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

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

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

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

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

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

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

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

到Out.dat文件中。

注意,部分源程序存在ICM.C文件中.

程序中巳定义数级:a(200].b(200],巳定义变■:ent

请勿改动数据文付m.dat中的任何数据、主函数读函数rcadDatO和。滴效writeDatO的内容.

i

1;•include<«tdio.h>

2i♦defineMAX200

3!inta(MAX)#b[MAXJ,ent-0;

4;voidjsValO

8?voidreadDatO〃从in.dat:文件中读原20。个四位故存入故州久中

9i(

10-int1;

11iFILE,fp;

Rw

12;fp-fopen(*ln.datrr");

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

w

14jfscanf(fpr"%dr6a(1));

15;fclose(fp);

161i

17;writeDatO〃把计算站果cm以及敏机b中行令条杵的网口数♦出到guto文件中

18[(

19iFILE•fo;

20int1;

21fp■fopen(wout.dat**,Ww*);

w

22fprintf(fp,*%d\nrent);

23for(i-0;i<ent;

w

24fprintf(fp#td\n*,b[l]);

25fclose(fp);

26

27voidmain()

28

29Int1;

30ceadDat();

31jsVal();〃调用油热仆实现0Hls求的功施

32priruf("满足条件的数mRd\n”,nt);

33for(1-0;i<ent;11♦♦)

34printf(••Id”,bli));

35printf(*'\nw);

36writeDat();

37

33.程序test.c的功能是:将大于整数m且紧靠m的k个素数存入数组

XXo请考生编写函数num(intm,intk,intxx[])实现程序的要求,最后调

用函数readwriteDATO把结果输出到Out.dat文件中。

例如,若输入17,5,则应输出:19,23,29,31,37。

注意:苒分源程序存在te$LC文件中.

清”改动数据文件n&it中的任何数据以及1函数main()和输出函数readwriteDATO的内容.

1•Iinclude<stdio.h>〃mcludc调句说明鲁程序中包公中的标准■人■出哗前数sugh

2!voidreadwriteDATO;,/南效reidunxeDATOift明语句

3intisP(intm)〃熊故曰川新面是否为素敬,如累是K数则返回1,否则说向0

4|

5Int1;〃定义交量&

6for(i-2;i<m;1♦♦)〃殳■1从2依次&堀到施

7if(m%1-0)return0;〃如果m俭被i♦除.返回o

8return1;〃否财城回1

9)

10voidnum(intm,intk,intxx(])

11

12

13

14roain()

15(

16intm,n,xxflOOO);〃定义丈量m,r)和畋趾

17printf(w\nPleaseentertwointegers:w);

H

18scanfCtdr%dr&n);//从读入两个我M纷受侵m,n

19num(m,n,xx);〃调用嫉数nurEintE,tmk.mtu[D筌鹿将大于Utm且索森m的k个虐效存入数创xx

20for(m-0;m<n;mi)〃变量d从0依次逢增»nT

21prmtf("Id..xx(m]);〃•曲象蛆兀虞

22prlntf("\nw);〃■出一个包车换行将

23readwriteDAT<H//m用的畋ZwnsDATor错累■出刊由修文仲中

24)

25voidreadwriteDATO〃咱数rgdwrtteMTC的定义讲句

26<

27inte,n.xx(1000)/i;〃定义整型变■Q.C,*卬敏娴xx[100。]

28FILETfr*wf;〃定义文件指杆套wf

29rf-fopen(win.daf,HrM);〃以只接的方式的〃开文件上n.daj并用r指向这个文件

HHM

30wf-fopenCout.datrw);〃以只写的方式的打开文件。叱,daj并用wf指向这个文件

31for(i•0;i<10;〃修百变量1从0依次展用到9

32(

w

33fscanf(rft%dacT,Gm,&n);〃从文件in.&tM入两个数{ft*给m.n

34DUffi(mrn.xx);〃调用,收洪Ctnum(tn・k・u[]■现将大十整数mtn的k个腐敏存入敏tflxx

35for(m-0;ra<n;rn*+)〃俯环土■■从。依次遢增川n-l

36fprintf(wfrfd-,xx[m]);〃把数他元Itxx[m]耳入到文科out.dat中

H

37fprintf(wfr*\n);〃妃因*挨打籽写人到文件ouc.dat中

38}

39fclose(rf);〃关闭•入文件in.dat

40fclose(wf);〃关闭■出文件out.ch匕

41

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

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

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

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

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

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

例如:位置01234567

源字符串hgfedcba

则处理后字符串hafcdcbR

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

请勿改动数据文件in.dat中的任何数据、主的敷mainO.I(的数re&dDat()和耳函效writuDat。的内容.

1!।Iinclude<stdio.h>

2I•include<string.h>

3•voidreadDat();

4!voidwriteDat();

5;charxx(20)(801:

6!voidjsSort()

7!(

eJ

9!}

101voidmain()

12!readDat();

13;jsSort();

14jwriteDat();

15i)

;。从文件1中读取20行数据存放到字符串长电XX中”

16!voidreadDat()

17;(

18■FILE-in;

19jint1-0;

20;char*p;

21;in•/open("in.ddL.,,r");

22jwhile(1<20“fgets(xx[1]t80.in)NULL)

23;(

241p-strchr(xx[i]9•\n*);

25;if(p)*p■0;

26•

27j}

28;fciose(in);

29!)

/♦把姑果XXa出到OUt&!文件中•/

30;voidwriteDat()

32.FILE*out;

33;int1;

wwR

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

35;for(1-0;i<20;I**)

36?(

37•printf(w%s\nH,xx(i]);

38;fprintf(out,"%s\nw,xx[1]);

39;)

40jCclose(out);

41J)

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

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

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

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

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

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

例如,6712,6+2»7+1.则该敝满足条件存入数组b中.且个数cnLcnt-l.

8)29.8丹!-1+2,则该数不海足条件忽略.

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

程序中已定义效Sh可300],b{3001.已定义变量।ent

请勿改动数据文件irtart中的任何数据、主函数main()、读语数readDmO和写曲败writcDaU)的内容.

Iinclude<stdio.h>

2inta[300)/b[300J,cnt-0;

3voidwriteDat();

4voidreadDat();

5voidjsValuo()

6

7

8

9»main()

10;(

IX!int1;

12readDat();

13jsValueO;

14writeDat();

15printf("cnt,*d\n”,ent);

16for(i•0;i<ent;

M

17printf(b(td]-%d\n-r1,b(i]);

18

19*voidreadDat()

20;(

21JFILEefp;

22•inti;

w

23ifp-fopen("in.dat",r*);

24;for(i-0;i<300;1>♦)

25,fscanf(fp,w%d,",6a(i]);

26;fclose(fp);

27!)

28ivoidwriteDat()

2”

30:FILE・fp;

31;int1;

321fp•fopen(°out.datw,wwH);

33;

fprmtf(fp#7d\n",ent);

34;for(i-0;i<ent;i**)

w

35•fprintf(fpr-%d\nrb[l));

36:fclose(fp);

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

;Iinclude<stdio.h>

2!Iinclude<9trinq.h>

3;IIncludeOtdlib.h>

4:tdeflnoMAX100

5jtypudofstruct

6!(

7chardm(5);/•代码•/

8charme(1111/,产品名”•/

9intdj;•饼•/

10Intsi;/•B1•/

11longje;/•金・•/

12;jPRO;

13!PROselllMAX);

14;voidReadDat();

15JvoidWrlteDat();

16;voidSortDat()

17

18

19

20•voidmain。

21pt

22momoot(sellt0/sizeot(sell)):

23ReadDat()j

24SortDatO;

25WriteDatO;

26I

21voidReadQat()

28(

29FILE•fp;

30charatr(80)tch(ll);

31int1;

w

32fp-fopen(*in.d4t"f"r);

33ford-0;1<100;

34(

35fgetslstir80,fp);

36memepy(sell(1).dmrstrr4);

37memcpy(sell|ij.me,str♦4.10);

38meracpy(ch,str*14,4):chf4j-0;

39sell(i].dj・atoi(ch);

4memcpy(ch/Str*18r5):ch(5]-0;

41sell(l).si-atoi(cb);

42sell(i].je-(long>sellll).dj•sell(i)«sl;

43>

44fclose(fp);

45)

46voidWrlteDatO

47(

48FILE*fp;

49int1;

50fp•fopen("out*w*);

51tor(1•0;i<100;"♦)

52(

5?fprlntf(fp«"ists%4d%5dt101d\n*rsellfl).dm/sell(l].mc«sell|i).djrscll(l].91,

sellli).je)t

54;

55!fclose(fp);

56i1

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

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

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

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

出到文件out.dat中。

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

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

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

例如।位置012345678

源字符率dcbahgfe

432198765

则处理后字符申hgfcsbcd

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

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

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

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

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

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

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

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

中。

注意,部分簿程序存在sc文件中•

程序中已定义效tJha(200].b(200],已定义支ent

请勿改动数据文件in.&t中的任何数据、主函数main。、读函数readDat。和写函数wrheDatf)的内容.

Iinclude<stdio.h>

2•defineMAX200〃定义室受■MAX,箕僮等于20。

3inta(MAX),b(MAX)#ent«0;〃定义■甲敷蛆a【MAX),和更■ent,并*cnt的初值为q

4voidwriteDatO;

5voidjsVal()

6,

7

8

9voidreadDat

10

int1;

12iFILETp;

13jfp-fopen("in.dat",*rw);

14iford-0;1<MAX;

IS;fscanf(fp,"W",(a[i|>;

16!fclose(fp);

17।

18\voidmain()

19i

20;inti;

211readDat();

221jsVal():〃・用jsval()鼎败实现Mfl要求的功能

23*printf("满足条件的融ent);

24!for(i•0;i<ent;

25\printf(R%d

26;printf("\nw);

27jwriteDat();

28;

29;voidwriteDat()

30•

31;FILE-fp;

32!int1;

33\fp-fopen("out.daL.Hw">

34;fprintf(fpr"Sd\n".ent);

35!for(1-0;i<ent;

36;fprintf(fp,7d\n”.b(lj

37;fclose(fp);

38?

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

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

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

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

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

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

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

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

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

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

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

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

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

请勿改动数据文件in.dat中的任何数据、主函数main。、读函数readDatO和后承数writeDatO的内容・

!linclude<stdio.h>

j«defineMAX200

3jinta(MAX],b(MAX],ent-0;

4!voidwrlteDat();

5!voidjsVal()

6

7

8

9voidreadDat()〃从m.dat文件中it取200个四位数存入数超a中

10j(

11-int1;

12•FILE*fp;

13;fp-fopen(Hin.datw,-r*1);

14•for(i-0;i<MAX;i++)

15!fscant(tp.wtd",;

16;fclose(fp);

17;}

18;voidmain()

19;(.

20!inti;

21ireadDat("

22jjsValO;〃调用南敏”vc(>,去观的动能

23ipr£ntf「海足条件的敏Td\n”,ent);

24ifor(i-0;i<ent;11♦♦)

251printf(w%d-,b[iD;

26»prlntf("\nw);

27writeDat();

28»

29voidwriteDat()〃把计算的果cm以及敷蛆b中希台条忖的四位依■出jMouidm文件中

30(

31FILE,£p;

32inti;

33fp•fopenLout.dat".Rww);

w

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

35for(i-0;i<ent;£♦♦)

36fprintf(fprb[l]);

37fclose(fp);

38

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

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

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

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

条件的个数ent,并把这些四位数存入数组b中,而后对数组b进行升

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

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

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

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

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

和写函数writeDat的内容。

1-tinclude<stdio.h>

2«tdefineMAX200〃定义宏安・KAXK值等于23

3;inta(MAX)rb(MAX],ent-0;初始G力0・定义仝胃帮”敏伯MMAX:.b(MWC|»<lcn

41voidwriteDat();咕数的说明语句

5jvoidj«Val()

•/•从依据文件见3中设取200个网位数存入敷用•中•/

•voidreadDat()

101(

int1;

12iFILE*fp;

H

13;fp«fopen(in.dat*r

14for(ia0;i<MAX;

15fscanf(fpr"d",&a[i]);

16fclose(fp);

17>

18voidmamO

19

20inti;

21readDat();

22jsValO;〃恻网鼎也实Kim要求的功能

23printf("满足条件的数7d\n,:nt);

24for(1-0;i<ent;

25print1(**%d8,b(11);

26printf;

27writeDat();

28)

i/・W数wntcDiMHC姑果E以及效组b中将C条件的四位数■出到0ut.(ht文件中•/

29:voidwriteDat()

30

31FILE*fp;

32inti;

w

33fpnfopen("out.datr"w");

34fprintf(fprRQd\n",ent);

35for(i■0;1<ent;

36fprintf(fp,"%d\n"rb(i));

37fclose(fp);

38

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

41.设某连锁商店数据库中有关系模式R:R(商店编号,商品编号,库

存数量,部门编号,负责人)如果规定:每个商店的每种商品只在一个

部门销售,每个商店的每个部门只有一个负责人,每个商店的每种商品

只有一个库存数量。(10分)(1)请根据上述规定,写出关系模式R的

函数依赖集;(2)请给出关系模式R的候选码;(3)请说明关系模式R

属于第几范式,并给出理由;(4)请将R分解成满足3NF的关系模式。

42.在SQLServer2008中,设某数据库中有商品表(商品号,商品名,

进货价格),商品号为主码;销售表(商品号,销售时间,销售数量,销

售价格,本次利润),商品号和销售时间为主码,销售价格为本次销售商

品的单价。现要求每当在销售表中插入前4列数据时(假设一次只插入

一行数据),系统自动计算本次销售产生的利润,并将该利润赋给销售

表的第5歹IJ“本次利润”。请编写实现上述功能的后触发型触发器代码。

(10分)

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

43.在数据库应用系统设计中,如果在事务中存在和用户的长时问交互,

它会带来哪些坏处()。I.降低系统的并发度n.增加死锁的数量

III.破坏数据的一致性IV.影响检查点的效果

A.仅I、n和niB.仅I、n和wc.仅I、in和wD.仅n、in和w

44.设在数据库应用系统设计与实现过程中有下列活动:I.数据库逻辑

结构设计II.数据库事务概要设计山.应用程序概要设计IV.系统总体

框架设计上述任务中属于数据库应用系统逻辑设计阶段工作内容的是

()o

A.仅I、II和HIB.仅I、II和IVC.仅H、HI和IVD.以上全部

参考答案

1A解析:选择(selection)是关系R中选择满足给定条件的诸元组,选择

运算实际上是从关系R中选取逻辑表达式F为真的元组。这是从行的

角度进行的运算。因此从表中选择满足某种条件的记录的操作称为选择。

2.C解析:输入设备有:键盘、鼠标、光笔、纸袋输入机、模/数转换器、

声音识别输入等。输出设备有:打印机、显示器、绘图仪、数/模转换器。

注意:A),B),D)选项的内容属于计算机的输出设备,故C)选项正确。

掌握计算机的系统组成和计算机软件的相关知识。

3.D解析:概念模型是按用户的观点对数据和信息建模,也称为信息模

型。概念模型语义表达能力强,不涉及信息在计算机中的表示,如实体

-联系模型,语义网络模型等。

4.C

5.B解析:作业的响应比为作业响应时间与作业实际要求服务时间的比

值,其中响应时间等于作业等待时间与作业要求服务时间的和。在此题

中,响应时间为4小时,要求服务时间为2小时。

6.B第二范式(2NF)要求实体的属性完全依赖于主关键字。所谓完全依

赖是指不能存在仅依赖主关键字一部分的属性,如果存在,那么这个属

性和主关键字的这一部分应该分离出来形成一个新的实体,新实体与原

实体之间是一对多的关系。为实现区分通常需要为表加上一个列,以存

储各个实例的惟一标识。简而言之,第二范式就是非主属性非部分依赖

于主关键字。所以其最多为2NF。

7.B解析:数据库的并发性是指当多个用户的并发进程同时存取、修改

数据库时,可能会发生相互干扰而得到错误的结果,并使数据库完整性

遭到破坏,并能够避免对未提交更新的依赖(“脏数据”的读出)。

8.C输入输出中断:它是当外部设备或通道操作正常结束或发生错误时

所发生的中断。例如:打印机打印完成、缺纸,读磁盘时相应驱动器中

没有磁盘等。

9.C解析:在上述4种转换中,就绪一等待这种转换不存在,所以是不

正确的。

10.C解析:数据库管理系统是指数据库系统中管理数据的软件系统,

DBMS是数据库系统的核心组成部分。

]]•子表子表

12.部分部分

13.实体完整性实体完整性

14.关系数据模型关系数据模型解析:根据关系数据模型的定义,实体

与实体之间的联系用二维表来表示的数据模型称为关系数据模型。

15.根据H1,41的插入位置应该是41mod13,即2,但位置2有冲

突,用H2探测地址增量:41mod11+1=9,所以其插入位置应该是2

+9=11,所以其插入位置为11。

16.端到端(或End.tO.End)【解析】传输层的主要任务是向用户提供可靠

的端到端服务,透明地传送报文。它向高层屏蔽了下层数据通信的细节,

因而是计算机通信体系结构中最关键的一层。

17.持久性持久性解析:为保证对故障恢复的支持,登记日志记录时必

须遵循以下原则:登记的顺序严格按照事务的并发执行中各操作发生的

实际顺序;必须先把日志记录写到外存的日志文件中,再把相应的数据

库修改写到外存的数据库中。这称作先写日志的原则,是为了发生故障

后保持数据库的原子性和持久性所必须遵循的原则。

18.认证认证

19.有向树用树形结构表示实体类型及实体间联系是层次模式最主要的

特征,层次结构是一棵有向树,树的节点是记录。根节点只有一个

2O.R.A=S.A或S.A=R.A【解析】自然连接是一种特殊的等值连接,它

要求两个关系中进行比较的分量必须是相同的属性组,并且要在结果中

把重复的属性去掉。本题是自然连接,所以本题答案为R.A=S.A或S.A

—R.A。

21.A

22.D解析:为保证数据库是可恢复的,登记日志文件时必须遵循以下两

条原则:1、登记的次序严格按并发事务执行的时间次序;2、必须先写

日志文件,后写数据库。

23.B解析:冯?诺依曼提出的存储程序工作原理决定了计算机硬件系统

的5个基本组成部分,即运算器、控制器、存储器、输入设备和输出设

备。运算器是计算机中执行各种算术运算和逻辑运算的部件,也叫算术

逻辑单元。存储器是计算机中具有记忆能力的部件,它能根据地址接收

和保存指令或数据,并能根据命令提供有关地址的指令或数据。

控制器的主要作用是使整个计算机能够自动地执行程序,并控制计算机

各功能部件协调一致地动作。执行程序时,控制器先从主存中按顺序取

出程序中的一条指令,解释该指令并形成数据地址,取出所需的数据,

然后向其他功能部件发出执行该指令所需的各种时序控制信号。然后再

从主存中取出下一条指令执行,如此循环,直到程序完成。计算机自动

工作的过程就是逐条执行程序中指令的过程。

输入设备的主要功能是将数据、程序等用户信息变换为计算机能识别和

处理的信息形式。

输出设备的主要功能是将计算机中的二进制信息变换为计算机用户所

需要并能识别的信息形式。

24.B解析:根据数据库的定义可知,数据库是长期储存在计算机内的、

有组织的、可共享的数据集合。数据库中的数据按一定的数据模型组织、

描述和存储,具有较小的冗余度、较高的数据独立性、和易扩展性,并

可为各种用户所共享。

25.A

26.D虚拟页式存储管理又称为请求页式存储管理,请求页式的基本思想

是,在进程开始执行之前,不是装入全部页面,而是只是装入一个(甚至

。个)页面,然后根据进程执行的需要,动态地装入其他页面。

27.D解析:在一类设备上模拟另一类设备的技术称为虚设备技术。通常

使用高速设备来模拟低速设备,以此把原来慢速的独占设备改造成为若

干进程共享的快速共事设备。就好像把一台设备变成了多台虚拟设备,

从而提高了设备的利用率.我们称被模拟的设备为虚设备。SPOOLing

技术是一类典型的虚设备技术。

28.D

29.B

30.A

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

的ASCII码是偶数不变,否则替换。

\n【解题思路】

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

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

\n【参考答案】

\n

\n

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

序。

\n【解题思路】

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

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

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

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

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

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

达式进行与()运算。

\n【参考答案】

\n

\n

\n

33.【审题关键句】将大于整数m且紧靠m的k个素数存入数组。

\n【解题思路】

\n①首先定义一个计数变量ent并赋初值为0o

\n②利用while循环统计大于整数m且紧靠m的k个素数,当计数变量

ent

温馨提示

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

评论

0/150

提交评论