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

下載本文檔

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

文檔簡介

2022年河北省滄州市全國計算機等級考試

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

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

一、1.選擇題(10題)

1.設(shè)關(guān)系模式R(U,F),其中U為屬性集,F(xiàn)是U上的一組函數(shù)依賴,

下列敘述中正確的是()。

A.若X-Y為F所邏輯蘊涵,且ZU,則XZ-YZ為F所邏輯蘊涵

B.若X-Y,Y-Z為F所邏輯蘊涵,則X-Z為F所邏輯蘊涵

C.若YXU,則Y-X為F所邏輯蘊涵

D.若XYU,則X-Y為F所邏輯蘊涵

2.關(guān)系模型中,一個關(guān)鍵字

A.可由多個任意屬性組成

B.至多由一個屬性組成

C.可由一個或多個其值能惟一標識該關(guān)系模式或任何元組的屬性組成

D.以上都不是

3.下列運算不是專門的關(guān)系運算。

A.選擇B.投影C.笛卡爾積D.連接

4.數(shù)據(jù)庫系統(tǒng)的核心是__。()

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

5.在Oracle中,可以根據(jù)用戶建立的模型,自動生成數(shù)據(jù)字典、數(shù)據(jù)庫

表、應(yīng)用代碼和文檔的工具是

A.OracleFormsB.ModelersC.GeneratorsD.BPR

6.設(shè)待排序關(guān)鍵碼序列為(25,18,9,33,67,82,53,95,12,70),

要按關(guān)鍵碼值遞增的順序進行排序,采取以第一個關(guān)鍵碼為分界元素的

快速排序法,第一趟完成后關(guān)鍵碼95被放到了第幾個位置?

A.7B.8C,9D.10

7.關(guān)于進程調(diào)度算法中的輪轉(zhuǎn)法,下列描敘不正確的是

A.就緒隊列按FCFS方式排隊

B.就緒隊列按FIFO方式排隊

C.每個運行進程一次占有處理器時間可以超過規(guī)定的實際單位

D.可以調(diào)用調(diào)度原語而形成就緒進程輪流使用服務(wù)器

8.利用計算機幫助學(xué)員進行學(xué)習(xí),將教學(xué)內(nèi)容加以組織使學(xué)生通過人機

交互自如地學(xué)習(xí),這屬于計算機應(yīng)用的哪一個領(lǐng)域?

A.CADB.CAIC.CAMD.CAT

9.有如下請求磁盤服務(wù)的隊列,要訪問的磁道分別是98、183列7、122、

14、124、65、67o現(xiàn)在磁頭在53道上,若按最短尋道時間優(yōu)先法,磁

頭的移動道數(shù)是

A.234B.235C.236D.237

10.

設(shè)U是所有屬性的集合,X、Y、Z都是U的子集,且Z=U-X-Y,下面關(guān)于多值依賴的敘述中,不正確的是().

A)若Z=o,貝灰-fY

B)若Xf—Y,貝IJX——Z

C)若X-Y,則XffY

D)若XffY,且Y"包含Y,則Xf—M

二、填空題(10題)

IL不讓死鎖發(fā)生的策略可以分成靜態(tài)和動態(tài)的兩種,死鎖預(yù)防屬于【】

12.ADSL技術(shù)通常使用一_________對線進行信息傳輸。

13.在雙向鏈表中,每個結(jié)點都含有兩個指針域,它們一個指向其前驅(qū)結(jié)

點,另一個指向其【】結(jié)點

14.層次模型和網(wǎng)狀模型統(tǒng)稱為【】模型。

15.若線性表的長度經(jīng)常發(fā)生變化,那么該線性表應(yīng)采用的存儲結(jié)構(gòu)是_[]_

16.第三代數(shù)據(jù)庫系統(tǒng)(或新一代數(shù)據(jù)庫系統(tǒng))是____技術(shù)和數(shù)據(jù)庫技

術(shù)相結(jié)合的系統(tǒng)。

17.在HTML語言中,<IMG>標記用于表示。

18.UNIX內(nèi)核部分包括文件子系統(tǒng)和控制子系統(tǒng)。

19.在SQL語言中,允許獲得某種權(quán)限的用戶把這種權(quán)限再轉(zhuǎn)授給其他

用戶,可以在GRANT語句中指定_____子句。

20.

用數(shù)加A11…nJ?序存儲完全二叉樹的各結(jié)點,則'i>0.fl,Q_____時,

結(jié)點A[i]的右子女是結(jié)點A[2M].令耐結(jié)點A[i]沒有右千女丁

三、單選題(10題)

21.整個軟件生存期中時間最長蹬是()

A.需求分析B.設(shè)計C.程序編制D.運行維護

22.在關(guān)系數(shù)據(jù)庫設(shè)計中,設(shè)計關(guān)系模式是()的任務(wù)。

A.需求分析階段B.概念設(shè)計階段C.邏輯設(shè)計階段D.物理設(shè)計階段

23.在數(shù)據(jù)庫設(shè)計中,用E-R圖來描述信息結(jié)構(gòu)但不涉及信息在計算機

中的表示,它是數(shù)據(jù)庫設(shè)計的()階段。

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

24.E-R模型轉(zhuǎn)換成關(guān)系模型是在數(shù)據(jù)庫設(shè)計階段中的()階段。

A.概念設(shè)計B.邏輯設(shè)計C.物理設(shè)計D.實現(xiàn)

25.密鑰管理包括密鑰的生產(chǎn)、存儲、裝入、分配、保護、銷毀以及保密

等內(nèi)容,其中最關(guān)鍵和最困難的問題是()。

A.密鑰的分配和存儲B.密鑰的產(chǎn)生和裝入C.密鑰的保護和保密D.密

鑰的銷毀

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)限的默認登錄賬戶

27.描述概念模型的常用方法是

A.建立數(shù)據(jù)模型方法B.需求分析方法C.二維表方法D.實體-聯(lián)系方

28.收縮整個數(shù)據(jù)庫的大小,可以采用下列語句:()

A.DBCCSHRINKDATABASE

B.DBCCSHRINKFILE

C.ALTERDATABASE

D.CREATESCHEMA

29.PowerBuilder具有的功能特點包括()。

I.提供了良好的跨平臺性

II.具有自己的編程語言PowerScript

Ill.是一種面向?qū)ο蟮拈_發(fā)工具

IV.事件驅(qū)動的程序設(shè)計方式

A.I和IIB.I和nic.ii、m和wD.全都是

30.用戶對SQL數(shù)據(jù)庫的訪問權(quán)限中,如果只允許刪除基本表中的元組,

應(yīng)授予哪一種權(quán)限?

A.DROPB.DELETEC.ALTERD.UPDATE

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

31.已知在文件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,其功能要求:按產(chǎn)品名稱從大到小進行排列,若產(chǎn)品名

稱相同,則按金額從大到小進行排列,最終排列結(jié)果仍存入結(jié)構(gòu)數(shù)組sell

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

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

題:產(chǎn)品名稱比較請用函數(shù)strcrnp進行解題。例如:sell[i]=temp;

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

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

!linclude<3tdio.h>

2;Iinclude<string.h>

3■*include<stdlib.h>

4?defineMAX100

Stypedefstruct

6(

7chardm[5];/?產(chǎn)品代碼?/

8charme(111;/?產(chǎn)品名稱?/

9intd"/,單價?/

10intal;/?Bl?/

11longje;/?金1?/

12IPRO;

13PROsell(MAX);

14voidReadDat();

15voidWrlteDat();

16voidSortDat()

17

18

19

20voidmain()

211

22m^rnset(sell,0,sizeof(sell));

23ReadDat();

24SortDatO;

25WriteDat();

26

27voidReadDat()

28(?

29FILE?fp;

30charstr(B0],ch[llj;

31int1;

32fp-fopent^ln.dat",wrw);

33for(i-0;i<100;if)

34

35fgets(9tr>80.fp);

36meraepy(sell[i].dm#str,4);

37memcpy(sell(1).mc?str?4*10);

38inamcpy(ch?atr^14r4);ch[4]-0;

39sei1(1|?dj?atol(ch);

40memcpyfch,str*18*5);ch(51-0;

41sell|i]<sX■atoi(ch);

42?(long)sell[i].dj?sell(1].81;

43)

44fclose(fp);

45

46JvoidWriteDat()

47)<

48FltE*fp;

49inti;

50fp■fopen("out.dat","ww);

51ford-0;1<100;

52I

53fprintf(fp,**s%5MdI5dtl01d\n*?sell(i?dm.sell(i).dj,sellfl].slr

sell[ij.je);

S4I

55fclose(fp);

56?)

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

號字符串數(shù)組XX中,請編制函數(shù)encryptChar,按給定的替代關(guān)系對數(shù)

組)XX中的所有字符進行替代,其替代值仍存入數(shù)組XX的對應(yīng)的位置

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

替代關(guān)系:)=p*17mod256,mod為取余運算,p是數(shù)組)xx中某一個字

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

型變量),如果計算后f(p)值小于等于32或f(p)是奇數(shù)時,則該字符不

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

注意,部分源程序存放在lotx文件中.總的數(shù)據(jù)文件存放的格式般,每行的寬度均小于80個字符.含標點杼號卿空

格,井也按此傅代關(guān)系進行處理.

請勿改動主函效mimO、讀函數(shù)RoidDMl)和■出函散WmeDaiO的內(nèi)本.

1tinclude<9tdlo.h>

2?Include<strin9.h>

3?include<ctype.h>

4unsignedcharxx[50][80);

5intmaxline■Of/?文章的總打敏?/

6xntReadDat(void);

7voidWriteDat(void);

evoidencxyptChar0

9(

iounsignedIncval:

11

12

13voidmam()

14(

15if(ReadDat())

16(

17printfLift據(jù)文件in,dat不能打開!\n\007w);

18return;

19

20encryptChar();

21WriteDatO;

I

22八從文件ilLdBi中博取一?英文文章.存入到無符號?押申數(shù)粗?中?/

23intReadDat(void)

24(

25FILEwfp;

26inti00;

27unsignedchar*p;

28if((fp-fopen「mdaL,F))-NULL)

29return1;

30while(fgets(xx[1],80/fp)!-NULL)

31(

32p?strchr(xx[1],*\n*);

33if(p)*p-0;

34

35)

36maxline-1;

37fclose(fp);

38return0;

39/?把站梁xx?出到文件outdat中?/

40voidWriteDat(void)

41(

42FILE*fp;

43int1;

44fp■fopen("out.datH,;

45for(1-0;i<maxline;

46(

w,

47printf(%s\n'/xx[1]);

48fprintf(fp,xx(i]);

49J

50fclose(fp);

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

串數(shù)組XX中,請編制函數(shù)StrCharJR,其函數(shù)的功能是t以該文章中的

行為單位把字符串中的所有字符的二進制ASCII值右移4位,高位補

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

值仍存入原字符串對應(yīng)的位置上,之后把已處理的結(jié)果仍按行重新存入

數(shù)組XX中。最后main函數(shù)調(diào)用函數(shù)WriteOat把結(jié)果XX輸出到文件

out.dat中。

例如:

"z”對應(yīng)的ASCII值為7AH,二進制值為01111010,右移4位后為

00000111,加上原來"2"的ASCII值01111010得至1J10000001結(jié)果。

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

號和空格,并也按字符處理。

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

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

:j?include<stdio.h>

!iinclude<string.h>

3\charxx[501(80];

4!intmaxline=0;/?文聿的總行數(shù),/

5?intReadDat(void);

6;voidWriteDat(void);

7jvoidStrCharJR(void)

8

9

10

111voidmain0

12;I

13!if(ReadDatO)

14f1

15printf("效據(jù)文件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/?把結(jié)果”■出到文仰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

34.已知數(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ù)按從小到大的順序進行排序。最后main函數(shù)調(diào)用寫函數(shù)writeDat

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

例如:9123.9-1-2-3>0.則詼數(shù)滿足條件存入數(shù)組b中,且個數(shù)cnmt+l.

9812,9-8-1-20,則該數(shù)不滿足條件忽略.

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

程序中已定義效組:a[300),b{300).己定義變量tent

請勿改動數(shù)據(jù)文件imdal中的任何數(shù)據(jù)、主函數(shù)讀函數(shù)reMD?()和耳函數(shù)writeDmO的內(nèi)容?

finclude<stdio.h>

inta(3001,b(300Bcnt-O:〃定義?野依蛆cb【3。0】和受?ent.并且st的初值為0

voidwriteDat();

4voidreadDatO;

5voidjsVa1ue()

6

7

8

9main()

10(

11inti;

12readDat();

13isValue();

29?(

30-FILE*fp;

31!int1;

32ifp=fopen(wout.datw,"wR);

H

33\fprintf(tp,%d\n"rent);

34?for(i-0;i<ent;if

35:fprintf(£p,Fd\n",b[it

36!fclose(fp)s

37\}

35.函數(shù)readDat是從文件in.dat中讀取20行數(shù)據(jù)存放到字符串數(shù)組

xx中(每行字符串長度均小于80)。請編制函數(shù)jsSort,其函數(shù)的功能是:

以行為單位對字符串變量的下標為奇數(shù)的位置上的字符按其ASCII值

從小到大的順序進行排序,下標為偶數(shù)的位置上的字符仍按原來位置存

放,排序后的結(jié)果仍按行重新存入字符串數(shù)組)XX中,最后調(diào)用函數(shù)

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

例如:位置01234567

源字符串hgfedeba

則處理后字符串hafedebs

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

請勿改動數(shù)據(jù)文件Hdat中的任何數(shù)據(jù)、主函數(shù)main。、讀函數(shù)re?n>at()和耳函敗writeDat()的內(nèi)容.

■include<stdio.h>

yllnclude<string.h>

3voidreadDat();

4voidwriteDat();

5charxx(20J(80]:

6voidjsSort()

e

9

10jvoidmain()

11;(

12?readDat();

13jsSort();

14writeDat();

15i)

;“從文件iadtf中謨?nèi)?0打數(shù)據(jù)存放到字柯串數(shù)蛆xx中?/

16!voidreadDat()

17?(

18?FILE?in;

19!inti■0;

20;char*p;

21!in?fopen("in.dat"/°r");

22{while(i<20&&fgets(xx[1],80,in)!-NULL)

j

23j(

2Ap?strchr(xx[i]**\n*);

25if(p)*p?0;

26if

27i)

?

28;fdose(in);

29!)

?/?把懦果出到OUt<fal文件中?/

30;voidwriteDat()

31\(

32FILE*OUt;

33?int1;

w

34out-fopen("out.date;

35for(1?0;i<20;

36

37printfxx[1]);

wH

3Bfprintf(out,%s\n,xx[1]);

39

40fclose(out);

41

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

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

字符按ASCII碼從大到小的順序進行排序,排序后的結(jié)果仍按行重新存

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

出到文件out.dat中。

例:原文:dAe,BfC.

CCbbAA結(jié)果:fedCBAbbCCAA原始數(shù)據(jù)文件存放的格式是:每行

的寬度均小于80個字符,含標點符號和空格。

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

請勿改動主函數(shù)main、讀數(shù)據(jù)函數(shù)ReadDat和輸出數(shù)據(jù)函數(shù)WriteDat

的內(nèi)容。

?include<stdio?h>

■include<string.h>

3charxxlSO)(80);

4unsignedintmaxline0;7?文章的總行Ift?/

5intReadDat(void);

6voidWriteDat(void);

7voidSortCharD(void)

B

10

11voidmain()

12

13if(ReadDat())

14(

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

16return;

17?

SortCharDO;

WriteDat();

20)

/?從文傳中速取一■英文文拿存入髯字希$畋皿XX中?/

21intReadDat(void)

22

23FILEefD;

24;inti,0;

25!char*p;

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

27;return1;〃加泉文件in,d小內(nèi)容為匕則返回1

!,?當從文件ln.dat中讀取79個字符存入xxlil設(shè)育1?設(shè)發(fā)生時.執(zhí)行微環(huán)體中的語句〃

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

29;1

30?p-strchr(xx(i),tXn');〃在字符率xx[£)中秀找回車換打符事一個西配的位置

31;if(p)*p-0;〃如果p的值不為零.劃元其值設(shè)置為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!}

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

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

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

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

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

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

例如.7153,7*1-5+3,則該效滿足條件存入敷中,且個敷cnfcnt+l.

8129.8+1!?2+9.則該數(shù)不湎定條件忽略.

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

程序中已定義改組:4300].b[300J.巳定義登■,ent

請勿改動數(shù)據(jù)文flin.dat中的任何數(shù)據(jù).Iliftftmain().讀函數(shù)rradDat。和*;函數(shù)wnteDatO的內(nèi)容.

1;tinclude<stdio.h>

2!inta(300]b|300]cnt-0;

ir9

3;voidreadDat();

4-voidwriteDat();

5jjsValue()

6\I

71

8

9:mainO

10

11int1;

12readDat();

13jsValue();

14wrlteDat();

Hw

15printf(cnt=%d\n,ent);

16for(i■0;i<ent;W)

17;printf(wb[ld]

IS*)

19?voidreadDat()

20?(

21JFILEwfp;

22inti;

23fp-fopen("In.dAt**,HrH);

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

25fscanf(fp,

26fclose(fp);

21

28voidwriteDatO

29

30FILE*fp;

31inti;

32fp=fopen(*"out"w");

33fprintf(fp,w%d\nw^ent);

34ford-0;i<ent;"?)

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

36fclose(fp);

37

38.函數(shù)readDat是從文件in.dat中讀取20行數(shù)據(jù)存放到字符串數(shù)組

XX中(每行字符串長度均小于80)。請編制函數(shù)jsSort,其函數(shù)的功能

是:以行為單位對字符串按下面給定的條件進行排序,排序后的結(jié)果仍

按行重新存入字符串數(shù)組XX中,最后調(diào)用函數(shù)writeDat把結(jié)果XX輸

出到文件out.dat中。

條件:字符串從中間一分為二,左邊部分按字符的ASCII值升序排序,

右邊部分不變,左邊經(jīng)排序后再與右邊部分進行交換。如果原字符串長

度為奇數(shù),則最中間的字符不參加處理,字符仍放在原位置上。

例fch位置012345678

源字符率dcbahgfe

432198765

則處理后字符中hgfcabcd

876591234

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

請匆改動數(shù)據(jù)文件in.dal中的任何1!(據(jù)、主函數(shù)main()、設(shè)函數(shù)readDatO和寫函數(shù)writeDatO的內(nèi)容.

1;iinclude<stdio?h>

2:*include<string.h>

3jvoidreadDat();

4jvoidwriteDat();

5*charxx[20][801;

6;voidjsSort()

7i(

j

8I

9;)

10;voidmainO

11;(

12?readDat();

13:jsSortO;

14!writeDatO;

15\)

!,?從文件m.dai中父取20tj數(shù)福存放到字符串軟覦xx中?/

16jvoidreadDat()

17?/

18}FILE*in;

19jint1-0;

20*char*p;

www

21;in■fopen(in.datr*r);

22!whiled<20“fgets(xxli)r80,in)!-NULL)

23\(

24-p-strehr(xx[i)t,\n,);

25jif(p)*p-0;

26j

27?)

28;fclose(in);

29;}

i/?尼站果xx?出到文件om&t中?/

30*voidwrxteDat()

31j1

32-FILEeout;

33jint1;

34;out-fopen(*out.dat*,*w**);

37Iprintfxx(l]);

38ifprintf(out,xx(i));

39\)

40;fclose(out);

39.函數(shù)readDat是從文件in.dat中讀取20行數(shù)據(jù)存放到字符串數(shù)組

XX中(每行字符串長度均小于80)。請編制函數(shù)isSort,其函數(shù)的功能

是:以行為單位對字符串按下面給定的條件進行排序,排序后的結(jié)果仍

按行重新存入字符串數(shù)組XX中,最后調(diào)用函數(shù)writeDat把結(jié)果)XX輸

出到文件Out.dat中。

條件:字符串從中間一分為二,左邊部分按字符的ASCII值降序排序,

右邊部分不作處理,排序后,左邊部分與右邊部分按例子所示進行交換。

如果原字符串長度為奇數(shù),則最中間的字符不參加處理,字符仍放在原

位置上。

例如:位置012345678

源字符串ibcdhgfe

123498765

則處理后字符串hgfcdcba

876594321

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

請勿改動數(shù)據(jù)文件M.dat中的任何數(shù)據(jù)、主函數(shù)讀函數(shù)rcadD叫)和寫的數(shù)writcDaU)的內(nèi)容.

1i!linclude<stdio.h>

2;?include〈string.h>

3;charxx[201(80);

4voidreadDat();

5voidwrlteDat();

6voidjsSort()

7

8

9

10voidmain()

11

12readDat();

13jsSort();

14wrlteDat("

15

/?從文件indii中注取20打數(shù)究存放到字符率依蛆xx中?/

16voidreadDat()

17!(

18?FILE-in;

19?inti-0;

20char*p;

nw

21in=fopen(in.dat,"D;

22while(i<20“fgets(xx{i]v80.in)NULL)

23

24p-strchr(xx(ij,?\n,);

25if(p)*p?0;

26

27]

28fclose(in);

29;)

\/,史州Rxx*出到文件outt中?/

30jvoidwriteDat()

31

32FILE*out;

33int1;

34out?fopen(*out.datw/**wM);

35for(i?0;1<20;if)

36(

37printfxx[i));

38fprintf(out,xxri!);

39)

40fclose(out);

41

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

號字符串數(shù)組XX中;請編制函數(shù)encryptChar,按給定的替代關(guān)系對數(shù)

組XX中的所有字符進行替代,其替代值仍存入數(shù)組)xx的對應(yīng)的位置

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

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

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

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

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

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

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

進行處理。

請勿改動住數(shù)main、讀數(shù)據(jù)函數(shù)ReadDat和輸出數(shù)據(jù)函數(shù)WriteDat的

內(nèi)谷。

?include<stdio.h>

tinclude<strlng.h>

3?include<ctype.h>

unsignedcharxx[50][80];

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

6intReadDat(void);

7!voidWriteDat(void);

8?voidencryptChar()

10!

11j)

12JvoidmainO

13?(

14iif(ReadDat0)

15\1

161printf(-數(shù)據(jù)文件in.daw不能打開!\n\007"”

17return;

18

19encryptCharO;

WriteDat();

21

/?從文件ndu中謨?nèi)?英文文存人■無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

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

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

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

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

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

業(yè)版安裝SP2補?。籱.數(shù)據(jù)庫為SQLServer2008Enterprise(32位),

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

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

42.設(shè)某教學(xué)管理系統(tǒng),其查詢模塊需要提供如下功能:I.查詢系信

息,列出各系編號、系名和系辦公電話;II.查詢某系教師的信息,

列出教師號、教師名、工資和聘用日期;m.查詢某教師講授的課程

信息,列出課程號、課程名和學(xué)分;IV.查詢講授某門課程的教師信

息,列出教師名和職稱;v.查詢某門課程的先修課程信息,列出先修

課程號和先修課程名。系統(tǒng)有如下業(yè)務(wù)規(guī)則:I.一個系可聘用多名

教師,一名教師只能受聘于一個系;ii.一名教師可講授多門課程,

一門課程可由多名教師講授;m.一門課程可以有多門先修課程,也

可以沒有先修課程。(1)請根據(jù)以上查詢功能與業(yè)務(wù)規(guī)則,用ER圖

描述該系統(tǒng)的概念模型。(5分)(2)將ER圖轉(zhuǎn)換為滿足3NF的關(guān)

系模式,并說明每個關(guān)系模式的主碼和外碼。(5分)

六、單選題口分](2題)

43.實體聯(lián)系模型簡稱ER模型,是數(shù)據(jù)庫設(shè)計常用的一種建模方法。關(guān)

于ER模型,下列說法錯誤的是()。

A.ER模型能幫助建模人員用一種簡單的方法描述現(xiàn)實世界中的數(shù)據(jù)及

數(shù)據(jù)之間的聯(lián)系

B.用ER模型建模的基本思路是分類標識客觀事物,將具有相同屬性特

征的事物抽象為實體集

C.ER模型可以描述實體集之間一對一、一對多和多對多聯(lián)系,也可以

描述一個實體集中記錄之間的聯(lián)系

D.用ER模型描述實體集之問的聯(lián)系時,需要考慮數(shù)據(jù)在計算機中存儲

及處理的特征

44.下列哪些屬性不適合建立索引()。

A.經(jīng)常出現(xiàn)在GROUPBY字句中的屬性

B.經(jīng)常參與連接操作的屬性

C.經(jīng)常出現(xiàn)在WHERE字句中的屬性

D.經(jīng)常需要進行更新操作的屬性

參考答案

LA解析:邏輯蘊含的定義是:設(shè)R<U,F>是一個關(guān)系模式,X、Y

是U中的屬性組,若在R<U,F>的任何一個滿足F中函數(shù)依賴的關(guān)

系r上,都有函數(shù)依賴X-Y成立,則稱F邏輯蘊含X-Y。另外,

Armstrong公理系統(tǒng)包括3條推理規(guī)則:①自反律。若YXU,則X-Y

為F所邏輯蘊含。②增廣律。若X-Y為F所邏輯蘊含,且ZU,則

XZ-YZ為F所邏輯蘊含。③傳遞律.著X-Y及Y-Z為F所邏輯蘊

含,則X-Z為F所邏輯蘊含。根據(jù)這個定義和以上幾條推理規(guī)則,可

以知道選項C)和D)是錯誤的(兩題本質(zhì)上是一樣的)。選項B)看上去像

是傳遞律的表述,不過仔細看可以發(fā)現(xiàn)結(jié)論反了。

2.C解析:關(guān)鍵字:屬性或?qū)傩缘募?,其值惟一標識一個元組。

3.C解析:選擇、投影和連接運算屬于專門的關(guān)系運算,而笛卡爾積屬

于集合運算。

4.D解析:數(shù)據(jù)庫系統(tǒng)一般由數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)(DBMS)、應(yīng)用系

統(tǒng)、數(shù)據(jù)庫管理員和用戶構(gòu)成。DBMS是數(shù)據(jù)庫系統(tǒng)的基礎(chǔ)和核心。

5.C解析:在Oracle中,OracleForms用來快速生成基于屏幕的復(fù)雜應(yīng)

用的工具;BPR用于過程建模;Modelers用于系統(tǒng)設(shè)計與建模;

Generators根據(jù)用戶建立的模型,自動生成數(shù)據(jù)字典、數(shù)據(jù)庫表、應(yīng)用

代碼和文檔。掌握Oracle數(shù)據(jù)庫服務(wù)器功能及其特點,Oracle的連接產(chǎn)

品及其功能。

6.B解析:快速排序法的基本方法是:在待排序序列中任取一記錄,以

它為基準用交換的方法將所有的記錄分成兩部分,關(guān)鍵碼值比它小的一

部分,關(guān)鍵碼值比它大的另一部分,再分別對兩個部分實施上述過程,

一直重復(fù)到排序完成。在本題中采取以第一個關(guān)鍵碼25為分界元素,

按照快速排序的思想,第一趟完成后關(guān)鍵碼序列變?yōu)?18,9,12,25,

33,67,82,53,95,70),所以關(guān)鍵碼95位置沒變,還是第8。本題

正確答案為選項B(8)。

7.C解析:進程調(diào)度算法中的輪轉(zhuǎn)法:就緒隊列按FCFS方式排隊。每

個運行進程一次占有處理器時間都不超過規(guī)定的實際單位。若超過,即

調(diào)用調(diào)度原語而形成就緒進程輪流使用服務(wù)器。FCFS算法指先進先服

務(wù)算法又稱FIFO算法。

8.B解析:CAD是計算機輔助設(shè)計,是利用計算機幫助設(shè)計人員進行產(chǎn)

品、工程設(shè)計的重要技術(shù)手段;CAI是計算機輔助教學(xué),利用計算機對

幫助學(xué)員進行學(xué)習(xí),將教學(xué)內(nèi)容加以組織使學(xué)生通過人機交互自如地學(xué)

習(xí);CAM是計算機輔助制造,利用計算機進行生產(chǎn)設(shè)備的控制、操作

和管理的系統(tǒng);CAT是計算機輔助測試,利用計算機來輔助進行復(fù)雜而

大量的測試工作的系統(tǒng)。

9.C解析:“最短尋道時間優(yōu)先”算法總是讓查找時間最短的那個請求先

執(zhí)行,而不管請求訪問者到來的先后時間。即靠近當前移動臂位置的請

求訪問者將優(yōu)先執(zhí)行。當前磁頭在53道上,則總的移動道數(shù)是:

12+2+30+23+84+24+2+59=236。

10.D解析:設(shè)R(U)是屬性集U上的關(guān)系模式,X,Y,Z是U的子集,

并且Z=U-X-Y。多值依賴X一一Y成立,當且僅當對R(U)的任意關(guān)系

r,給定一對(X,Z)值,對應(yīng)一組Y值,這組值僅僅決定于X值,而與Z

值無關(guān)。平凡多值依賴:若X—>—>Y,X=(p則稱X—>—>Y為平凡多值依

賴。

11.靜態(tài)的根據(jù)死鎖產(chǎn)生的四個必要條件,只要使其一不發(fā)生,則可避免

死鎖發(fā)生,死鎖預(yù)防是屬于一種靜態(tài)的策略

12.1【解析】ADSL技術(shù)通常使用1對線進行信息傳輸。

13.后繼雙向鏈表中,一個指針指向前驅(qū)或前件,一個指針指向后繼或后

件。

14.非關(guān)系非關(guān)系

15.鏈式存儲結(jié)構(gòu)在計算機中用一組任意的存儲單元存儲線性表的數(shù)據(jù)

元素(這組存儲單元可以是連續(xù)的,也可以是不連續(xù)的).\r\n\u3000\u3000

它不要求邏輯上相鄰的元素在物理位置上也相鄰.因此它沒有順序存儲

結(jié)構(gòu)所具有的弱點,但也同時失去了順序表可隨機存取的優(yōu)點\r\n

16.面向?qū)ο蠡?0面向?qū)ο蠡?0

17.圖像【解析】頁面是一種結(jié)構(gòu)化文檔,采用超文本標記語言(HTML)

書寫而成。HTML是一個簡單的標記語言。用來描述Web文檔的結(jié)構(gòu)。

①基本結(jié)構(gòu)

18.進程【解析】UNIX的系統(tǒng)結(jié)構(gòu)可分為兩大部分,一部分是操作系

統(tǒng)的內(nèi)核,另一部分是系統(tǒng)的外殼。內(nèi)核部分由文件子系統(tǒng)和進程控制

子系統(tǒng)組成;外殼由Shell解釋程序、支持程序設(shè)計的各種語言、編譯

程序和解釋程序、實用程序和系統(tǒng)調(diào)用接口等組成。

19.WITHGRANTOPTIONWITHGRANTOPTION解析:GRANT語句

的一般格式為:

GRANT<權(quán)限》[,(權(quán)限)]…

[ON<對象類型><對象名>]

TO〈用戶>[<用戶>]...

[WITHGRANTOPTION];

其中若指定了WITHGRANTOPTION子句,則獲得某種權(quán)限的用戶還

可以把這種權(quán)限再授予其他的用戶。若沒有指定WITHGRANTOPTION

子句,則獲得某種權(quán)限的用戶只能使用該權(quán)限,但不能傳播該權(quán)限。

2O.[(n-l)/2]【解析】完全二叉樹中除最下面一層外,各層都被結(jié)點充滿

了,每一層結(jié)點個數(shù)恰是上一層結(jié)點個數(shù)的2倍。因此,從一個結(jié)點的

編號就可以推知它的雙親及左、右子女結(jié)點的編號。當i<n/2時,結(jié)點

i的左子女是結(jié)點2i,否則結(jié)點i沒有左子女;當i<(n-1)/2時,結(jié)點i

的右子女是結(jié)點2i+l,否則結(jié)點i沒有右子女;當詳1時,結(jié)點i的雙

親是結(jié)點”2]。

21.D

22.C解析:把概念設(shè)計階段設(shè)計好的基本E-R圖轉(zhuǎn)換為與選用的具體

機器上的DBMS所支持的數(shù)據(jù)模型相符合的邏輯結(jié)構(gòu)(包括數(shù)據(jù)庫模式

和外模式)。這些模式在功能上、完整性和一致性約束及數(shù)據(jù)庫的可擴充

性等方面均應(yīng)滿足用戶的各種要求。

23.B

24.B

25.A

26.B

27.D解析:概念模型的表示方法很多,其中最為著名和常用的是

P.P.S.Chen提出的實體一聯(lián)系方法。該方法用E-R圖來描述現(xiàn)實世界的

概念模型。

28.A

29.D解析:PowerBuilder是由美國著名的數(shù)據(jù)庫應(yīng)用開發(fā)工具廠商

PowerSoft公司(于1991年6月推出的完全按照客戶機/服務(wù)器體系結(jié)構(gòu)

設(shè)計的快速應(yīng)用開發(fā)系統(tǒng),是一個客戶機前端開發(fā)工具。它除了具有題

中選項中的特點,其特點還有可同時支持與多種數(shù)據(jù)庫的連接,支持動

態(tài)數(shù)據(jù)交換(DDE)、動態(tài)鏈接庫(DLL)、對象鏈接與嵌入(OLE)強大的調(diào)

試器和多種調(diào)試方式等。

30.B解析:允許刪除基本表中的元組的權(quán)限是DELETE。

31.\n[審題關(guān)鍵句】計算金額,按產(chǎn)品名稱從大到小進行排列,相同的

則按金額從大到小排列,結(jié)果存入結(jié)構(gòu)數(shù)組。

\n【解題思路】

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

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

\n【參考答案】

\n

\n

32,\n【審題關(guān)鍵句】字符替代f(p)=p*llmod256,小于等于32或ASCII

碼是奇數(shù)不變,否則替換。

\n【解題思路】

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

求有所不同,參考答案的第6行,修改if條件語句的設(shè)置即可。

\n【參考答案】

\n

\n

33.\n[審題關(guān)鍵句】字符的ASCII值右移4位二進制位,高位補。后加

原字符的ASCII值。

\n【解題思路】

\n①定義兩個循環(huán)變量i、j和一個無符號字符變量tmp。

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

等于文章最大行數(shù)maxline。在第二個for循環(huán)中,從每行第1個字符開

始,依次遞增直到其值等于該行字符串的最大長度,然后在循環(huán)體中指

定每次循環(huán)時,將第i行第i個位置上的字符的ASCII值的二進制數(shù)右

移4位,然后將所得的值再加上原字符的ASCII碼值。

\n【參考答案】

\n

34.\n[審題關(guān)鍵句】千數(shù)-百位-十位-個位數(shù)大于零的個數(shù),把所有滿足

此條件的數(shù)依次存入數(shù)組,按從小到大的順序排序。

\n【解題思路】

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

計的四位數(shù)的條件是“千數(shù)-百位-十位-個位數(shù)大于零”,參考答案的第8

條語句修改if語句的判斷條件。另外,對于數(shù)據(jù)交換的整型變量trap可

以自定義其變量名。

\n【參考答案】

\n

\n

\n

35.\n[審題關(guān)鍵句】以行為單位對字符串變量的下標為奇數(shù)的字符按從

小到大排序,結(jié)果仍按行重新存入字符串數(shù)組中。

\n【解題思路】

\n①因為要進行字符之間的互換,所以定義局部字符變量ch。定義循環(huán)

變量i、isko

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

或大于20,在循環(huán)體中實現(xiàn)對每行字符串的處理。在循環(huán)體中執(zhí)行第二

層for循環(huán),循環(huán)變量j從1開始,依次遞增2直到其值等于

(int)strlen(xx[i]),在第三層for循環(huán)中,循環(huán)變量k從j+2開始,依次遞

增2,直到其值等于(int)strlen(xx[i]),如果字符)XX[i]田的ASCII碼值大

于)XX[i][k]的ASCII碼值,則兩者進行互換,實現(xiàn)字符串)XX[i]中下標

為奇數(shù)的位置上的字符按其ASCII值從小到大的順序進行排序,下標為

偶數(shù)的位置上的字符仍按原來位置存放的功能。

\n【參考答案】

\n

\n

36.【審題關(guān)鍵句】以行為單位對字符按從大到小排序,結(jié)果仍按行重新

存入字符串數(shù)組中。

\n【解題思路】

\n①首先定義字符變量ch和無符號整型變量i、j、k0

\n②對字符二維數(shù)組XX,在第一層for循環(huán)中,變量i從0開始,依次

遞增直到其值等于m

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論