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

下载本文档

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

文档简介

2021年甘肃省金昌市全国计算机等级考试

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

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

一、1.选择题(10题)

1.下列关于操作系统设备管理的叙述中,哪个是不正确的?

A.设备管理使用户能独立于具体设备的复杂物理特性而方便地使用设

B.设备管理利用各种技术提高CPU与设备、设备与设备之间的并行工

作能力

C.操作系统对用户屏蔽了实现具体设备FO操作的细节

D.操作系统对设备尽量提供各种不同的接口

2.若想在本地机上显示Internet上的各种信息,要安装运行一个软件。

该软件是

A.搜索引擎B.WWW浏览器C.电子邮件服务D.远程登录服务

3.下列关于临界区叙述正确的是

A.进程中访问临界资源的那段程序称为临界区

B.临界区最多允许两个进程进入

C.进程进入临界区的要求可以在无限的时间内得到满足

D.系统中一些资源一次只允许有限的进程使用,称之为临界资源

4.四个元素al、a2、a3和a4依次通过一个栈,在入栈过程中允许栈顶

元素出栈。假设某一时刻栈的状态如下:

则不可能的出栈序列是

A.a4,83,a2,alB.a3,a2,a4,alC.a3,al,a4,a2D,a3,a4,82,

al

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

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

需要查找几次?

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

6.20世纪70年代数据库系统语言协会(CODASYL)下属的数据库任务

组(DBTG)提出的DBTG系统代表哪种数据模型?

A.关系数据模型B.层次数据模型C.对象数据模型D.网状数据模型

7.在并行控制中弓【入两段封锁协议的目的是

A.为了解决并行执行时可能引起的死锁问题

B.为了解决并行执行时可能引起的活锁问题

C.为了解决交叉调度的不可串行化问题

D.为了解决不同的调度导致不同的运行结果

8.SPOOLing技术是为解决独占设备数量少、速度慢、不能满足众多进

程的要求,而且在进程独占设备期间设备利用率又比较低的问题而提出

的一种设备管理技术,它也是一种

A.虚拟设备技术B.资源分配技术C.人机接口技术D.虚拟存储技术

9.在数据库设计中,用E-R图来描述信息结构,但不涉及信息在计算

机中的表示,它是数据库设计中的哪个阶段?

A.需求分析B.概念设计C.逻辑设计D.物理设计

10.通过指针链来表示和实现实体之间联系的模型是

A.层次型B.网状型C.关系型D.层次型和网状型

二、填空题(10题)

11.在SQL中,模式对应于“基本表”,内模式对应于“存储文件”,外模式对

应于“【】"和部分基表。

12.IP服务的3个主要特点是____________面向非连接和尽最大努力投

递服务。

13.一个SQL语句原则上可产生或处理一组记录,而主语言一次只能处

理一个记录,为此必须协调两种处理方式。这是用来解决的。

14.对数据库结构的描述和定义存储在____中,它是DBMS运行的基

本依据。

15.在数据挖掘方法中,对目标类数据的一般特征或特性进行汇总,并

以直观易理解的方式显示给用户的方法被称为O

16.操作系统之所以能够找到磁盘上的文件,是因为有磁盘上的文件名与

存储位置的记录。在DOS中,它叫做o

17.当两个数据表建立了关联后,通过【】就有了父表、子表之分

18.计算机可以直接执行用语言编写的程序。

19.数据模型用来描述数据的静态特征、动态特征和数据的完整性约束。

对数据结构和数据间联系的描述,这是描述数据的O

20.关系的数据操纵语言按照表达式查询方式可分为两大类_UL和」]

三、单选题(10题)

21.下述哪个成立时,称X—Y为平凡的函数依赖?

A.XYB.YXC.XAY=D.XDY声

22.某单道批处理系统中有四个作业JOB1、JOB2、JOB3和JOB4,它

们到达“输入井”的时刻和需要的运行时间如下表所示:

作业进入系统时间估计运行时间(分钟)

J0B18:3080

J0B28:5020

J0B39:2040

J0B49:3035

假设9:30开始进行作业调度,按照最高响应比作业优先算法,首先被调

度的作业是

A.JOB1B.JOB2C.JOB3D.JOB4

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

除冗余关系。

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

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

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

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

25.数据字典是软件需求分析阶段的最重要的工具之一,其最基本的功

能是______。

A.数据库设计B.数据通信C.数据定义D.数据维护

26.如果以链表为栈的存储结构,则退栈操作时()

A.必须判别栈是否满B.必须判别栈是否空C.判别栈元素的类型D.对

栈不作任何判别

27.概念模型()

A.依赖于DBMS和硬件B.独立于DBMS和硬件C.依赖于DBMSD.独

立于DBMS

28.密钥管理包括密钥的生产、存储、装入、分配、保护、销毁以及保密

等内容,其中最关键和最困难的问题是()。

A.密钥的分配和存储B.密钥的产生和装入C.密钥的保护和保密D.密

钥的销毁

29.在SQLSever中创建用户数据库,其主要数据文件的大小必须大于

A.master数据库的大小B.model数据库的大小C.msdb数据库的大小

D.3MB

30.概念结构设计的目标是产生数据库概念结构(即概念模式),这结构主

要反映()

A.DBA的管理信息需求B.应用程序员的编程需求C.企业组织的信息

需求D.数据库的维护需求

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

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

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

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

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

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

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

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

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

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

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

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

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

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

请勿改动数据文件in.dat中的任何数据、主函数main。、读法敷readDatO和写函数writeDaU)的内容.

1ilinclude<stdio.h>

2IIdefineMAX200

3■inta[MAX],b(MAX]9ent■0;

4!voidwriteDat();

5;voidjsVal()

6•J

7i

8;}

9\voidreadDat()〃从in.dat文件中it取200个四位数存入敷殂a中

10\(

11;int£;

12!FILEefp;

131fp•fopen

14•for(i•0;i<MAX;[♦+)

15!fscanf(fp#Fd。;

16;fclose(fp);

17!1

18»voidmain()

19;(•

20!inti;

21treadDat();

22;jsValO;〃•用南敏”hl。,实现Ihi要求的功能

23jprintf满足条件的融**d\n”,ent);

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

25!printf(M%d,b[i]);

26?printf("\nw);

27writeDat();

28I

29voidwriteDat(>〃纪计年龄果ent以及敷蛆b中的合条件的四位Ik・出到oui.dm文件中

30(

31FILE*fp;

32inti;

33fp■fopen(wout.datw,Rww);

34fprintf(fp,7d\nLent);

35for(1■0;i<ent;

36fprintf(fp,"tdXn**/b[i));

37fclose(fp);

38

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

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

些四位数是素数的个数ent,再求出所有满足此条件的四位数平均值pjzl,

以及所有不满足此条件的四位数平均值pjz2o最后main函数调用写函

数writeDat把结果ent,pjzl,pjz2输出到out.dat文件中。

例如:5591Mtft,连攻淌足条件.参加计时平均值pjz1・H个数cniynt+1.

9812是诈腐数,谟攻不涓足条件.参加计算平均值pjz2.

注意£鄙分源程序存在9M.C文件中.

展序中已定义数组:a|300].已定义变量:ent.pjzl.pjz2

消勿改动故索文件indat中的任何数纲、I隔数mun().此函数readDatO和工;东数wnteDatO的内容

1;tinclude<Btdio.h>6句说明8科学中心畲e60中第标次・人■出片嫉岫aiaioii

2•inta(300)«cnt*0;,甲教研.[33。)和更■ant.我・unt献初例为0

3!doublepjzl*0.0ep1z2・0・01〃/次受■力H.p,z2科院树编为o.o

4ivoidwrlteDat();/,・出余。说明中句

S:voidreadDat();//■入函数说蜃谢何

6,intisPfintin)〃濡故i"UratM科断D>R古为,此W果近腐敏3常问].松则也回o

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

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

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

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

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

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

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

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

程序中已定义数组:a|200].b{2<»j,已定义变・,ent

请勿改动数据文件in.dai中的任何数据、L函数读函数rcadDatO和写函数writeDatO的内容.

1;Iinclude<stdio.h>

2;fdefineMAX200

3»inta【MAX).b[MAX]rent-0;

4;voidwriteDat();

5JvoidjsVa1()

6•I

9•voidreadDat()

10;(

11!inti;

12»FILE*fp;

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

14!for(i•0;i<MAX;i**)

15•fscant<fp,{11);

16;fclose<fp);

口\》

18•voidmain()

19;(

201inti;

21JreadDat();

22;jsVal();

23!printzf("满足条件的数NdW.ent);

24jfor(i•0;i<ent;

25;printf(HtdLb(i]);

26\printf(w\n");

27«writeDat();

28jI

29'voidwriteDat()

30•(

31;FILEwfp;

32t!inti;

w

33jfpfopen(out.dat°r"w*);

34;fprintf(fp,Mtd\nw,ent);

35*for(i=0;i<ent;

36•fprintf(fp>7d\n".b(i]);

37;fclose(fp);

38

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

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

其功能要求:

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

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

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

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

中。

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

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

和输出函数WriteDat的内容。

•include<stdio.h>

2!IdefineMAXNUM200

3\intxx[MAXNUM|;

4;inttotNum-0;〃文件In.dau中年有名少个正整数

5;mttotCnt■0;〃符合条件的正整数的个被

6;doubletotPjt-0.0;〃平

7;intReadDat(void);

6;voidWriteDat(void);

voidCalValue(void)

11;

12!

13;voidmalnO

14;

inti;

16for(i-0;i<MAXNUM;if

17xx(1]-0;

18if(ReadDat())

19

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

21return;

22

23CalValue();

24printsL文件in.dat中共有正整数7d个\n",totNum);

25print。L符合条件的正整数的个数-、d个\n,tocCnt);

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

27WriteDatO;

28

八源取这若干个正■敏并存入室ifiix中〃

29IntReadDat(void)

30

31FILE*fp;

32inti-0;

33if((fp-fopen(-In.dat-,-r-D-NULL)

34return1;

35while(!feof(fp))

",

37fscanf(fp,7d.e.&xx(i+>]);

38

39fclose(fp);

40return0;

41

/♦把计翼站累存入文件iut.dat中〃

42voidWriteDat(void)

43

44FILE*fp;

45fp-fopen(**out.dat",**w0>;

w

46fprintf(fp,*%d\n%d\ni.21f\n,totNum,totCnt,totPji);

47fclose(fp);

48

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

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

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

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

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

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

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

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

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

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

进行处理。

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

请”改动主函数main(),读函数ReMDatQ和仲出的敷WriteDaiO的内容,

IJIinclude<stdio.h>

2ylinclude<string.h>

3;tinclude<ctype.h>

4!unsignedcharxx[50)(80];

5jintmaxline-0;/•文束的总行数*/

6;intReadDat(void);

7jvoidWriteDat(void);

8;voidencryptChar()

9;I

10|

12Ivoidmain()

13i(

14;if(ReadDat())

15!(

16;printfLU据文件in.dat不能打开!\n\007。);

17;return;

18j)

19;encryptChar();

20!WriteDat();

21\}

;/•从文件皿修中S取一篇英文文章,存入到字符*数机口中•/

22!intReadDat(void)

23i(

24;FILE-fp;

25Iinti-0;

26;unsignedchar*p;

www

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

28jreturn1;

29-whilelfgets<xx(i],80ffp>!,NULL)

30!(

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

32jif(p>*p-0;

33•I++;

34;1

35!maxline«1;

361fclose(fp);

37;return0;

38!)

i/•把站整XX-出到文件OUL&l中•/

39;voidWrileDat(void)

40*(

41jFILETp;

42jinti;

43;fp-fop@n("out・dat".

44\for(i*0;i<maxline;

45!(

ww

46iprintf(%s\nrxx[i]);

w

47;fprintf(fp,%s\n"#xx(i]);

48f)

49\fclose(fp);

50;}

voidmain()

13

14if(ReadDat())

15(

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

17return;

18

19encryptCharO;

20WriteDat();

21)

/•从文付indM中it联・英文文存入*字粒市敏纲u中〃

22intReadDat(void)

23(

24FILE*£p;

25inti•0;

26unsignedchar・p;

ww

27if((fp«fopen(**in.dat."rr))—WLLL)

28return1;

29while(fgets(xx[i),80,fp)!•NULL)

30(

31p■strchr(xx(i)9,\n');

32if(p)*p«0;

331+♦;

34I

35maxline•1;

36fclose(fp);

37return0;

38I

"IC纳果xx・出宜文floutdat中•/

39voidWriteDat(void)

40(

41FILEefp;

42inti;

43fp°fopen("out.datw,Rw,r);

44for(i•0;i<maxline;

45(

46printf(,,%s\nw,xx[i|);

47fprintf(fp,xx[1]);

48I

49fclose(fp);

50

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

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

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

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

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

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

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

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

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

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

进行处理。

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

内谷。

•include<stdio.h>

tinclude<strlng.h>

3•include<ctype.h>

unsignedcharxx[50][80];

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

6intReadDat(void);

7!voidWriteDat(void);

8«voidencryptChar()

10!

11j)

12JvoidmainO

13•(

14iif(ReadDat0)

15\1

161printf(-数据文件in.daw不能打开!\n\007"”

17return;

18

19encryptCharO;

WriteDat();

21

/•从文件ndu中谟取・英文文存人■无M号字折席敏烟«中•/

22intReadDat(void)

23

FILE*fp;

25int1-0;

26unsignedchar*p;

27if((fp*fopen(win.datw,^r"))«-NULL)

28return1;

29while(fgeta(xx[i],80<fp)!"NULL)

30

31p-strchr(xx(1]/*\n*);

32if(p)*p■0;

33

34}

35maxline・i;

36fclose(fp);

37return0;

38

八纪雄果XX•出到文件OULdft中♦/

39voidWriteDat(void)

40(

41FILE*fp;

42inti;

M

43fp•fopen("out.datr"w");

44for(i-0;i<maxline;“♦)

45(

w

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

47fprintf(fp,7s\n",xx[i));

48)

49fclose(fp);

50

37.程序test.c的功能是:计算出自然数SIX和NINE满足条件

SIX+SIX+SIX=NINE+NINE的个数ent,以及满足此条件的所有SIX与

NINE的和SUM。请编写函数countValue实现程序的要求,最后main

函数调用函数writeDAT把结果ent和sum,输出到文件Out.dat中。

其中的S,I,X,N,E各代表一个十进制数字,允许代表的数字相同,

但s和N不能为0。例如:944+944+944=1416+1416注意:部分源程序

存放在test.c文件中。

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

<include<stdio.h>

2;intcntrsum;

3»voidwriteDAT();

4;voidcountValue()

5;(

6;

7!}

8ivoidmain()

9{(

10•ent•sum•0;

11:countvalue();

12•printf「满足条件的个数ent);

13jprintf("满足条件所有的SIX与NINE的和Td\n”.sum);

14JwriteDAT();

15;)

t/•把姑果cm和・出》文件ouLdw中,/

16;voidwriteDAT()

17;(

18;FILE*fp;

19!fp■fopen("out.dat”,www);〃以只写的方式打开文件out.dat

w

20-fprintf(fpr**%d\n%d\n,ent,sum);〃把结果国和《nn♦出列文件mxdrn中

21•fclose(fp);〃关Ml文件out。

tf

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

请勿改动数据文件in.dat中的任何数据,主函数读的数rcadDaiO和写函数writeDat()的内容.

^include<stdio.h>

,defineMAX200

inta[MAX]tb[MAX|9ent*

voidwriteDat();

voidjsVal()

6

7

8

9voidreadDat()〃从in・dac■文件中读取200个网位![存入数楸a中

10

11

12FILE*fp;

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

14for(i-0;1<MAX;

15fscanf(fp<*ldw,&a[1));

16fclose(fp);

17

18voidmain()

19

20inti;

21readDat();

22jsValO;〃•用嫉效八,实现虐H要求的功施

23printf("滴足条件的数7d\n”,

24for(i*0;i<ent;1♦e)

5printf(H%dR,b(i]);

printf;

writeDat();

29•voidwriteDat()〃把计算幅果cm以及IHHb中符合条件的四位的•出川皿山文件中

30;I

31»FILE*fp;

32Iint1;

33;fp-fopen(wout.datw,Wwn);

34!fprintf(fp,ent);

35jfor(i»0;i<ent;£+♦)

ww

36jfprintf(fpr%d\nrb[1]);

37!fclose(fp);

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

串数组XX中,请编制函数StrCharJR,其函数的功能是t以该文章中的

行为单位把字符串中的所有字符的二进制ASCII值右移4位,高位补

0,然后把右移后的字符ASCII值再加上原字符的ASCII值,得到新的

值仍存入原字符串对应的位置上,之后把已处理的结果仍按行重新存入

数组XX中。最后main函数调用函数WriteOat把结果XX输出到文件

out.dat中。

例如:

”z”对应的ASCII值为7AH,二进制值为01111010,右移4位后为

00000111,加上原来"2"的ASCII值01111010得至【J10000001结果。

原始数据文件存放的格式是:每行的宽度均小于80个字符,含标点符

号和空格,并也按字符处理。

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

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

:j•include<stdio.h>

!iinclude<string.h>

3\charxx[501(80];

4!intmaxline=0;/•文聿的总行数,/

5•intReadDat(void);

6;voidWriteDat(void);

7jvoidStrCharJR(void)

8

9

10

111voidmain0

12;I

13!if(ReadDatO)

14f1

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

16return;

17j»

18?StrCharJRO;

19;WriteDat();

20

;八从文"中读取iJI英文文章存入到字符串敛fiiXi中♦/

21jintReadDat(void)

22!I

23JFILE»fp;

24!inti-0;»

25;char.p;

26if((fp-fopen(•*in.dat",,•?••))-NULL)

27return1;

28!whlle(fgets(xx(i|,80rfp)!-NULL)

29

,:p=strchr(xx[i)f,Xn,);

31if(p)*p-0;

32if

33!)

34maxiine-i;

35!fclose(fp);

36ireturn0;

37P

J/•把结果”■出到文仰OUL&1中•/

38•voidWriteDat(void)

39p

40FILEwfp;

41!inti;

42fp«fopen("out.datM,www);

43for(i-0;1<maxline;i**)

44(

R

45printf(is\n"rxx(i});

wM

46fprintf(fp,%s\nfxx[1i);

47

48fcloseIfp);

49

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

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

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

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

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

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

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

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

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

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

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

注意I部分禽程序存在EX文件中.

程序中已定义数Sth4200].b(200J.已定义变量।ent

请勿改动数据文件mdai中的任何数据、主函数谍两数rcadDatO和n函数writeDatO的内容.

1•Iinclude<stdio.h>

2\tdefineMAX200〃定义宏交ItMAX,即I等于zoo

3\inta【MAX),b(MAX],ent-0;〃定义全局整RTt敷烟alMAX].31MAX?和支■st,苒初值尊于0

4«voidwriteDat();

5jvoidjsVal()

6i(

8j)

9(voidreadDdtO〃从kn・dat文件中博取200个四口,存入数ifl■中

10;{

11!inti;

FILEefp;

(open("in.dat*,

for(1•0;1<MAX;1.*♦

tscanf(fpr"%<1**,(a[i

fcloae(fp);

iroidmain()

20

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

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

41.设在采用SQLServer2008数据库的图书馆应用系统中有三个基本表,

表结构如下所示,请用SQL语句完成下列两个查询:BORROWER:借

书证号姓名系名班级12011106蒋辉文计算机系12-112011107王丽计算

机系12-112012113范园园信息系12-2LOANS:借书证号图书馆登记号

借书日期12011106T0010012012.01,0212012113

T0010262013.02.O6BOOKS:索书号书名作者图书登记号出版社价格

TP311.1数据库系统李明T001001科学19.00TP311.2二级C语言王

珊T001026人民32.00(1)检索至少借了5本书的同学的借书证号、

姓名、系名和借书数量。(5分)(2)检索借书和王丽同学所借图书中的

任意一本相同的学生姓名、系名、书名和借书日期。(5分)

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

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

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

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

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

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

(10分)

六、单选题口分K2题)

43.许多大中型企业出于多种原因建立了数据仓库,以下()不是建

立数据仓库的合理理由。

A.将企业的各种应用系统集中在一起

B.充分利用企业信息系统生成的各种数据

C.解决企业业务应用和数据分析应用的性能冲突

D.以面向主题、集成的方式合理的组织数据

44.下列关于SQLServer2008视图的说法,错误的是()。

A.数据库中只存储标准视图的定义,并不存储标准视图的内容

B.如果在视图上创建了唯一聚集索弓|,则数据库中将保存该视图的内容

C.索引视图的数据源可以是基本表,也可以是已建立的其他标准视图

D.索引视图引用的基本表必须与视图在同一个数据库中

参考答案

LD解析:在操作系统的设备管理的目标中指出,操作系统的设备管理

要向用户提供使用外部设备的方便、统一的接口;所谓方便就是用户能

独立于具体设备的复杂的物理特性而方便的适应设备,所谓统一是指对

不同的设备,尽量能统一操作.方便和统一要求对用户屏蔽实现具体设

备I/O操作的细节,呈献给用户的是一种理想化.的、操作简便的逻辑

设备。设备管理的目标中还指出要充分利用中断技术、通道技术和缓冲

技术,提高CPU与设备、设备与设备之间的并行能力,以充分利用设

备资源、提高外部设备的使用效率。对照本题的4个选项,A、B、C均

是设备管理的目标,而D操作系统对设备尽量提供各种不同的接口则

与设备管理的目标提供统一的接口相反。所以本题的答案为Do

2.B解析:选项A“搜索引擎”是Internet上的WWW服务器,它的主要

任务是在Internet中主动搜索其他WWW服务器中的信息并对其自动索

引,将索引内容存储在可供查询的大型数据库中;选项B“WWW浏览

器”是用来浏览Internet上主页的客户端软件,利用它可以访问Internet

上的各类信息,因此本题的答案为B;选项c“电子邮件服务”是用户或

用户组之间通过计算机网络收发信息的服务选项D“远程登录”服务中,

用户通过Telnet命令使自己的计算机暂时成为远程计算机的终端,直接

调用远程计算机的资源和服务。

3.A解析:本题主要考查了临界区的基本知识。系统中一些资源一次只

允许一个进程使用,称之为临界资源。进程中访问临界资源的那段程序称

为临界区。当没有进程在临界区时,允许一个进程立即进入临界区。进程

进入临界区的要求可以在有限的时间内得到满足。

4.C

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

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

6.B解析:网状数据模型的典型代表是DBTG系统,亦称CODASYL系

统。

7.C解析:两段锁协议是指所有事务必须分两个阶段对数据项加锁和解

锁。所谓两段锁的含义是:事务分为两个阶段,第一阶段是获得封锁,

也称为扩展阶段;第二阶段是释放封锁,也称为收缩阶段。若并发执行

的所有事务均遵守两段锁协议,则对这些事务的任何并发调度都是可串

行化的。

8.A解析:SPOOLing是为解决独占设备数量少、速度慢、不能满足众多

进程的要求,而且在进程独占设备期间设备利用率又比较低的情况而提

出的一种设备管理技术。它是一种虚拟设备技术,其核心思想是在一台

共享设备(通常是高速、大容量的磁盘)上模拟独占设备的操作,把一台

低速的独占设备改造成为若干台并行操作的虚拟设备,即把独占设备变

成逻辑上的共享设备。

9.B解析:用E-R图来描述信息结构,如果不涉及在某种具体的机器上

表示,则还只停留在概念设计的阶段。

10.D解析:在层次模型和网状模型的实际存储中,通过链接指针实现结

点间的联系。

11.视图视图解析:本题主要考查了SQL数据库的体系结构。在SQL

中,模式对应于‘基本表,内模式对应于‘存储文件',外模式对应于‘视图'和

部分基表。

12.不可靠的数据投递服务【解析】IP服务的3个主要特点是不可靠的

数据投递服务、面向非连接和尽最大努力投递服务。

13.游标或CURSOR游标或CURSOR

14.数据字典数据字典

15.特征描述特征描述解析:本题是考察对数据挖掘方法的了解。

数据挖掘方法一般有四种:

①关联规则挖掘,是一个从现象到本质的揣测过程,只能得到因果关系;

②特征描述,对目标类数据的一般特征和特性进行汇总,并以随观的方

式显示给用户;

③分类分析,找出数据集中备组对象的共同特征,建立分类模型,从而

能够将数据集中的其他对象分到不同的组中;

④聚类分析,数据集分割为若干有意义的簇的过程,它是一种无制导的

学习方法。

16.FAT【解析】操作系统之所以能够找到磁盘上的文件,是因为有磁盘

上的文件名与存储位置的记录。在DOS里,它称为文件表(FAT);在

Windows里,称为虚拟文件表(VFAT);在mM的操作系统OS/2里,称

为高性能文件系统(HPFS)。

17.关联字段建立联系的数据表通过关联字段来进行父子表之分

18.机器机器解析现有的程序设计语言一般可以分为三类机器语言、

汇编语言和高级语言,机器语言和汇编语言又称为低级语言。机器语言

是最初级且依赖于硬件的语言,全部用二进制代码形式表示,不易被人

识别,但可被计算机直接执行。汇编语言用有助于记忆的符号和地址符

号来表示指令,有直观和易理解的优点,但程序设计语言需经过汇编程

序翻译后才被计算机识别。高级语言是一种面向问题的程序设计语言,

独立于计算机的硬件,需经编译后才能执行。

19.静态特性静态特性解析:数据模型是数据库系统的数学形式框架、

是用来描述数据的一组概念和定义,包括描述数据、数据联系、数据操

作、数据语义以及数据一致性概念的工具,即数据的动态特性、数据的

静态特性和数据的完整性约束。其中数据的静态特性包括对数据结构和

数据间联系的描述。

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

关系代数和关系演算

21.B解析:当YX时,称X-Y为平凡的函数依赖。

22.B解析:响应比定义为系统对作业的响应时间与作业运行时间的比值。

最高响应比作业优先算法优先选择响应比最高的作业。对JOB1,JOB2、

JOB3和JOB4的响应比分别为60/80=0.75.40/20=2,10/40=0.25和0/35=0,

因此首先被调度的作业是JOB2,正确答案为选项B。

23.B

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

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

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

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

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

25.C解析:数据字典是系统中各类数据描述的集合,是进行详细的数据

收集和数据分析所获得的成果。数据字典通过对数据项和数据结构的定

义宋描述数据流、数据存储的逻辑内容。所以数据字典的最基本的功能

是数据定义。

26.B

27.B

28.A

29.B

30.A

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

从大到小排序。

\n【解题思路】

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

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

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

数判断,即“newV2%2”。

\n【参考答案】

\n

\n

32.\n【审题关键句】求素数的个数及平均值,并计算非素数的平均值。

\n【解题思路】

\n①首先定义循环变量i,然后通过for循环对数组a[300]d0的每个元素

a[i]调用函数isV(a[i])判断a[i]是否是素数(素数的算法已在isP函数中给

出,此处直接调用即可),如果是素数,则把其加到变量pjzl上,同时

计数变量ent加1,否则a[i]值加到变量pjz2上。直到判断完数组a[300]00

的所有数据后退出循环。

\n②求出pJzl、pjz2和ent的值之后,再用变量pjzl的值除以ent的值

就得到素数的平均值,同时把这个值赋给变量pjzl,最后用变量pjz2的

值除以300.ent的值就得到非素数的平均值,并把这个值赋给变量pjz2。

\n【参考答案】

\n

\n

33.\n[审题关键句】四位数的千位>=百位>=十位>=个位,且四位数是奇

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

\n【解题思路】

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

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

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

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

\n【参考答案】

\n

\n

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

值。

\n【解题思路】

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

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

第9条语句。

\n【参考答案】

\n

\n

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

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

\n【解题思路】

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

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

\n【参考答案】

\n

\n

36.\n[审题关键句】字符替代f(p)=p*Umod256,小于等于32或对应小

写字母不变,否则替换。

\n【解题思路】

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

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

\n【参考答案】

\n

\n

37.【审题关键句】计算满足条件的sIX+sIX+sIx-NINE+NINE的SIX和

NINE的个数以及满足此条件所有的SIX与NINE的和,S,I,X,N,

E各代表一个十进制数字。

\n【解题思路】

\n①定义整型变量S,i,X,n,e,six,nineo

\n②在第一层for循环中,因为S的值不能为0,所以循环变量s从1开

始,依次递增直到其值等于10,退出循环。在第二层for循环中,循环

变量i从0开始,依次递增直到其值等于10,退出循环。在第三层for

温馨提示

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

评论

0/150

提交评论