2022年安徽省滁州市全國計算機(jī)等級考試數(shù)據(jù)庫技術(shù)真題(含答案)_第1頁
2022年安徽省滁州市全國計算機(jī)等級考試數(shù)據(jù)庫技術(shù)真題(含答案)_第2頁
2022年安徽省滁州市全國計算機(jī)等級考試數(shù)據(jù)庫技術(shù)真題(含答案)_第3頁
2022年安徽省滁州市全國計算機(jī)等級考試數(shù)據(jù)庫技術(shù)真題(含答案)_第4頁
2022年安徽省滁州市全國計算機(jī)等級考試數(shù)據(jù)庫技術(shù)真題(含答案)_第5頁
已閱讀5頁,還剩33頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

2022年安徽省滁州市全國計算機(jī)等級考試

數(shù)據(jù)庫技術(shù)真題(含答案)

學(xué)校:班級:姓名:考號:

一、1.選擇題(10題)

i.下列關(guān)于函數(shù)依賴的敘述中,是不正確的。

A.由X->Y,X->Z,有X->YZ

B.由XY->Z,有X->Z,Y->Z

C.由X->Y,WY->Z,有XW->Z

D.由X->Y及Z包含于Y,有X->Z

2.在數(shù)據(jù)庫技術(shù)中,實體-聯(lián)系模型是一種

A.概念數(shù)據(jù)模型B.結(jié)構(gòu)數(shù)據(jù)模型C.物理數(shù)據(jù)模型D.邏輯數(shù)據(jù)模型

3.對于學(xué)生信息表:student(sno,sname,sex,age,dept),能夠得到年

齡在20歲到22歲之間的學(xué)生的姓名和學(xué)號的語句是

A.SELECT*FROMstudentWHEREageBETWEEN20AND22

B.SELECTsname,snoFROMstudentWHEREageBETWEEN20AND

22

C.SELECTsname,snoFROMstudentWHEREage>=20

D.SELECTsname,snoFROMstudentWHEREage<=22

4.文件系統(tǒng)采用多級目錄結(jié)構(gòu)的好處是

A.可以進(jìn)行多道程序設(shè)計B.提高內(nèi)存利用率C.不同用戶可以給不同

文件取相同的名字D.文件可以共享

5.允許使用者對數(shù)據(jù)庫中的抽象數(shù)據(jù)提出請求(包括查詢和修改),支持

數(shù)據(jù)庫的各種操作的軟件系統(tǒng)稱為0

A.命令系統(tǒng)B.數(shù)據(jù)庫系統(tǒng)C.操作系統(tǒng)D.數(shù)據(jù)庫管理系統(tǒng)

6.下列敘述錯誤的是

A.登記日志記錄時,登記的順序嚴(yán)格按照事務(wù)的并發(fā)執(zhí)行中操作發(fā)生的

實際順序

B.先修改相應(yīng)的數(shù)據(jù)庫,然后把日志記錄寫到外存的日志文件中

C.如果先寫日志記錄,沒有修改數(shù)據(jù)庫,那么發(fā)生故障時可以進(jìn)行

UNDO,也可以進(jìn)行REDO

D.系統(tǒng)必須遵循先寫日志的原則

7.分時操作系統(tǒng)追求的目標(biāo)是

A.高吞吐率B.充分利用內(nèi)存C.快速響應(yīng)D.減少系統(tǒng)開銷

8.對長串為n的順序線性表進(jìn)行刪除元素的操作,如果刪除每一個元

素的概率相同,則刪除一個元素移動元素的平均次數(shù)為

A.n/2B.(n-l)/2C.(n+l)/2D.n

9.在對象-關(guān)系數(shù)據(jù)庫系統(tǒng)中,創(chuàng)建新的基本數(shù)據(jù)類型需要說明的信息

包括

I.類型名

II.類型的存儲信息

Ill.類型的地址

IV.類型與ASCII碼之間的轉(zhuǎn)換

A.I、II、和IHB.I、II、和IVC.II、HI和WD.全部

10.SQL語言的GRANT和REVOKE語句主要用來維護(hù)數(shù)據(jù)庫的

()。

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

二、填空題(10題)

H.若X-Y但Y不完全函數(shù)依賴于X,則稱Y對X【】。

12.在TCP/IP的參考模型中,HTTP協(xié)議定義在___層。

13.RC5算法中使用了3種運(yùn)算:加和循環(huán)。

14.IP數(shù)據(jù)報的源路由選項分為兩類,一類為嚴(yán)格源路由,另一類為

___________源路由。

15.進(jìn)程之間的聯(lián)系稱之為進(jìn)程通信,是進(jìn)程通信的工具。

16.在請求頁式存儲管理中,若采用FIFO頁面淘汰算法,則當(dāng)分配的

頁面數(shù)增加時,【】的次數(shù)可能增加也可能減少。

17.用戶檢索POP3郵件服務(wù)器的過程可以分成3個階段:

事務(wù)處理階段、更新階段。

18.在嵌入式SQL中,為了區(qū)分SQL語句和主語言語句,在每一個SQL

語句的前面加前綴0

19.數(shù)據(jù)庫中,每個事務(wù)都感覺不到系統(tǒng)中其他事務(wù)在并發(fā)地執(zhí)行,這

一特性稱為事務(wù)的0

20.進(jìn)行DES加密時,需要進(jìn)行輪的相同函數(shù)處理。

三、單選題(10題)

21.在SQLServer2008的系統(tǒng)數(shù)據(jù)庫中,為調(diào)度信息和作業(yè)歷史提供存

儲區(qū)域的是

A.MasterB.ModelC.PubsD.Msdb

22.為了考慮安全性,每個部門的領(lǐng)導(dǎo)只能存取本部門員工的檔案,為此

DBA應(yīng)創(chuàng)建相應(yīng)的()o

A.視圖(view)B.索弓|(index)C.游標(biāo)(cursor)D.表(table)

23.以下關(guān)于OSI的描述中,錯誤的是()。

A.OSI詳細(xì)說了各層提供的服務(wù),但各層提供的服務(wù)與這些服務(wù)如何實

現(xiàn)無關(guān)

B.OSI不是一個標(biāo)準(zhǔn),只是一個在制定標(biāo)準(zhǔn)時所使用的概念性的框架

C.OSI提供了一系列可以實現(xiàn)的方法

D.OSI中采用了三級抽象

24.磁盤的讀寫單位是()

A?塊B扇區(qū)C.簇D.字節(jié)

25.順序程序和并發(fā)程序的執(zhí)行相比()

A.基本相同B.無法確定C.并發(fā)程序執(zhí)行總體上執(zhí)行時間快D.順序程

序執(zhí)行總體上執(zhí)行時間快

26.下列關(guān)于SQLServer數(shù)據(jù)庫服務(wù)器登錄賬戶的說法中,錯誤的是

A.登錄賬戶的來源可以是Windows用戶,也可以是非Windows用戶

B.所有的Windows用戶都自動是SQLServer的合法賬戶

C.在Windows身份驗證模式下,不允許非Windows身份的用戶登錄到

SQLServer服務(wù)器

D.sa是SQLServer提供的一個具有系統(tǒng)管理員權(quán)限的默認(rèn)登錄賬戶

27.ENIAC所用的主要元件是()

A.集成電路B.晶體管C.電子管D.以上答案都不對

28.在概念設(shè)計階段,需要確定實體型特征由哪些屬性組合而成,這個

工作是對數(shù)據(jù)進(jìn)行什么抽象?()

A.分類B.聚集C.概括D.數(shù)據(jù)抽象

29.某數(shù)據(jù)庫應(yīng)用系統(tǒng)中,數(shù)據(jù)庫管理員發(fā)現(xiàn)某個查詢功能是用多表連接

操作實現(xiàn)的,此操作性能較差。在保證功能不變的前提下,若要提高該

查詢的執(zhí)行效率,下列方法中可行的是()

A.將此查詢語句放置在視圖中,使用視圖實現(xiàn)該查詢操作

B.修改實現(xiàn)此功能的查詢語句,將連接查詢改為嵌套查詢

C.將此功能涉及到的表進(jìn)行合并,然后對合并后的表進(jìn)行查詢

D.將此查詢語句放置在存儲過程中,通過調(diào)用存儲過程實現(xiàn)該查詢操作

30.在SQLSever中創(chuàng)建用戶數(shù)據(jù)庫,其主要數(shù)據(jù)文件的大小必須大于

A.master數(shù)據(jù)庫的大小B.model數(shù)據(jù)庫的大小C.msdb數(shù)據(jù)庫的大小

D.3MB

四、C語言程序設(shè)計題(10題)

31.已知數(shù)據(jù)文件in.dat中存有200個四位數(shù),并已調(diào)用讀函數(shù)readDat

把這些數(shù)存入數(shù)組a中,請考生編制一函數(shù)jsVal,其功能是:把一個四

位數(shù)的個位數(shù)位置上的值減去千位數(shù)位置上的值再減去百位數(shù)位置上

的值最后減去十位數(shù)位置上的值,如果得出的值大于等于零且原四位數(shù)

是偶數(shù),則統(tǒng)計出滿足此條件的個數(shù)ent,并把這些四位數(shù)按從小到大

的順序存入數(shù)組b中,最后調(diào)用寫函數(shù)writeDat把結(jié)果ent以及數(shù)組b

中符合條件的四位數(shù)輸出到Out.dat文件中。

注意:部分源赤用存在Itttc文件中.

鞋序中已定義數(shù)組:4200],b(200],已定義交量,ent

請勿改動數(shù)據(jù)文件in.dax中的任何數(shù)據(jù).主激致諛青畋ZDatO和寫由敷writeD8to的內(nèi)容?

1!Iinclude<?tdio.h>

2IIdefineMAX200

3inta[MAXJ,b(MAXj/ent

4voidwriteDat();

voidjsValO

6

7

8

9voidreadDat(>

10

inti;

FILE-fp;

fp?fopen(win.daf,,nrn);

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

fscanf(fpr"Rd”,&a[i]);

fclose(fp);

18voidmain()

19

20inti;

21readDat();

22jsVal();

23printf「渦足條件的JRfd'rr.cnt):

24ford?0;i<ent;

25printf",b\i]);

26printf(w\nw);

27writeDat();

28

29voidwriteDat()

30

31FILE?fp;

32inti;

33fp?fopen(Rout.datw,"w");

34fprintf(fp#7d\n",cnt>;

35for<i?0;i<ent;

36fprintf(fpr7d\rT.bl:])

37fclose(fp);

38

32.函數(shù)ReadDat實現(xiàn)從文件in.dat中讀取一篇英文文章存入到字符

串?dāng)?shù)組XX中,請編制函數(shù)ConvertCharA,其函數(shù)的功能是:以行為單

位把字符串中的所有小寫字母改寫成該字母的下一個字母,如果是字母

z,則改寫成字母a,大寫字母和其他字符保持不變。把已處理的字符串

仍按行重新存入字符串?dāng)?shù)組XX中。最后main函數(shù)凋用函數(shù)WriteDat

把結(jié)果XX輸出到文件Out.dat中。

例:原文】Adb.Bcdza

abck.LLhj

結(jié)果:Acc.Bdcab

原始數(shù)據(jù)文件存放的格式是,每行的寬度均小于80個字符,含標(biāo)點符號和空格.

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

請匆改動主函數(shù)main。、讀函數(shù)RedDai。和■出喻數(shù)WriteDatO的內(nèi)容.

1.?include<stdio,h>

2;tincludeOtting.h>

3;charxx[50][80];

4jintmaxline,0;/?文量的總h數(shù)?/

5jintReadDat(void);

6"voidWriteDat(void);

7;voidConvertCharA(void)

8

9

10

11|voidmain()

12!I

13?if(ReadDat())

14;?

15printf("數(shù)據(jù)文件in.dat不能打開!\n\007");

16return;

17i)

18ConvertCharA(>;

19jWrltoDat();

20JJ

從文件中it取一■[英文文章存入費(fèi)I字將率依笆u中〃

21;intReadDat(void)

22!(

23;FILE#fp;

24[inti-0;

25ichar*p;

26Jif((fp-fopen("in.daf,HrR))-NULL)

27return1;

28;while(fgeta(xx(i]#80ffp)!-NULL)

29>(

30p-strchr(xx[i]9W

31if(p)*p-0;

32

33:\

34?maxline-i;

35?fclose(fp);

36?return0;

37iI

!/?1E姑果u?出川文仆out&t中?/

38;voidWriteDat(void)

39!(

40iFILE.fp;

41?int1;

w

42?fp-fopen(*out.datr*w**);

43;ford-0;i<maxline;

44(

ww

45printf(%s\nrxx(i]);

46fprintf(fp,*%s\n*rxx(i]);

471\

48!fclose(fp);

49

33.已知在文件in.dat中存有100個產(chǎn)品銷售記錄,每個產(chǎn)品銷售記錄

由產(chǎn)品代碼dm(字符型4位),產(chǎn)品名稱me(字符型10位),單價dj(整

型),數(shù)量si(整型),金額je(長整型)五部分組成。其中:金額=單價*數(shù)

量。函數(shù)ReadDat讀取這100個銷售記錄并存入結(jié)構(gòu)數(shù)組sell中。請編

制函數(shù)SortDat,其功能要求:按金額從小到大進(jìn)行排列,若金額相等,

則按產(chǎn)品代碼從小到大進(jìn)行排列,最終排列結(jié)果仍存入結(jié)構(gòu)數(shù)組sell中。

最后main函數(shù)調(diào)用函數(shù)WriteDat把結(jié)果輸出到文件out.dat中。

提示:若中間變量為PROtemp,則可以直接使用結(jié)構(gòu)賦值語句進(jìn)行解

題。

例如:sell[i]=temp;

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

請勿改動主函數(shù)main、讀函數(shù)ReadDat和輸出函數(shù)WriteDat的內(nèi)容。

;Iinclude<stdio.h>

2!Iinclude<9trinq.h>

3;IIncludeOtdlib.h>

4:tdeflnoMAX100

5jtypudofstruct

6!(

7chardm(5);/?代碼?/

8charme(1111/,產(chǎn)品名”?/

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

34.在文件in.dat中存有若干個(個數(shù)<200)四位數(shù)字的正整數(shù),函數(shù)

ReadDat讀取這若干個正整數(shù)并存入數(shù)組XX中。請編制函數(shù)CalValue,

其功能要求:1,求出該文件中共有多少個正整數(shù)totNum;2.求出這些

正整數(shù)中的各位數(shù)字之和是偶數(shù)的數(shù)的個數(shù)totCnt,以及滿足此條件的

這些正整數(shù)的算術(shù)平均值totPjz0最后main函數(shù)調(diào)用函數(shù)WriteDat把

所求的結(jié)果輸出到Out.dat文件中。

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

請勿改動數(shù)據(jù)文件in.dat中的任何數(shù)據(jù),主函數(shù)main、讀函數(shù)ReadDat

和輸出函數(shù)WriteDat的內(nèi)容。

linclude<stdlo?h>

?defineMAXNUM200

3intxx[MAXNUM];

4inttotNum-0;〃文仆2n.st中共有多少個正整數(shù)

5inttotCnt-0;〃部條件的正事數(shù)的個數(shù)

6doubletotPjz-0.0;〃平均值

7intReadDat(void);

8voidWriteDat(void);

9voidCalValue(void)

10

11

12

13voidmain0

14(

15inti;

16ford-0;i<MAXNUM;f)

17xx(i)?0;

18if(ReadDatO)

19

20據(jù)文件in.dat不能打開!\007\nw);

21return;

22

23CalValue();

24printf("文件in.dat中共有正整數(shù)個\n**.totNum);

25prictf("符合條件的正核數(shù)的個數(shù)7d個\n”.totCnt);

26printfL平均(8?*.21f\n",totPjz);

27WriteDat();

28?

“讀取這若干個正鱉數(shù)并存入數(shù)fli*x中”

29intReadDat(void)

30(

31FILE*fp;

32inti?0;

HwwM

33if((fp-fopen("in.datrr))NULL)

34return1;

35while(!feof(fp))

36(

37fscanf(fp#

381

39fclose<fp);

40return0;

41}

/?忙計算蠟里存入文件。仇?&匕中?/

42voidWrlteDat(void)

43!{

44FILE*fp;

4Sfp-fopen("out.dat",

46fprlntf(fp/"%d\nid\nt.21f\n*rtotNumrtotCnt/totPjz);

47fclose(fp);

48

35.已知數(shù)據(jù)文件in.dat中存有200個四位數(shù),并已調(diào)用讀函數(shù)readDatO

把這些數(shù)存入數(shù)組a中,請考生編制一函數(shù)jsVal,其功能是:依次從數(shù)

組a中取出一個四位數(shù),如果該四位數(shù)大于該四位數(shù)以后的連續(xù)五個數(shù)

且該數(shù)是奇數(shù)(該四位數(shù)以后不滿五個數(shù),則不統(tǒng)計),則統(tǒng)計出滿足此

條件的個數(shù)ent并把這些四位數(shù)按從小到大的順序存入數(shù)組b中,最后

調(diào)用寫函數(shù)writeDat把結(jié)果ent以及數(shù)組b中符合條件的四位數(shù)輸出到

Out.dat文件中。

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

程序中已定義數(shù)組:a[200],b[200],已定義變量:ent

請勿改動數(shù)據(jù)文件in.dat中的任何數(shù)據(jù)、主函數(shù)main、讀函數(shù)readDat

和寫函數(shù)writeDat的內(nèi)容。

?include<stdio.h>

fdefineMAX200

3inta(MAX)9b[MAX)tent?0;

4voidwriteDat();

5voidjsVal()

6

7

8

/?readDat()從數(shù)IN文件in.dit中法隊200個四位數(shù)〃入效能?中?/

9voidreadDat()

10(

11int1;

12FILE*fp;

13fp-fopen(wln.datR,"r*);

14ford-0;1<MAX;

15fscanf(fp,-Qd?,

16fclose(fp);

17?

18voidmain()

19

20int1;

21readDat();

22jsValO;〃調(diào)用”vau)滴H,實現(xiàn)8m裳求的功能

23printf("滿足條件的數(shù)7d\rT,ent.);

24for(i?0;i<ent;1)?)

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

26prlntfL\n**);

27writeDat();

28

/?值效writcDatO把結(jié)果cm以及教機(jī)b中粒合條件的四位數(shù)?巾到gt&t文件中?/

29voidwriteDat()

30;(

31?FILE?fp;

32;inti;

33fp-fopen(wout.dat",Ww");

34fprintf(fp,"Wd\n".ent);

35for(1?0;i<ent:

36fprintf(fp,b[i]);

37fclose(fp);

38

36.已知數(shù)據(jù)文件in.dat中存有300個四位數(shù),并已調(diào)用讀函數(shù)readDat

把這些數(shù)存入數(shù)組a中,請編制一函數(shù)jsvalue,其功能是:求出千位數(shù)

上的數(shù)加百位數(shù)上的數(shù)等于十位數(shù)上的數(shù)加個位數(shù)上的數(shù)的個數(shù)ent,

再把所有滿足此條件的四位數(shù)依次存入數(shù)組b中,然后對數(shù)組b的四位

數(shù)按從大到小的順序進(jìn)行排序。最后main函數(shù)調(diào)用寫函數(shù)writeDat把

數(shù)組b中的數(shù)輸出到文件out.dat中。

例如,7153.7*1-5B.劃讀數(shù)滿足條件存入數(shù)組b中.旦個數(shù)cnvyn+l.

8129.8+1!=2-9,則該數(shù)不滿足條件豆咻.

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

程序中已定義故用:aP00].b[300].巴定義受lbent

請勿改動數(shù)據(jù)文件indal中的仟何數(shù)據(jù).I函數(shù)main().該函數(shù)readDalQ和寫函故wnteDiH)的內(nèi)容.

1;tinclude<stdio.h>

2?inta[300)fbf300]fcnt-0;

3;voidreadDat();

4?voidwriteDat();

5jjsValue(>

6\?

71

8;J

9,main()

10;(

11;int1;

12?readDat();

13jjsValueO;

14;writeDat();

15*printf(?,cnt^^dXn**/ent);

16?for(i?0;i<ent;

17;printf("bt%dHldXn**,i.b(i));

ISi)

19;voidreadDat()

20JI

21jFILEwfp;

22int1;

23fp?fopen("in.dAt*,Rr#);

24for(1-0;i<300;?+?)

25fscanf(fp,Fd.",&a{i});

26fclose(fp);

27

voidwriteDat()

29

30FILE#fp;

31inti;

32fp-fopen("out.datH,*w");

wR

33fprintf(fp#td\n^ent);

34ford-0;i<ent;i++)

35fprintf(fp,"&d\rT.b(i));

36fclose(fp);

37

37.

函數(shù)ReadDat實現(xiàn)從文件in.dat中讀取一篇英文文章存入到字符串?dāng)?shù)

組XX中,請編制函數(shù)ConvertCharD,其函數(shù)的功能是:以行為單位把

字符串中的所有小寫字母改寫成該字母的上一個字母,如果是字母a,

則改寫成字母z,其他字符保持不變。把已處理的字符串仍按行重新存

入字符串?dāng)?shù)組xx中。最后main函數(shù)調(diào)用函數(shù)WriteDat把結(jié)果xx輸出

到文件out.dat中。例:原文:Adb.Bcdza

abek.LLhj結(jié)果:Aca.Bbcyzzabj.LLgi原始數(shù)據(jù)文件存放的格式是:

每行的寬度均小于80個字符,含標(biāo)點符號和空格。

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

請勿改動主函數(shù)main、讀函數(shù)ReadDatO和輸出函數(shù)WriteDat的內(nèi)容。

1Iinclude<stdio.h>

2finclude<string.h>

3charxx[50)1801;

intmaxiIne?0;/?文審的總行ft?/

intReadDat(void);

voidWrlteDat(void);

八口行為?包把字符小中的所的小耳?理小耳*“字圖的上f字理,如黑金字母Md(寫t字理a.M他7投保特不受?/

7jvoidConvertCharD(void)

81

9?

io:

11?voidmainO

12;I

13!if(ReadDat())

14;(

15!printf廣數(shù)據(jù)文件in.dat不能IT開!\n\007t,);

16\return;

17\

18jConvertCharD(>;

19;WriteDat();

20j)

/?從文介皿。中博以?英文文?存入制字符充教出XX中?/

21!intReodDAt(void)

22!(

23;FILE*fp;

24;int1*0;

25;char*p;

26?i£(《fp-foperH.in,daL?-r"))-NULL)

27]return1;

28?while(fgets(xx[ij9804fp)!?NULL)

29;(

30!p■strcbr(xx(i]9?\n*>;

31iif(p)*p-0;

32j

33;)

34\tnaxllne,1;

35?fclose(£p);

36jreturn0;

37!)

/?£格果RX■出*文flOULdH申?/

38jvoidWriteDat(void)

39:(

40jFILE?£pj

<11int1;

42?fp-fopen(*out.dat*r

43!for(1?0;i<naxllne;

44;(

45!printf("ts\n"rxxf1));

46\

fprintf(fptxx[11);

47j>

48!fcloae(fp);

49;

38.函數(shù)ReadDat實現(xiàn)從文件in.dat中讀取一篇英文文章,存入到字符

串?dāng)?shù)組XX中,?請編制函數(shù)eneryptChar,按給定的替代關(guān)系對數(shù)組XX

中的所有字符進(jìn)行替代,仍存入數(shù)組XX對應(yīng)的位置上,最后調(diào)用函數(shù)

WriteDat把結(jié)果xX輸出到文件out.dat中。

替代關(guān)系:f(p)=p*llmod256,mod為取余運(yùn)算,P是數(shù)組XX中某一

個字符的ASCII值,f(p)是計算后的無符號整型值C主意:中間變量定義

成整型變量),如果計算后f(p)值小于等于32或f(p)對應(yīng)的字符是大寫

字母,則該字符不變,否則用f(p)替代所對應(yīng)的字符。

注意:部分源程序存放在test.c文件中,原始數(shù)據(jù)文件存放的格式是:

每行的寬度均小于80個字符,含標(biāo)點符號和空格,并也按此替代關(guān)系

進(jìn)行處理。

請勿改動主函數(shù)main、讀函數(shù)ReadDat和輸出函數(shù)WriteDat的內(nèi)容。

1?include<stdio.h>

2?include<string.h>

3?include<ctype.h>

4unsignedcharxx[50][80];

5intmaxline-0;/?文章的總行數(shù)?/

6intReadDat(void);

7voidWriteDat(void);

8voidencryptChar()

9I

10unsignedintval;

11

12

13voidmain()

14(

15if(ReadDatO)

16(

17printf("數(shù)據(jù)文件m.dat不佬打開!\n\007");

18return;

19)

20encryptChar();

21WriteDat();

22I

,?從文付mdal中口:取一■莢文文??存人父字符中數(shù)mu中?/

intReadDat(void)

24

25FILE*fp;

26inti-0;

27unsignedchar*p;

28if((fp-fopen(-in.datH,)-NULL)

29return1;

30while(fgets(xx(1),80,fp)-NULL)

31I

32p=strehr(xx(i)#*\n*);

33if(p)*p-0;

34If

35

36maxline-i;

37fclose(fp);

38return0;

39>

/????u■出到文件outdai中?/

40voidWriteDat(void)

41

42FILE*fp;

43inti;

44fp■fopenfout.dat**,W

45for(i?0;i<maxline;1*?)

46(

47printf("laXn",xx{iB;

48fprintf(fprFs\n",xx(i]);

49

50fclose(fp);

51

39.在文件in.dat中已存有200個正整數(shù),且每個數(shù)均在1000至9999

之間。函數(shù)readDat是讀取這200個數(shù)存放到數(shù)組aa中。請編制函數(shù)

jsSort,其函數(shù)的功能是:要求按每個數(shù)的后三位的大小進(jìn)行降序排列,

如果出現(xiàn)后三位相等的數(shù)值,則對這些數(shù)值按原始4位數(shù)據(jù)進(jìn)行升序排

列,將排序后的前10個數(shù)存入數(shù)組bb中。

最后調(diào)用函數(shù)writeDat把結(jié)果bb輸出到文件out.dat中。

例:處理前9012509960127025808K

處理屈50998088702560129012

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

請勿改動數(shù)據(jù)文件in.dat中的任何數(shù)據(jù)、I由數(shù)main。、讀函數(shù)readDai。和寫函散writeDatO的內(nèi)容.

Iinclude<3tdlo.h>

linclude<string.h>

voidreadDat();

4;voidwriteDat0;

5|

intaa(200)#bb(10];

6?voidjsSortO

7I

81

9;

10?voidmainO

U!(

12;readDat();

13\

jsSort《);

14?writeDatO;

15;I

16!voidreadDatO

17i(

18?FILE*Lns

19;int1;

20;in-fopen(**m.datR,wrw);

21\

for(1-0;i<200;11??)

22Jfscanf(in,&aa[iH;

23;fclose(tn);

24\,)

25ivoidwriteDat()

26J

27?FILE*out;

28jinti;

ww

29?outifopen(out.datf;

30?for(1?0;i<10;i*+)

31j(

32;www

printf(i%dr%d\nri.;

33j

fprintf(out,0%d\n**rbb(1H;

34;}

35jfclose(out);

36;

40.編寫一個函數(shù)行ndStr(char*str,char*substr),該函數(shù)統(tǒng)計一個長度為

2的子字符串substr在另一個字符串str中出現(xiàn)的次數(shù),該次數(shù)作為函數(shù)

,,

值返回。例如,假定輸入的字符串為”asdasasdfgasdaszx67asdmklo1

子字符串為“as",函數(shù)返回值是6。

函數(shù)ReadWrite實現(xiàn)從文件in.dat中讀取兩個字符串,并調(diào)用函數(shù)findStr,

最后把結(jié)果輸出到文件out.dat中。

注意:部分源程序存在test.c文件中。請勿改動主函數(shù)main和其他函

數(shù)中的任何內(nèi)容,僅在函數(shù)findStr的花括號中

填入你編寫的若干語句。

Iinclude<3tdio.h>

?include〈string.h>

3voidReadWrlte();

4intfindStr(char?str,char?substr)

5

6

7

8mainO

9

10char9tr(81|,substr(3);

11intn;

12printfL輸入字符?。?);

13gets(str);

14prlntf,入/字符申:");

15gets(substr);

16puts(atr>;

17puts(substr);

18□"findStr(str,substr);

19prlntfLn,Ad\n".n);

20ReadWrite();

21I

八從文件E.d?i中it取兩個字符中.片■用雄依findSF),■后杷魴果■出網(wǎng)文件M&I中?/

22voidReadWrite()

23(

24charstr(81],substr(3],ch;

25intnrlenri?0;

26FILE,rf,ewf;

27rf-fopen(*tn.dat*r"r");

28wf?fopen("out?dat”,;

29whiled<5)

30(

31fgets(str,80,rf);〃從文件mdu卬漆取長搜:為R的字符中存入型字符小

32fgets(substr,10,rf);〃M文件indat中澹取長度為9的子孑符中存入到字符串mbstr

33Ion-strlen(substr)?1;〃尼f字符mgubmtr的KJtK)的值M解

34ch-substr(lenj;〃把子字符那的■后一個字用的值M嬉字符ch

,?如果千字得申的?后個字符是同等按行存或星文件的敗桿,副紀(jì)子?衿申的?后一個多籽的值設(shè)置力o?/

35if(ch*?'\n'IIch~Oxla)

36aubstr[len]?0;

/?愣用淞敢fXndStrCstr,substr)返回f字符串substr在字符小atr中山曜的次At?/

37n-flndStr(strrsubstr);

38fprintf(wfrFd\n",n);〃無計算端暨n寫入到文件。uJdau中

39[??;〃0環(huán)殳■,加1

40I

41fclose(rf);*

42fclose(wf);

五、設(shè)計與應(yīng)用題(2題)

41.設(shè)有某商業(yè)單位需要建立商務(wù)數(shù)據(jù)庫用以處理銷售記賬,它記錄的數(shù)

據(jù)包括:顧客姓名,所在單位及電話號碼;商品名稱,型號,產(chǎn)地及單

價;某顧客購買某商品的數(shù)量及日期。假定無同名顧客,無同型號商品,

由話公用靦客可存不同日期買同一商品。(1)請畫出該單位的商務(wù)ER

圖模型并優(yōu)化。(6分)(2)將ER模型換成關(guān)系模型并規(guī)范化到3NF。

(4分)

42.某教務(wù)管理系統(tǒng)使用SQLServer2008數(shù)據(jù)庫管理系統(tǒng),數(shù)據(jù)庫軟硬

件配置信息如下:I.數(shù)據(jù)庫運(yùn)行在兩路IntelXeonE5-26092.4GHz

CPU(每路CPU4核心),128GB內(nèi)存、2塊300GB15000轉(zhuǎn)SAS硬盤

(RAID1)的服務(wù)器上;II.服務(wù)器操作系統(tǒng)為Windows200332位企

業(yè)版,安裝SP2補(bǔ)丁加.數(shù)據(jù)庫為SQLServer2008Enterprise(32位),

數(shù)據(jù)庫中總數(shù)據(jù)量近130GB。近一個學(xué)期以來,用戶反映系統(tǒng)運(yùn)行緩慢,

經(jīng)程序員定位,確定為數(shù)據(jù)庫服務(wù)器響應(yīng)緩慢,需要進(jìn)行調(diào)優(yōu)。(10分)

六、單選題[1分](2題)

43.在數(shù)據(jù)庫應(yīng)用系統(tǒng)的需求分析階段,設(shè)有如下工作:1.分析與描述

目標(biāo)系統(tǒng)需要完成的功能H.分析與描述目標(biāo)系統(tǒng)對響應(yīng)時間、存儲容

量的要求HI.分析與描述目標(biāo)系統(tǒng)涉及的數(shù)據(jù)范圍、數(shù)據(jù)的屬性特征及

數(shù)據(jù)之間的關(guān)系W.分析與描述每項功能活動需要的輸入數(shù)據(jù)、業(yè)務(wù)規(guī)

則及輸出數(shù)據(jù)分析與描述目標(biāo)系統(tǒng)的總體結(jié)構(gòu)、功能活動及各功能活動

之間的關(guān)系以上屬于系統(tǒng)功能建模內(nèi)容的是()o

A.僅I、IV和VB.僅II、IV和VC.僅I、II和HID.僅HI、IV和V

44.在SQLServer2008中,設(shè)ul用戶在某數(shù)據(jù)庫中是db;_datawriter角

色中的成員,則用戶U1從該角色中可以獲得的數(shù)據(jù)操作權(quán)限是()。

I.查詢n.插入HI.更改w,刪除

A.僅IB.僅I和nC.僅II、HI和IVD.全部

參考答案

LB解析:設(shè)R(A1,A2,An)是一個關(guān)系模式,X,Y,Z是R的子

集。若只要關(guān)系,是關(guān)系模式R的可能取值,貝I中不可能存在兩個元

組在X上的屬性值相等,而在Y上屬性值不等,則稱“X函數(shù)決定Y”,

或“Y函數(shù)依賴于X”,記作X-Y,X稱為決定因素。在關(guān)系模式R中,

要判斷函數(shù)依賴是否成立,惟一的辦法是仔細(xì)地考察屬性的含義。

2.A解析:概念模型是對信息世界建模,所以概念模型應(yīng)該能夠方便、

準(zhǔn)確地表示信息世界中的常用概念。概念模型的表示方法很多,其中最

為常用的是P.P.Chen于1976后提出的實體一聯(lián)系方法。該方法用E-R

圖來描述現(xiàn)實世界的概念模型,稱為實體-聯(lián)系模型(Entity-Relationship

Model)簡稱E-R模型。

3.B解析:A)選項中,不是選擇所有列;C)選項年齡沒有小于等于22

歲;D)選項年齡沒有大于等于20歲。

4.C解析:多級目錄更能確切地表達(dá)系統(tǒng)內(nèi)部文件的組織結(jié)構(gòu),方便文

件系統(tǒng)的管理。采用多級目錄結(jié)構(gòu),不同用戶可以給不同文件取相同名

字,只要它們不是同一個目錄節(jié)點下的節(jié)點。

5.D解析:數(shù)據(jù)庫管理系統(tǒng)是位于用戶與操作系統(tǒng)之間的一層數(shù)據(jù)管理

軟件。它具有數(shù)據(jù)定義功能(用戶可以使用DDL方便地對數(shù)據(jù)庫中的數(shù)

據(jù)進(jìn)行定義);數(shù)據(jù)操縱功能(用戶可以使用DML操縱數(shù)據(jù),實現(xiàn)對數(shù)

據(jù)庫的基本操作,如查詢,插入等);數(shù)據(jù)庫的運(yùn)行管理(數(shù)據(jù)庫在建立、

運(yùn)用和維護(hù)時由DBMS統(tǒng)一管理、統(tǒng)一控制、以保證數(shù)據(jù)的安全性、完

整性);數(shù)據(jù)庫的建立和維護(hù)功能。

6.B解析:系統(tǒng)必須遵循先寫日志的原則。故B)錯。登記日志記錄時,

登記的順序嚴(yán)格按照事務(wù)的并發(fā)執(zhí)行中操作發(fā)生的實際順序。如果先寫

日志記錄,沒有修改數(shù)據(jù)庫,那么發(fā)生故障時可以進(jìn)行UNDO,也可以

進(jìn)行REDOo

7.C解析:分時操作系統(tǒng)使用戶通過與計算機(jī)相連的終端來使用計算機(jī),

允許多個用戶同時與計算機(jī)進(jìn)行一系列交往。由于用戶直接與計算機(jī)系

統(tǒng)交互,所以要求系統(tǒng)能快速對用戶提出的請求給出應(yīng)答。

8.B解析:對長度為n的順序線性表進(jìn)行刪除元素的操作,刪除第i個

元素移動元素的個數(shù)為n-io如果刪除每一個元素的概率相同,則概率為

1/n,所以插入一個元素移動(n-l)/2。

9.B解析:對象-關(guān)系數(shù)據(jù)庫系統(tǒng)支持可擴(kuò)充的數(shù)據(jù)類型,允許用戶除使

用基本數(shù)據(jù)類型外,還可以根據(jù)數(shù)據(jù)需要創(chuàng)建新的數(shù)據(jù)類型。創(chuàng)建新的

基本數(shù)據(jù)類型需要說明的信息包括指明類型名、類型的存儲信息和把該

類型與ASCII碼之間的轉(zhuǎn)換子程序。因此本題正確答案為B(I,H、和

IV).

10.A

SQL語言中用GRANT、REVOKE語句實現(xiàn)數(shù)據(jù)控制功能,數(shù)據(jù)庫中

權(quán)限的授予可以使用GRANT....ON….TO....語句,要求指明授予哪個用

戶(組)對哪個對象有什么權(quán)限,而REVOKE語句實現(xiàn)數(shù)據(jù)庫權(quán)限的回

收,需要指明從哪個用戶(組)回收對于哪個對象的什么權(quán)限。

11.部分函數(shù)依賴部分函數(shù)依賴解析:若X-Y但Y不完全函數(shù)依賴于

X,則稱Y對X部分函數(shù)依賴。掌握對關(guān)系數(shù)據(jù)庫和關(guān)系運(yùn)算的理解。

12.應(yīng)用應(yīng)用

13.異或【解析】RC5算法中使用了3種運(yùn)算:異或、加和循環(huán)。

14.松散【解析】源路由選項可以分為兩類,一類是嚴(yán)格源路由選項,

一類是松散源路由選項。嚴(yán)格源路由選項規(guī)定IP數(shù)據(jù)報要經(jīng)過路徑上

的每一個路由器,相鄰路由器之間不得有中間路由器,并且所經(jīng)過的路

由器的順序不可更改:松散源路由選項只是給出IP數(shù)據(jù)包必須經(jīng)過的

一些“要點”,并不給出一條完備的路徑,無直接連接的路由器之間的路

由尚需IP軟件的尋址功能補(bǔ)充。

15.通信原語通信原語

16.缺頁中斷缺頁中斷

17.認(rèn)證階段【解析】用戶檢索POP3郵件服務(wù)器的過程可以分成3個

階段:認(rèn)證階段、事務(wù)處理階段、更新階段。

18.EXECSQLEXECSQL解析:把SQL嵌入主語言使用時必須解決3

個問題:

①區(qū)分SQL語句與主語言語句

這是對通過在所有的SQL語句前加前綴EXECSQL來解決的。

②數(shù)據(jù)庫工作單元和程序工作單元之間的通信

嵌入式SQL語句中可以使用主語言的程序變量來輸入或輸出數(shù)據(jù)。把

SQL語句中使用的主語言程序變量簡稱為主變量。

③一個SQL語句原則上可產(chǎn)生或處理一組記錄,而主語言一次只能處

理一個記錄,為此必須協(xié)調(diào)兩種處理方式。這是用游標(biāo)來解決的。

19.隔離性隔離性解析盡管多個事務(wù)可以并發(fā)執(zhí)行。但系統(tǒng)必須保證,

對任一對事務(wù)T1和T2,在T1看來。T2或者在T1開始之前已經(jīng)停止

執(zhí)行,或者在T1完成之后執(zhí)行。這樣,每個事務(wù)都感覺不到系統(tǒng)中有

其他事務(wù)在并發(fā)地執(zhí)行。我們稱之為事務(wù)的隔離性。

20.16【解析】在DES加密中,明文的處理經(jīng)過3個階段。首先,64位

的明文經(jīng)過初試置換(IP)而被重新排列。然后進(jìn)行16輪的相同函數(shù)的作

用,每輪的作用中有置換和代換。最后一輪迭代的輸出有64位,它是

輸入明文和密鑰的函數(shù)。最后,預(yù)輸出再被與置換(IP)互逆的逆初始置

換(IP-1)作用產(chǎn)生64位的密文。

21.D

22.A解析視圖是從一個或幾個基本表中根據(jù)用戶需要而做成的一個虛

表。視圖是虛表,它在存儲時只存儲視圖的定義,而沒有存儲對應(yīng)的數(shù)

據(jù),視圖是只在剛剛打開的一瞬間,通過定義從基表中搜集數(shù)據(jù),并展

現(xiàn)給用戶。

23.C

OSI參考模型并沒有提供一個可以實現(xiàn)的方法。OSI參考模型只是描述

了一些概念,用來協(xié)調(diào)進(jìn)程問通信標(biāo)準(zhǔn)的制定。

24.B

25.C

26.B

27.C

28.D

29.C

30.B

31.\n【審題關(guān)鍵句】個位-千位-百位-十位,結(jié)果大于等于零且原四位數(shù)

是偶數(shù),統(tǒng)計出滿足此條件的個數(shù),并按從小到大的順序存入數(shù)組。

\n【解題思路】

\n本題類似第9套試題,通過審題可以發(fā)現(xiàn)僅有一個不同點,即要求統(tǒng)

計的四位數(shù)的條件是“個位-千位-百位-十位>=0",參考答案的第8條語

句,修改if條件語句的判斷條件即可。

\n【參考答案】

\n

\n

32.\n【審題關(guān)鍵句】以行為單位把字符串中的所有小寫字母改寫成該字

母的下一個字母,大小寫不變,其他字符不變。

\n【解題思路】

\n①定義整型循環(huán)變量i、i。

\n②在第一層for循環(huán)中,循環(huán)變量i從0開始,依次遞增直到其值等于

maxline,實現(xiàn)對文章每行的處理。第二層for循環(huán)中,循環(huán)變量j從。

開始,依次遞增直到其值等于strlen(xx[i]),在循環(huán)體中,利用if條件語

句首先判斷)xx[i][j]的值是否在小寫字符字符,之間,然后,再判斷

在此范圍之內(nèi)的小寫字母,如果是z,則該字符轉(zhuǎn)換為a,如果字符不是

z,則將其改寫成它的下一個字母。

\n【參考答案】

\n

\n

\n

33.\n【審題關(guān)鍵句】計算金額,按金額從小到大進(jìn)行排列,相同的則按

產(chǎn)品代碼從小到大排列,結(jié)果存入結(jié)構(gòu)數(shù)組。

\n【解題思路】

\n本題類似第57套試題,通過審題可以發(fā)現(xiàn)主要是排序條件的設(shè)置要

求有所不同,參考答案的第8行進(jìn)行修改即可。

\n【參考答案】

\n

\n

34.\n【審題關(guān)鍵句】讀取正數(shù),統(tǒng)計個數(shù),各位數(shù)字之和為偶數(shù)的數(shù)的

個數(shù)及平均值。

\n【解題思路】\n\t\t定義整型循環(huán)變量i、j,表示各位數(shù)字之和的長整

型變量he以及存儲一個四位數(shù)的字符數(shù)組num[5]0

\n②循環(huán)變量i從。開始,依次遞增到4,對字符數(shù)組num⑸的每個元

素賦初值。。

\n③循環(huán)變量i從0開始,依次遞增到MAXNUM.1,對每個數(shù)組元素

xx[i]進(jìn)行判斷,如果xx[i]的值非零,則變量totNum加1,退出循環(huán)時,

totNm的值就是文件in.dat中存有的四位正整數(shù)的個數(shù)。

\n④循環(huán)變量i從。開始,依次遞增到totNum-1,對于每個數(shù)組元素xx[i]

調(diào)用庫函數(shù)sprintf以4個字符寬度形式輸出到字符數(shù)組num中,用字

符數(shù)組num中的每個元素減去0的ASCII碼48,就分別得到XX[i]這

個四位數(shù)每位上的數(shù)字,并把這四個數(shù)字相加賦給變量j。再對變量j對

2求余數(shù)進(jìn)行判斷其值是否等于0,如果等于0,則說明j是偶數(shù),變量

totCnt加1,并把xx[i]的值累加到變量heo

\n⑤退出循環(huán)后,把變量he的類型轉(zhuǎn)換成雙精度型再除以totCnt得到

符合條件的數(shù)的算術(shù)平均值totPjz。

\n【參考答案】

\n

\n

35.\n【審題關(guān)鍵句】大于后連續(xù)5個數(shù),奇數(shù),從小到大排序。

\n【解題思路】本題類似第35套試題,通過審題可以發(fā)現(xiàn)主要有兩

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論