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

下载本文档

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

文档简介

2023年江苏省盐城市全国计算机等级考试

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

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

一、1.选择题(10题)

i.用高级语言编写的程序

A.只能在某种计算机上运行B.无需经过编译或解释,即可被计算机直

接执行C.具有通用性和可移植性D.几乎不占用内存空间

2.当前应用开发对工具的总需求有o

I.提高开发和运行效率

II,降低开发和维护费用

HI.应用系统具有先进性

IV.代码的可重用性

A.都是B.I、H和HIC.H、HI和WD.H和山

3.把E-R图转换成关系模型的过程,属于数据库设计的

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

4.将逻辑地址转换为物理地址的过程称为o

A.寻址B.地址映射C.内存分区D.内存分配

5.在E-R模型向关系数据模型转换的时候下列叙述不正确的是

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

B.一个实体类型转换成一个关系模式时,实体的码就是关系的码

C.具有相同码的关系的模式不可以合并

D.具有相同码的关系的模式可以合并

6.在数据库管理系统的层次结构中,由高级到低级的层次排列顺序为()。

A.应用层、数据存取层、数据存储层、语言翻译处理层

B.应用层、数据存储层、数据存取层、语言翻译处理层

C.应用层、数据存储层、语言翻译处理层、数据存取层

D.应用层、语言翻译处理层、数据存取层、数据存储层

7.对一棵二叉树的先序遍历、后序遍历和中序遍历所产生的序列中,所

有叶结点的先后顺序是()O

A.各不相同B.先序遍历与后序遍历相同C.完全相同D.后序遍历与中

序遍历相同

8.3.设计批处理多道系统时,首先要考虑的是_______o

A.灵活性和可适应性B.系统效率和吞吐量C.交互性和响应时间D.实

时性和可靠性

9.在单链表中在指针p所指结点后插入结点q的操作是

A.q:=p|.link;pT』ink:=qf.link

B.pf.link:=qT」ink;qT」ink:=pT」ink

C.qf.link:=p;pj.link:=q

D.qt.linkl:=pT」ink;pf.link:=q

10.要与Internet上的计算机进行通信必须使用什么来建立连接?

A.建立主页B.指定一个IP地址C.使用WWW服务D.发送电子邮件

二、填空题(10题)

H.当将局部E-R图集成为全局E-R图时,如果同一对象在:一个局部

E-R图中作为实体,而在另一个局部E-R图中作为属性,这种现象称为

______冲突。

12.的虚拟局域网的建立是动态的,它代表了一组IP地址,

并由称做代理的设备对虚拟局域网中的成员进行管理。

13.在数据库设计的四个阶段中,每个阶段都有自己的设计内容。“为哪

些表、在哪些字段上、建什么样的索引。”这一设计内容应该属于

设计阶段。

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

列表用双重散列解决冲突。函数H1用来计算散列地址,当

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

T的状态为:

012345678910It12

vt\\xi\\\i\\)i

T:III67|72II|||34|||||

i______t____ii_____i____i____i______i_i______i_____i_____i____i____i

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

15.若一颗二叉树中只有叶结点和左右子树皆非空的结点,设叶结点的

个数为n,则左右子树皆非空的结点个数为o

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

当且仅当该调度是_____O

17.设关系R(U),X,YEU,X-Y是一个函数依赖,如果存在X,,

使X,一Y成立,则称函数依赖X-Y是」]_函数依赖。

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

19用户调用、建立和【】文件操作来申请对文件的使用权。

20.计算机系统中发生某个事件时,CPU暂停正在执行的程序,转去执

行相应的程序,执行完后再返回原先程序断点继续执行的过程,称为

________________O

三、单选题(10题)

21.如果两个实体之间的联系是1:M,则实现1:M联系的方法是()

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

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

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

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

22.FoxProDOS是()

A.DOS下的数据库B.DOS支持下的数据库管理系统C.为DOS做的

FoxProD.DOS下的文字处理系统

23.设散列函数为H(k)=kmod7,现欲将关键码23,14,9,6,30,12,

18依次散列于地址。〜6中,用线性探测法解决冲突,则在地址空间。〜

6中,得到的散列表是

A.14,6,23,9,18,30,12

B.14,18,23,9,30,12,6

C.14,12,9,23,30,18,6

D.6,23,30,14,18,12,9

24.物理结构设计的任务是设计数据库的()

A.存储格式B.存取方法C.存储结构与存取方法D.存储模式

25.在关系中选取满足某个条件的元组的关系代数运算称之为()

A.选中运算B.选择运算C.投影运算D.搜索运算

26.下列关于数据库重构的说法中,错误的是________。

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

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

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

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

27.概念模型()

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

立于DBMS

28.SQLServer数据库是由文件组成的。下列关于数据库所包含的文件的

说法中,正确的是_________O

A.一个数据库可包含多个主要数据文件和多个日志文件

B.一个数据库只能包含一个主要数据文件和一个日志文件

C.一个数据库可包含多个次要数据文件,但只能包含一个日志文件

D.一个数据库可包含多个次要数据文件和多个日志文件

29.一个公司有若干名兼职人员,而每个兼职人员有可能在多家公司打

工,则公司与兼职人员之间具有

A.一对一联系B.一对多联系C.多对多联系D.多对一联系

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

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

模式

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

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

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

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

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

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

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

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

请勿改动主函数mMn()和输出数据函数wrhcDATO的内容.

1!tinclude<stdio.h>

intcntrsum;〃定义整型全局受量fu和.uw

3voidwriteDAT();

4voidcountValue()

5

6

7

8voidmain()

9

ent-sum-0;〃蛤全局交Ilene.,呐依物值为Q

countvalue();〃调用#故countvaluo<),实现届11要求的功能

12printfl”满足条件的自然数的个数,td\n*rcnt);

13printf("满足条件的自然数值的和■%d\n*\sum);

14writeDAT();

16voidwriteDAT()

18FILEwfp;

19fp-fopen("out.daL,**ww);

H

20fprintf,*%d\nid\n/ent,sum);

21fclose(fp);

22

32.已知在文件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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

程序中已定义教组,a[200].b(200],己定义型ent

请勿改动数据文件in.dai中的任何数据,主必数mun()、港函数EdDatO和可函数writeDatO的内容.

Iinclude<stdlo.h>

IdefineMAX200

3inta(MAX),b(MAXHent-0;

4voidwriteDatO;

5voidjsValO

6

7

9voidrcadDat()〃从in.dat文件中博取200个网粒数存入数爆a中

10

11inci;

12FILE*fp;

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

14for(i-0;i<MAX;

15fscanf(fp^[i])

16fclose(fp);

17

18voidmain()

19

20inti;

21readDat();

22jsValO;〃,用暄效Val",实现量H要求的功能

23printf("满足条件的敷,♦d\n",ent);

24for(i-0;i<ent;

25printf(w%dIb(i]);

26printf("Xn");

27writeDatO;

28

29voidwriteDat()〃尼计律结果entUAttmb中符合条件的四位数•出到out4Bi文件中

30

31FILE*fp;

32inti;

33fp•fopen(Rout.datw,*wR);

34fprintf(fp,ent);

35for(i-0;i<ent;,+♦)

36fprintf(fpr*%d\n"rb[i]);

37fclose(fp);

38

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

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

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

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

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

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

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

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

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

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

进行处理。

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

的内容。

•include<stdio.h>

•include<string.h>

3;flnclude<ctype.h>

4Junsignedcharxx(50][80];

5\

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

6;intReadDat(void);

voidWriteDat(void);

工voidencryptChar()

9I

10»

11;

12;voidmain()

13i(

14;if(ReadDat())

15!(

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

17;return;

18!)

19;encryptChar0;

20iWriteDatO;

21;]

,•从文科ilL&t中途取・英文文章,存入我无林号字料*诙镇M中•/

22!intReadDat(void)

23;(

24;

FILE*fp;

25jinti-0;

26unsignedcharap;

ww

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

28return1;

29while(fgets(xxli],80,fp)!-NULL)

30(

31p-atrchr(xx(ijr*\n*);

32if(p)*p-0;

33if

34

35maxline®1;

36fclose(fp);

37return0;

38)

/•把姑梁3一出到文件WL&t中•/

39voidWriteDat(void)

40

41FILE*fp;

42inti;

43fp-fopen(wout.dat",;

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

45(

46printfflsXn-,xx(i]);

R

47fprlntf(fp/"%s\nrxx(ij);

48

fclose(fp);

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

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

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

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

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

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

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

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

程序中已定义故蜗;a(200J.b(200).已定义变・,cn<

请勿也动数照文件Edu中的任何畋据、主由败nuinO、读崩散EidD”)和写幡数*tcDalO的内容.

•include<stdio.h>

IdefineMAX200

3inta(MAXhb(MAX)rent-0;

4voidwriteDatO:

5voidjsV31()

6

7

8

9voidreadDat()

10

11int1;

12FILE*fp;

13fp•fopen("in.dat**,*rn);

14for(l-0;i<MAX;…)

15fscanf(fp,&a(i]);

16fclose(fp);

17

18voidmain()

19

20inti;

21readDat();

22

23prirUfL满足条件的数ent):

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

25printf(**d-,b(i]);

26printf("Xn**);

27vrrlteDat();

28

29voidwrltoDat<)

30

31FILE・fp;

32int1;

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

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

35for(i-0;i<ent;1«♦)

H

36fprintf(fpr*ld\nr

37fclose(fp);

38

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

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

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

例*h,字符卑中厥有内容为:MnJ23xyZ,则■用途曲数后,结果为‘nJ23”ZM.

Str都分源程序存在U«.c文件中.

请勿改动数据文件in.diM中的任何数据.E法数miin()和,出由数readwrilcDATO的内容.

1»finclude<stdio«h>

2!IInclude<strln9»h>

3!#defineN81〃定义史,・N,KttWf11

4;voidreadwriteDAT();

5!voidchg(chares)

6!(

•»•

8•}

9\main()

10•(

11Jchara(N);

121printt(**Enterastring:");gets(a);

13iprintf<**Theoriginal3txingis:*):puts(a);

14!chg(a);

15;printf(R,rtiestringaftertnodified:,1);

16•puts(a);

17•readwriceDAT();

18;I

•in.dat中*入字符申*输字符由安・•・叫用/•(:制(9)对字料*植照■目的要求近lj社理,ME社友结果£入用文件

;out.dat中•/

191voidreadwriteDATO

20;(

21-inti;

22jchara[N];

23-FILE•rfr

H

24;ri•fopen("ln.dat*r*r);

25iwf■fopen("out«datw,Rw");

26!for(1»0;1<10;

27;(

28:fscanf〃从文fHn.dat中金敢个?杓EM除字符木・

29、chg(a);〃同用chq(«)财字符串・IS厅依内

30;fprintf(wf,*ts\n",a);〃把处理站寰写入列out.dat文件中

3Xj>

32;fclose(rf);

33•fclove(w£);

•i

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

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

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

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

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

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

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

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

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

;*include<stdlo.h>

iIdefineMAXNUM200

3!intxx[MAXNUM);

4iinttotNum•0;〃文件in.dat中共利多少个正整h

5;inttotCnt-0;〃符合条件的正■敷的小敷

6;doubletotPjz•0.0;〃平均值

7;intReadDat(void);

85voidWclteDat(void);

9jvoidCalValue(void)

10;

11!

12i

13jvoidmainO

14

15int1;

16ford-0;i<MAXNUM;"♦)

17xx(i]■0;

18if(ReadDat())

19(

20prlntf("数据文件ln.dat不能打开!\0。八十”

21return;

22)

23CalValue();

24print;。L文件ln.dat中共有正整数・$d个\n**・totNum);

25printf符合条件的正整数的个数-*(1个\口",totCnt);

26prlntf「平均值totPjz);

27WriteDat();

28)

,•速取这齐F个正整收并存入数燃u中•/

29intReadDat(void)

30(

31FILE*£p;

32inti•0;

33if((fp*fopen("ln.dat**,"r*"))-r<ULL)

34return1;

35while(!feof(fp)>

36(

37fscanfffp,"Qd.".txx[i**));

38)

39fclose(fp);

40return0;

41I

/・ie计算站票存入文件。M.diu中•/

42voidWriteDat(void)

43(

44FILE•fp;

45fp■fopen(**out.datw,**wH);

46fprintf(fp,"%d\ntd\nt.21f\nn,totNum,totCnt,totPjz);

47fclose(fp>;

48

38.已知在文件in.dat中存有100个产品销售记录,每个产品销售记录

由产品代码dm(字符型4位),产品名称me(字符型10位),单价dj(整

型),数量si(整型),金额je(长整型)五部分组成。其中:金额=单价*数

量。函数ReadDat读取这100个销售记录并存入结构数组sell中。请编

制函数SortDat,其功能要求:按产品名称从大到小进行排列,若产品名

称相同,则按金额从大到小进行排列,最终排列结果仍存入结构数组sell

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

提示:若中间变量为PROtemp,则可以直接使用结构赋值语句进行解

题:产品名称比较请用函数strcmp进行解题。例如:sell[i]=temp;

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

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

,include<3tdio.h>

2finclude<string.h>

3*include<stdlib.h>

4tdefineMAX100

Stypedefstruct

6(

7chardm{5];/•产品代码•/

8Charme(11];/•产品名称•/

9intdjv/•,阶•/

10intsi;/•tt*•/

11longje;/•金0•/

12IPRO;

13PROsellfMAXJ;

14voidReadDat();

15voidWriteDat();

16voidSortDat()

17

18

19

20voidmainO

21<

22memset(sell,0,sizeof(sell));

23ReadDat();

24SortDat<)i

25WriteDat0;

26)

27voidReadDat0

28(

29FILE*fp;

30charstr[80]rch[11];

31int1;

32fp-fopen(win.dat*/wr*);

33for(1-0;1<100;

34i

35fgets(str/80,fp);

36memepy(sell[i].dm/str,4);

37tnemcpy(sell(l).nc,str♦4・10):

38nemcpy(chtstr^X4r4);ch[4]«0;

39sell(i)«dj-atol(ch);

40memcpy(ch«str*18f5);ch[5)-0/

41sell|i].si•atol(ch)i

42soilU).je•(long)sell[1].dj•sell(1].91;

43[I

44»fclose(fpj;

45j)

46!voidWriteDat()

47i1

48FILE*fp;

•;,二inti;

SOfp-fopcn(wout.dat",

SIford-0J1<100;

52I

Sprintf(fp«*is,814dI5dll01d\n**tsell(i).dm«sell(l|.dj,aellfi].slr

sellli).je);

S4

55fclo9tf(fp);

56

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

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

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

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

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

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

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

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

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

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

到Out.dat文件中。

注意$部分源程序存在tcstx文件中.

程序中已定义数组:a|200],b[200].已定义变iLent

Mf勿改动数榭文件in.dat中的任何数据.I浦数main(h读函数rcadDatO和写函数writeDatO的内容.

*include<stdio.h>

2IIdefineMAX200

3;intalMAX],b[MAX],ent-0;

4;voidwriteDat();

5!voidjsVal()

6j

7J

6i

9JvoidreadDat()〃从s.dat文件中读取20。个四位数存入数ifia中

10;(

11•int1;

12;FILE・fp;

13\wRH

fp■fopen(in.dat"rr);

14jfor(1•0;i<MAX;

15;fscanf(fp,Fd”,<af1]>;

16!fclose(fp);

17jI

18;voidmain()

19!t

20;int1;

21\readDat();

22•isValO;“■阳嫉CHwaU),家理要柬的功缝

23printf("满足条件的数,qd\n”,ent);

24for(i•0;1<ent;

25printf("IdL

26printf;

27writeDat();

28

29voidwriteDat()〃把计年站粤h以及数的b中符合条件的四位数■出到即做文件中

30(

31FILE#fp;

32inti;

M

33fp•fopen("out.datr**«**);

34fprlntf(fp^ent);

35for(1-0;1<ent;,♦今)

ww

36fprintf(fp,%d\n<b(i]);

37fclose(fp);

38

40.

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

1-Iinclude<stdio.h>

2«fInclude<string.h>

3:charxx[50)18011

intmaxline•0;/•文营的总行数•/

5intReadDat(void);

6voidWrlteD&t(void);

八磔行为・位IC字符申中的所有小耳字母改写及方字用的£一个半理,批量的字母♦・用生写1>平母&M他字符保持不曳•/

7voidConvertCharD(void)

8

9

10

11voidmainO

12(

13if(ReadDatO)

14I

15printf广数据文件m.dat不,打开!\n\007");

16return;

17

iaConvertCharD(>/

19WriteDatO;

20J

/•从文介m.dat中博以・英文文•存入制字制♦敢出«中•/

21intReodDAt(void)

22(

23FILE*fp;

24int1-0;

25char*p;

26if("p-fopenLin.dat".-r"))-NULL)

27return1;

28while(fgets(xx[i]980«fp)•-NULL)

29(

3。p•strcbr(xx(i],•\n*>;

31if(p)*p-0;

32

33

34tnaxllne,1;

35fclose(£p);

36return0;

37)

/・ie外果”■出*文甘皿山中•/

38voidWriteDat(void)

39(

40FILE*£p;

41int1;

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

43for(1•0?i<maxllne;

44

45printf("ts\n"rxxf1J);

46fprintf(fpfxx[11);

47>

4gfclose(fp);

49

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

41.在SQLServer2008中,设有教师表(教师号,姓名,所在部门号,

职称)和部门表(部门号,部门名,高级职称人数)。请编写满足下列要

求的后触发型触发器(设触发器名字为tri_zc)。每当在教师表中插入一

名具有高级职称(“教授”或“副教授”)的教师时,或者将非高级职称教

师的职称更改为高级职称时,均修改部门表中相应部门的高级职称人数。

(假设一次操作只插入或更改一名教师的职称)(1。分)

42.设有商品表(商品号,商品名,单价)和销售表(销售单据号,商品

号,销售时间,销售数量,销售单价)。其中,商品号代表一类商品,商

品号、单价、销售数量和销售单价均为整型。请编写查询某年某商品的

销售总毛利的存储过程,毛利=销售数量x(销售单价一单价)。要求商

品号和年份为输入参数,总毛利用输出参数返回。(10分)

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

43.下列关于SQLServer2008身份验证模式的说法,错误的是()。

A.在“Windows身份验证模式”下,不允许sa登录至USQLServer服务器

B.在“Windows身份验证模式”下,所有Windows用户都自动具有登录到

SQLServer服务器的权限

C.不管是哪种身份验证模式,Windows中的Administrator无需授权就可

登录到SQLServer服务器

D.安装好SQLServer之后,可以根据需要随时更改身份验证模式

44.有如下的索引文件:

指针号

1B-3011

1B-2003

指针号

IX-100700

西服

2X-0021500

洗衣机

3J-0992300

彩电

则该索引文件称为()。

A.稀疏索弓IB.聚集索弓|C.稠密索弓|D.非聚集索弓|

参考答案

1.C解析:机器语言和汇编语言都是面向机器的语言,而高级语言则是

面向问题的语言。高级语言与具体的计算机硬件无关,其描述方法接近

于人们对求解过程或问题的表达方式,容易理解、掌握和记忆,而且通

用性和可移植性好。因此本题正确答案为选项C。

2.A解析:当前应用开发对工具的总需求有:提高开发和运行效率;降

低开发和维护费用;应用系统具有先进性;代码的可重用性。

3.B解析:E-R图转换成关系模型的过程,属于数据库设计的逻辑设计

阶段。

4.B解析:程序在装入内存之前,通常为逻辑地址形式,有时甚至在装

入内存后,程序仍为相对地址形式。为了保证CPU执行程序指令时能

正确访问存储单元,需要将用户程序中的逻辑地址转换为可由机器直接

寻址的物理地址,这一过程称为地址映射。

5.C解析:一个实体类型转换成一个关系模式时,实体的属性就是关系

的属性,实体的码就是关系的码。具有相同码的关系的模式可以合并。

6.D解析:本题是对数据库管理系统的层次结构的考查。按处理对象的

不同,依最高级到最低级的次序来划分,依此为:应用层、语言翻译处

理层、数据存取层、数据存储层。因此本题的答案为选项D。

7.C解析:在二叉树的先序遍历、后序遍历和中序遍历中,对叶子结点

的访问顺序都是左叶子在右叶子前面,因此叶子结点的先后顺序始终一

样。

8.B解析:批处理多道系统能极大地提高计算机系统的工作效率,具体

表现为:多道作业并行工作,提高了处理器的利用率,•作业调度可以按

一定的组合选择装入主存储器的作业,可充分利用计算机系统的资源;

作业执行过程中,直接在高速的磁盘上存取信息,从而缩短了作业执行

的时间,使单位时间内的处理能力得到提高;作业成批输入,自动选择

和控制作业执行,提高了系统的吞吐率。

9.D解析:单链表中指针p所指结点后插入结点Q的操作是qT-link:=

pt-link;pT.link:=q。掌握在链表指针的数据结构中,如何进行删除操

作。

10.B解析:接入Internet的某台计算机要和另一台计算机通信就必须确

切地知道其IP地址。

11.结构结构解析:本题是对结构冲突概念的考查。当将局部E-R图集

成为全局E-R图时,可能存在三类冲突属性冲突、结构冲突和命名冲突。

其中结构冲突是指当将局部E-R图集成为全局E-R图时,如果同一对

象在一个局部E-R图中作为实体,而在另一个局部E-R图中作为属性

的现象。

12.基于IP广播组【解析】基于IP广播组的虚拟局域网是动态建立的,

由代理对虚拟局域网中的成员进行管理。

13.物理物理解析:数据库设计的四个阶段是:需求分析、概念设计、

逻辑设计和物理设计。其中物理设计阶段的主要任务是:对数据库中数

据在物理设备上的存放结构和存取方法进行设计。“为哪些表、在哪些字

段上、建什么样的索弓I”便是为数据库设计索引存放的方法。

需求分析阶段的任务是:对现实世界要处理的对象(组织、部门、企业等)

进行详细调查,在了解新系统的概况、确定新系统功能的过程中,收集

支持系统目标的基础数据及其处理方法。

概念设计的任务是产生反映企业组织信息需求的数据库概念结构,即概

念模型。

逻辑设计的目的,是从概念模型导出特定的DBMS可以处理的数据库

的逻辑结构(数据库的模式和外模式),这些模式在功能、性能、完整性、

一致性约束及数据库可扩充性等方面都满足用户的要求。

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

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

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

15.n-l

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

可串行化的概念。

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

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

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

17.部分在R(U)中,如果X—〉Y,但Y不完全依赖于X,则称Y对X

部分函数依赖。

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

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

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

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

议类型。

19.打开

打开

用户调用建立和打开文件操作来申请对文件的使用权。

20.中断中断解析:中断是指当计算机系统中发生某个事件时,CPU暂

停正在执行的程序,转去执行处理该事件的程序,执行完后再返回原先

程序断点继续执行的过程。引起中断的事件称为中断源。

21.C

22.B

23.B解析:将23,14,9,6,30,12,18依次按散列函数K(k)=kmod7计算,

并按线性探测法解决冲突,得到的散列结果是14,18,23,9,30,12,6O

24.C

25.B

26.C

27.B

28.D

29.C解析:本题主要考查了实体之间多对多的联系。如果对于实体集

A中的每一个实体,实体集B中至多有一个实体与之联系,反之亦然,称为

一对一联系;如果对于实体集A中的每一个实体,实体集B中有n个实体

与之联系;对于实体集B中的每一个实体,实体集A中至多有一个实体与

之联系,称实体集A与B的联系为一对多联系;如果对于实体集A中的

每一个实体,实体集B中有n个实体与之联系;对于实体集B中的每一个

实体,实体集A中有m个实体与之联系,称为多对多联系。所以C)正确。

30.A

31.\n【审题关键句】千位+百位等于十位十个位,且千位+百位等于个

位.千位的10倍。计算并输出这些四位自然数的个数ent以及这些数的

和。

\n【解题思路】

\n①首先定义一个循环变量i,以及分别用来存放四位数分解之后各位

数的变量qw(千位)、bw(百位)、SW(十位)和gw(个位)。

\n②通过for循环依次对数组中的每个四位数进行分解,循环初值为

1000,终值为5000,每循环一次,循环变量i的值加1。每分解一个四

位数,根据题目要求,判断其“千位十百位二十位+个位”的条件是否满足,

同时判断“(千位+百位)=(个位-于位)*10"的条件是否满足,两个条件之间

用运算符进行连接。当同时满足以上两个判断条件时,计数变量ent的

值加1,同时将该四位数累加到求和变量sum中,最终得到满足条件的

四位自然数个数ent及它们的和sum0

\n本题中ent和sum变量在源程序中已经定义,在该子程序中就不需要

再重新定义了。

\n【参考答案】

\n

\n

32.\n【审题关键句】计算金额,按金额从小到大进行排列,相同的则按

产品代码从小到大排列,结果存入结构数组。

\n【解题思路】

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

求有所不同,参考答案的第8行进行修改即可。

\n【参考答案】

\n

\n

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

到小排序。

\n【解题思路】

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

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

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

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

温馨提示

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

评论

0/150

提交评论