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

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

2022年遼寧省丹東市全國計算機等級考試

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

學校:班級:姓名:考號:

一、1.選擇題(10題)

1.下面有關模式分解的敘述中,不正確的是______。

A.若一個模式分解保持函數(shù)依賴,則該分解一定具有無損連接性

B.若要求分解保持函數(shù)依賴,那么模式分解可以達到3NF,但不一定能

達到BCNF

C.若要求分解既具有無損連接性,又保持函數(shù)依賴,則模式分解可以達

到3NF,但不一定能達到BCNF

D.若要求分解具有無損連接性,那么模式分解一定可以達到BCNF

2.在多道程序系統(tǒng)中,每組進程中的每一個進程均無限期地等待被該組

進程中的另一個進程所占有且永遠不會釋放的資源,這種現(xiàn)象稱為

A.獨占B.等待C.睡眠D.死鎖

3.以下關于計算機網(wǎng)絡的基本特征的敘述中,哪一條是不正確的?

A.在計算機網(wǎng)絡中采用了分組交換技術

B.建立計算機網(wǎng)絡的主要目的是實現(xiàn)計算機資源的共享

C.互聯(lián)的計算機是分布在不同地理位置的多臺獨立的“自治計算機”

D.聯(lián)網(wǎng)計算機之間的通信必須遵循共同的網(wǎng)絡協(xié)議

4.設計作業(yè)調度算法時,不需要考慮下列哪一個因素?

A.友好的用戶界面B.均衡使用資源C.公平性D.吞吐量大

5.數(shù)據(jù)獨立性是指()。

A.數(shù)據(jù)依賴于程序B.數(shù)據(jù)庫系統(tǒng)C.數(shù)據(jù)庫管理系統(tǒng)D.數(shù)據(jù)不依賴于

程序

6.設屬性A是關系R的主屬性,則屬性A不能取空值(NULL)。這是

A.實體完整性規(guī)則B.參照完整性規(guī)則C.用戶定義完整性規(guī)則D.域完

整性規(guī)則

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

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

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

8.在一個數(shù)據(jù)庫中,模式與內模式的映像個數(shù)是

A.1個B.與用戶個數(shù)相同C.由設置的系統(tǒng)參數(shù)決定D.任意多個

9.下列關于緊湊技術的敘述中,是不正確的。

A.內存中任意一個程序都可以隨時移動

B.移動可以集中分散的空閑區(qū)

C.移動會增加處理器的開銷

D.采用緊湊技術時應盡可能減少移動的信息量

10.在可變分區(qū)存儲管理中,最優(yōu)適應分配算法要求對空閑區(qū)表項按哪

種順序進行排列?

A.地址從大到小B.地址從小到大C.尺寸從大到小D.尺寸從小到大

二、填空題(10題)

n.網(wǎng)絡操作系統(tǒng)可分為面向任務型和通用型兩類,而通用型網(wǎng)絡操作系

統(tǒng)又可分為和基礎級系統(tǒng)。

12.關系代數(shù)是一種關系操縱語言,它的操作對象和操作結果均為

13.當執(zhí)行刪除操作時,一般只需要檢查一【】規(guī)則

14.被中止的事務對數(shù)據(jù)庫所數(shù)的任何改變必須撤銷,這稱作事務的

15.在“學生一選課一課程”數(shù)據(jù)庫中的三個關系如下:

SS#,SNAME,SEX,AGE),SC(S#,C#,GRADE),C(C#,

CNAME,TEACHER)查找選修“數(shù)據(jù)庫技術”這門課程的學生的學生名

和成績,則使用連接查詢的SQL語句是:SELECTSNAME,GRADE

FROMS,SC,CWHERECNAME='數(shù)據(jù)庫技術'AND_U_

16.JPEG是一種_________圖像壓縮編碼的國際標準。

17.m階B樹的根結點至少有【】棵子樹。

18.計算機網(wǎng)絡利用通信線路將不同地理位置的多臺獨立的——的計算

機系統(tǒng)連接起來,以實現(xiàn)資源共享。

19.關系數(shù)據(jù)模型包括關系數(shù)據(jù)結構、關系操作集合和3個重要

部分。

20.傳輸層的主要任務是向用戶提供可靠的服務,透明地傳

送報文。

三、單選題(10題)

21.概念設計的結構是得到一個與()

A.DBMS有關的邏輯結構B.DBMS無關的概念模式C.DBMS和硬件

有關的邏輯結構D.DBMS和硬件無關的數(shù)據(jù)結構

22.概念結構設計的目標是產(chǎn)生數(shù)據(jù)庫概念結構(即概念模式),這結構主

要反映()

A.DBA的管理信息需求B.應用程序員的編程需求C.企業(yè)組織的信息

需求D.數(shù)據(jù)庫的維護需求

23.設數(shù)組data。..m]作為循環(huán)隊列SQ的存儲空間,front為隊頭指針,

rear為隊尾指針,則執(zhí)行出隊操作的語句為()

A.front:=front1

B.front:=(front1)modm

C.rear:=(rear1)modm

D.front:=(front1)mod(m1)

24.在概念設計和邏輯設計之間起橋梁作用的是()

A.DFDB.E-R圖C.數(shù)據(jù)結構圖D.功能模塊圖

25.設散列函數(shù)為H(k)=kmod7,現(xiàn)欲將關鍵碼23,14,9,6,30,12,

18依次散列于地址。?6中,用線性探測法解決沖突,則在地址空間0?

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

26.概念模型()

A.依賴于DBMS和硬件B.獨立于DBMS和硬件C.依賴于DBMSD.獨

立于DBMS

27.二維數(shù)組的元素是4個字符(每個字符占一個存儲單元)組成的

串,行下標i的范圍從。到4,列下標j的范圍從。到5。M按行

存儲時元素M[3,5]的起始地址與M按列存儲時元素()的起始地址相

同。

A.M[2,4]B.M[3,4]C.M[3,5]D.M[4,4]

28.下面哪些是參數(shù)調整中需要關注的對象。

A.內存分配B.磁盤I/OC.資源競爭D.以上全部

29.把電路中的所有元件如晶體管、電阻、二極管等都集成在一個芯片上

的元件稱為()

A.TransistorB.IntegratedCircuitC.ComputerD.VacummTube

30.下面說法中錯誤的是()

A.子類具有繼承性

B.子類的鍵是其超類的鍵

C.子類繼承超類上定義的全部屬性,其本身不可包含其他另外的屬性

D.同一實體類型的若干子類之間可相交也可不相交

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

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

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

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

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

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

WrriteDat把結果xx輸出到out.dat文件中。

例如:位置01234567

源字符串hgfedcba

則處理后字符串hafcdebs

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

請勿改動數(shù)據(jù)文件中的任何數(shù)據(jù)、主的敷main。、讀的數(shù)readDatQ和寫函數(shù)writeDat。的內容.

1!tinclude<stdio.h>

2;Iinclude<string.h>

voidreadDat();

voidwriteDat();

5;charxx(20][80];

*voidjsSort什

10jvoidmain0

11-{

12?readDat();

13ijsSort();

14!writeDat();

15i)

;“從文件2中過取20號教如存放到字構串處fiu中?/

16!voidreadDat()

17;(

16\FILE-in;

19?int1?0;

20;char*p;

21!in-fopen("in.dat-,"L);

22jwhile(i<20“fgets(xx[i],80,in)!-NULL)

24p■strchr(xx[i]<*\n*);

25if(p)"p■0;

26

27

fdose(in);

29)

把姑果XX恰出到outth!文件中?/

voidwriteDat()

32.FILE-out:

33?inti;

34*out■fopen(wout.dat",HwR);

35;for(i?0;i<20;

36\(

37jprintf(w%s\nH,xx[i]);

38;fprintf(out,"Asin”,xx[1]);

39i?)

40>fclose(out);

41)

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

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

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

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

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

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

林:處理前9012509960127025808K

處理箱50998088702560129012

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

請勿改動敝據(jù)文件in.dai中的任何數(shù)據(jù)、I曲數(shù)main。、讀由數(shù)readDa〔()和號徐泉writcDatO的內容.

1iIinclude<stdio.h>

2jlincludeotring.h>

3!voidreadDat();

4;voidwrit^Dat();

5?intad[200),bb[10);

6?voidisSort()

25?voidwriteDat()

26?f

w

32*prXntf("i?%dr%d\nri?l/bb(i]);

33?fprlntf(out,bb(11);

34;1

35!(close(out);

363

33.設有n個人圍坐一圈并按順時針方向從1到n編號,從第s個人開

始進行1到m的報數(shù),報數(shù)到第m個人,此人出圈,再從他的下一個

人重新開始1到m的報數(shù),如此進行下去直到所有的人都出圈為止。現(xiàn)

要求按出圈次序,每10人一組,給出這n個人的順序表。請考生編寫

函數(shù)Josegh(void)實現(xiàn)此功能,并調用函數(shù)writeDat,把結果P輸出到文

件out.dat中。

設n=100,s=l,m=10o

①將1到n個人的序號存入一維數(shù)組P中;

②若第i個人報數(shù)后出圈,則將p內置于數(shù)組的倒數(shù)第i個位置上,而原

來第i+1個至倒數(shù)第i個元素依次向前移動一個位置;

③重復第②步直至圈中只剩下p[l]為止。

注意:部分源程序已經(jīng)給出。

請勿改動主函數(shù)main和輸出數(shù)據(jù)函數(shù)writeDAT的內容。

1linclude<stdio.h>

2IdefineN100

3*defineS1

4*defineM10

Sintp[100]fn,s,m:

6voidWriteDat(void);

voidJosegh(void)

8

9

10

11voidmain()

12(

13m?M;

14nwN;

15s?S;

16Josegh();

17WriteDat();

18)

/?紀砧果p?出到文件ouutat中?/

voidWriteDat(void)

(

int1;

FILEefp;

fp?fopen("out.dat*rRww);

,?以地?的方式,以1。個獨界為-?祖把也由川口■出利解幕匍文件。ut.dm中?/

24for(i-N-1;1>?0;i-)

25

26printf("%4d",p(i]);

27;fprintf(fp,74dLp(lD;

28if(i%10-0)〃如果1■被10整除.射■出一個回東換行檢

29(

30printf("\nM);

31fprintf(fp/"\n*);

32}

33)

34fclose(fp);

35

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

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

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

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

出到文件out.dat中。

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

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

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

例如位置012345678

源字符申dcbahgfe

432198765

則處理后’7符中hgfcabcd

876591234

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

請勿改動數(shù)據(jù)文件in.dn中的任何數(shù)據(jù).主函數(shù)mainO.選曲數(shù)retdDatO和寫曲數(shù)wrisDatO的內容.

1Iinclude<stdio.h>

*include<string.h>

3jvoidreadDat();

4;voidwriteDat();

5!charxx[201[801;

6;voidjsSort()

7i(

B;

9\)

10;voidmain()

12!readDat();

13?jsSort();

14!writeDat();

15j)

!”從文件中取。"數(shù)據(jù)存放到字符市軟機中?/

?w.dai92xx

16ivoidreadDat()

17;(

18?FILE,in;

19;int1■0;

20*char*p;

21;in-fopen(win.datwf"r");

22!whiled<20“fqets(xx[l),80,in)!■NULL)

23\(

24-p■strchr(xx(i]r?\n*);

25jif(p)*p?0;

26?

27?)

28;(close(in);

29;}

:/?紀站果xx?出現(xiàn)文件om&t中?/

30-voidwriteDat()

31;(

32-FILE?out;

33jint1;

34;out-fopen(*out.datH,**wn);

35ifor(1-0;i<20;[?+)

36i1

37!printf("IsSn-*,xx(1]);

38?fprintf(out,w%s\nM/xx[1B;

39jJ

40;fclose(out);

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

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

位數(shù)的千位數(shù)位置上的值大于等于百位數(shù)位置上的值,百位數(shù)位置上的

值大于等于十位數(shù)位置上的值,以及十位數(shù)位置上的值大于等于個位數(shù)

位置上的值,并且原四位數(shù)是奇數(shù),則統(tǒng)計出滿足此條件的個數(shù)ent并

把這些四位數(shù)按從小到大的順序存入數(shù)組b中,最后調用寫函數(shù)

writeDat把結果ent以及數(shù)組b中符合條件的數(shù)輸出到Out.dat文件中。

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

程序中已定義數(shù)組fa|2OO|.b(200j.已定義受ent

請勿改動數(shù)據(jù)文件imdat中的任何數(shù)據(jù)、i函數(shù)main。、讀函數(shù)rcadDatO和寫函數(shù)writeDatO的內容.

1*include<stdio.h>

2■defineMAX200

3inta(MAX],b[MAX|rcn

4voidwriteD&t();

5voidjsVal()

6

r

8

9!voidreadDat()

10

11inti;

?FILE*fp;

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

14for(i"0;i<MAX;i**)

15fscant<fp(i]);

i/

16;fclose(fp);

i(

??>

18?voidmain()

19\(

20?int1;

21JreadDat();

22;jsVal();

23printf("滿足條件的數(shù)?ed\nR.ent);

24jfor(i?0;i<ent;i++)

25prlntf",b[i]);

2r?printf(0\n");

27?wrlteDat();

?

281I

29!voidwriteDat()

30

31

32

M

33fpvfopen<**out.datr"w0);

Mw

34fprintf(fpr%d\n,cnt>;

35for(1?0;i<ent;

36fprintf(fpfw%d\nw,b(i]),

37fclose(fp);

38

36.已知數(shù)據(jù)又件in.dat中存有200個四位數(shù),并已調用讀函數(shù)readDat

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

字和十位數(shù)字重新組成一個新的含有兩位數(shù)字的數(shù)ab(新數(shù)的十位數(shù)字

是原四位數(shù)的千位數(shù)字,新數(shù)的個位數(shù)字是原四位數(shù)的十位數(shù)字),以及

把個位數(shù)字和百位數(shù)字組成另一個新的含有兩位數(shù)字的數(shù)Cd(新數(shù)的十

位數(shù)字是原四位數(shù)的個位數(shù)字,新數(shù)的個位數(shù)字是原四位數(shù)的百位數(shù)

字),如果新組成的兩個數(shù)ab-cd>=0且ab.cd<=10且兩個數(shù)均是奇數(shù),

同時兩個新數(shù)的十位數(shù)字均不為零,則將滿足此條件的四位數(shù)按從大到

小的順序存入數(shù)組b中,并要計算滿足上述條件的四位數(shù)的個數(shù)ent。

最后main函數(shù)調用寫函數(shù)writeDat把結果ent以及數(shù)組b中符合條件

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

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

程序中已定義數(shù)Sth4200].b(200J,已定義變量Ient

調勿改動數(shù)據(jù)文件irtdal中的任何數(shù)據(jù).主函數(shù)讀函數(shù)neadDatO和寫函數(shù)wrrtcDHt()的內容.

1jIinclude<stdio.h>

2\IdefineMAX200〃定義宏交ItMAX,其值,于

3\intalMAX),b(MAXJ,ent-0;〃龍義全IMIVTl敷煙.[MAX].3IMAX?和受*CM,KM僮等于O

4?voidwriteDat();

5;voidjsVai()

61(

8j)

9!voidreadDatO〃從in.dat文件中it取200個四E,存入數(shù)如.中

10;I

11!inti;

12JFILE#fp;

13;fp-fopen(wln.datN?

14!for(1?0;i<MAX;m

0

ISifscanf(fpr-%dr(a[1]):

16;fclose(fp);

171I

18;voidmain()

19\(

20jint1;

21readDat();

22jsvaio;〃?用”vno的總實現(xiàn)融目要求的動俺

23printf「滿足條件的n".ent);

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

25printf(n%d”,b[i]);

26printf;

27writeDat();

28j)

29voidwriteDatO〃化itir姑累cm以及數(shù)餌b中符合條件的四位數(shù)■出到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

37.已知數(shù)據(jù)文件in.dat中存有300個四位數(shù),并已調用讀函數(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ù)調用寫函數(shù)writeDat

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

例如;9123,男1?2-3>O.則讀數(shù)滿足條件存入效組b中,且個數(shù)cnE+l?

9812,%卷1?2<0,則該數(shù)不滿足條件忽略.

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

程序中已定義數(shù)組:[300].b{300J.已定義變量1CM

請勿改動數(shù)據(jù)文件indal中的任何數(shù)施、主函1(讀話數(shù)reMDatO和寫函數(shù)writeDatO的內容.

#include<stdio.h>

2inta(300),b(300)/cnt-0;〃定義整型依如c[3g],b(300]和交量5t.并且ent的初值為0

3voidwriteDat();

4voidreadDat();

5voidjsValue0

6

7

8

9main0

10

IIint1;

12readDat();

13!isValue();

14;writeDat();

15!printf("cnt-%d\n**rent):

16iford-0;1<ent;i++)

17\printfCb(%dl-td\n"r“

18?1

19;voidreadDat()

20!1

21iFILE*fp;

22:int1;

23;fp-fopenC^in.dat",*rw);

24;for(1-0;1<300;

25Jfscanf(fp,Fd.",&a[i)

26Jfclose(fp):

27i)

28?voidwriteDat()

29?

30;FILEafp;

311int1;

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

33\

fprintf(fpr"%d\n"rent);

34?ford-0;1<ent;£??)

35jfprlntf(fp,Fd\n",b【U

36i

ifclose(fp);

37i

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

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

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

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

這些正整數(shù)的算術平均值totPjzo最后maini函數(shù)調用函數(shù)WriteDat把

所求的結果輸出到Out.dat文件中。

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

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

和輸出數(shù)據(jù)函數(shù)WriteDat的內容。

1jIinclude<stdio.h>

2ifdefineMAXNUM200

3!intxx[MAXNUM);

4?inttotNum■0;〃文件in.dat中共科#少個IE?敏

5;inttotCnt?0;〃符合條科的正整室的個敢

6?doubletotPjz-0.0;//平均值

7;intReadDat(void);

8!voidWriteDat(void);

9?voidCalValue(void)

10;(

iii

13;voidmain{)

14

15int1;

16for(i-0;i<MAXNUM;i++)

17xx[1]■0;

18if(ReadDatO)

19(

20pr,ntf(“數(shù)據(jù)文件in.dat不能打開!\00八

21return;

22}

23CalValue();

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

R

25printf「符合條件的正整數(shù)的個數(shù)=%d4*\nrtotcnt);

26printf平均值一,?21f\n".totPjz);

27WriteDat();

28)

/?速取這并F個正整數(shù)并存入效mxx中?/

29intReadDat(void)

30(

31FILE?fp;

32inti?0;

33if((fp*fopen("in.dat**rw))—HULL)

34return1;

35while(!feof(fp))

36(

37fscanf(fp,"Qd.”,&xx[11?6]);

38J

39fclose(fp);

40return0;

41)

/?ie計算站果存入文件out.dat中?/

42voidWriteDat(void)

43|

44FILE?fp;

45fp■fopen("out.datw,wwH);

n

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

47fclose(fp);

48

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

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

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

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

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

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

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

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

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

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

進行處理。

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

內容。

1finclude<stdio.h>

2?include<strXng.h>

3?include<ctype.h>

4unsignedcharxx[50][80];

intmaxline*0;/?文章的總行敷?/

6intReadDat(void);

7voidWriteDat(void);

8voidencryptCharO

10

11

12voidmainO

13

14if(ReadDat())

15{

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

17return;

18

19encryptChar:

20WriteDat();

21)

/?從文科中讀取一?英文文章,存入>1無符號字的刑敏祖“中〃

22intReadDat(void)

23

24FILE*fp;

25inti■0;

26unsignedchar*p;

27if((fp*fopen("in.daf,,,rR))-NULL)

28return1;

29while(fgets(xx[i),80tfp)!?NULL

30

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

32if(p)*p■0;

33

34}

35maxline?i;

36fclose(fp);

37return0;

38;)

!八圮雄果”"出到文件OUL山中?/

39;voidWriteDat(void)

40

41FILE*fp;

42int1;

wMH

43fp?fopen("out.datrw);

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

45(

w

46printf("%s\nrxx(1]);

47fprintf(tp,7s\n”.xx[i));

48)

49fclose(fp);

50

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

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

中依次取出一個四位數(shù),對每一個四位數(shù)作如下處理:把個位數(shù)字和千

位數(shù)字重新組成一個新的含有兩位數(shù)字的數(shù)(新數(shù)的十位數(shù)字是原四位

數(shù)的個位數(shù)字,新數(shù)的個位數(shù)字是原四位數(shù)的千位數(shù)字),以及把百位數(shù)

字和十位數(shù)字組成另一個新的含有兩位數(shù)字的數(shù)(新數(shù)的十位數(shù)字是原

四位數(shù)的百位數(shù)字,新數(shù)的個位數(shù)字是原四位數(shù)的十位數(shù)字),如果兩個

新組成數(shù):一個是奇數(shù),另一個為偶數(shù),并且至少有一個數(shù)能被17整

除,同時兩個新數(shù)的十位數(shù)字均不為零,則將滿足此條件的四位數(shù)存入

數(shù)組b中,并計算滿足上述條件的四位數(shù)的個數(shù)ent,而后對數(shù)組b進

行降序排序。最后main函數(shù)調用寫函數(shù)writeDat把結果ent以及數(shù)組b

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

例如:一個四位數(shù)為4512,依題意組成的第一個新數(shù)為24,第二個新

數(shù)為51,其中51能被17整除,這兩個新數(shù)的十位數(shù)字不為零,則4512

這個四位數(shù)滿足題意所規(guī)定條件。

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

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

請勿改動H[據(jù)文件in.dal中的任何數(shù)據(jù)、主噸數(shù)nuin().讀函數(shù)rcadDa〔()和寫函數(shù)writeDat()的內容.

1!!include<stdio.h>

2iIdefineMAX200

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

A!voidwriteDat();

5tvoidjsVal()

6;(

7j

8;\

9!voidreadDat()〃從in?dau文件中灌取2。。個四粒數(shù)將人效力Ia中

10;(

11jint1;

12IFILE*fp;

13\fp?fopen(Hin.datw,wrM);

14?for(i~0;1<MAX;

M

15jfscanf(fp^"%dr&a(i|;

16?fclose(fp):

17;1

18ivoidmain()

19;(

20;int1;

21!readDat();

22;jsValO;〃?用吮效力vne,突現(xiàn)或行襄求的功儺

23?printf("SI足條件的ent);

24?for(i*0;i<ent;i—)

25;printf("%dR,b(i]);

26!printf("\nw);

27jwriteDat();

28J;

29!voidwriteDat()〃把計算結果cmd及被Wb中相合條件的四位依■出到皿41rt文件中

32Iintx!

33;fp-fopen("out.datR,Ww**);

34'fprintf(fpr"idXn"?ent);

35jfor(iw0;i<ent;“?)

36\fprintf(fp,**%d\n*rb[1])

37!fclose(fp>;

38i]

五、設計與應用題(2題)

41.設有高校選課系統(tǒng),需要對學校的系信息、教師信息、課程信息、

學生信息、學生選課信息進行管理。已知系(DEPT)信息包括系編號

(DeptNO)、系名稱(DeptName);教師(Teacher)信息包括教師

號(TNO)、教師名(Tname);課程(Course)信息包括課程號

(CNO)、課程名(CName)、課程學分(Credit);學生(Student)

信息包括學號(SNO)、學生姓名(Sname)、學生性別(Sex)。選

課系統(tǒng)的管理規(guī)則如下:I.一個系可聘用多名教師,一個教師只受

聘于一個系;II.一個系可有多名學生,一個學生只屬于一個系;

III.一名教師可講授多門課程,一門課程可由多名教師講授;IV.一

名學生可選修多門課程,一門課程可被多名學生選修;V.學生選修完

課程后,可獲得相應課程的成績。針對以上描述,完成下列設計內

容:(1)構建選修課系統(tǒng)的ER圖。(要求圖中的實體集名用試卷中

給出的英文名,聯(lián)系所關聯(lián)的實體集名的首字母,字母問用“一”或

連接,大小寫不限)。(6分)(2)根據(jù)所構建的ER圖,設計滿足

3NF的關系模式,并標出每個關系模式的主碼和外碼。(要求關系模

式名同實體集名或聯(lián)系名,屬性名用試卷中給出的英文名,大小寫不

限)(4分)

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

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

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

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

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

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

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

六、單選題口分K2題)

43.某數(shù)據(jù)庫應用系統(tǒng)在運行中,用戶反映某操作很慢。系統(tǒng)工程師在用

戶的客戶機及數(shù)據(jù)庫服務器上使用數(shù)據(jù)庫管理系統(tǒng)自帶的客戶端程序

執(zhí)行此操作所涉及的SQL語句,發(fā)現(xiàn)在兩個環(huán)境下SQL語句執(zhí)行的速

度都很慢。為了提高效率,下列檢查無需進行的是()o

A.檢查客戶機到數(shù)據(jù)庫服務器的網(wǎng)絡情況

B.檢查數(shù)據(jù)庫服務器的CPU使用情況

C檢查這些操作涉及到的表是否已建立有效的索引

D.檢查數(shù)據(jù)庫中是否存在大量鎖

44.SQLServer2008提供了方便的數(shù)據(jù)導入/導出向導,現(xiàn)利用該向導

將S1服務器上某數(shù)據(jù)庫中T1表的數(shù)據(jù)導人到S2服務器某數(shù)據(jù)庫中已

有的T2表中。在數(shù)據(jù)源上的操作由用戶U1完成,在目的服務器上的

操作由用戶U2完成。則U1和U2需要具有的權限是()。

A.ul需要T1表的查詢權限和T2表的插入權限,U2無需任何權限

B.U2需要T1表的查詢權限和T2表的插入權限,U1無需任何權限

C.U1需要T1表的查詢權限,U2需要T2表的插入權限

D.U1需要T1表的查詢權限和S2服務器的登錄權限,U2需要T2表的

插入權限和S1服務器的登錄權限

參考答案

1.A解析:第三范式是指關系模式R中不存在非主屬性傳遞依賴于碼。

BCNF范式是指關系模式屬于第一范式,且每一個決定因素(非平凡的函

數(shù)依賴)都包含候選碼。有以下3個標準:分解具有“無損連接性"分解

具有“保持函數(shù)依賴”;分解既“保持函數(shù)依賴”又具有“無損連接性”。根

據(jù)以上的原則,若要求分解保持函數(shù)依賴,那么模式分解總能達到3NF,

但不能達到BCNF。若要求分解保持函數(shù)依賴,又具有無損連接性,那

么模式分解能達到3NF,但不一定能達到BCNFO

2.D解析:在多道程序系統(tǒng)中,每組進程中的每一個進程均無限期地等

待被該組進程中的另一個進程所占有且永遠不會釋放的資源,這種現(xiàn)象

稱為系統(tǒng)處于死鎖狀態(tài)。掌握如何解除死鎖,以及睡眠、等待、獨占的

概念。

3.A解析:計算機網(wǎng)絡的基本特征有三點:一是計算機網(wǎng)絡建立的主要

口的是實現(xiàn)計算機資源的共享;二是互聯(lián)的計算機是分布在不同地理位

置的多臺獨立的自治計算機;三是互聯(lián)計算機之間的通信必須遵循共同

的網(wǎng)絡協(xié)議。而選項A中的分組交換技術僅是美國國防部高級研究計

劃局的ARPA網(wǎng)的核心技術,屬數(shù)據(jù)通信技術中的一種,并不是所有計

算機網(wǎng)絡的共性。

4.A解析:選擇調度算法一般考慮3個基本目標:盡量提高系統(tǒng)的作業(yè)

吞吐量;盡量使CPU和外部設備保持忙碌狀態(tài),以提高資源利用率;

對各種作業(yè)合理調度,使所有用戶都滿意,而不必考慮用戶界面是否友

好。本題的答案為Ao

5.D解析:數(shù)據(jù)獨立性是數(shù)據(jù)庫領域的一個常用術語,包括數(shù)據(jù)的物理

獨立性和數(shù)據(jù)庫邏輯獨立性。數(shù)據(jù)的物理獨立性是指用戶的應用程序與

存儲在磁盤上的數(shù)據(jù)庫中的數(shù)據(jù)是相互獨立的。也就是說,數(shù)據(jù)在磁盤

上的數(shù)據(jù)庫中是怎樣存儲的,是由DBMS管理的,用戶程序不需要了

解,應用程序要處理的只是數(shù)據(jù)的邏輯結構,這樣當數(shù)據(jù)的物理存儲改

變時,應用程序不用改變。數(shù)據(jù)的邏輯獨立性是指用戶的應用程序與數(shù)

據(jù)庫的邏輯結構是相互獨立的,也就是說,數(shù)據(jù)的邏輯結構改變了,用

戶程序也可以不變。

6.A解析:實體完整性是指關系中的元組在組成主鍵的屬性上不能有空

值;參照完整性是指外鍵的值不允許參照不存在的相應表的主鍵的值,

或者外鍵為空值:用戶定義的完整性是根據(jù)用戶根據(jù)具體應用需要而定

義的,域完整性是用戶定義的完整性規(guī)則之一。屬性A是關系R的主

屬性,不能為空值,是遵循實體完整性規(guī)則。

7.D

8.A解析:數(shù)據(jù)庫系統(tǒng)有三級模式結構,從內向外依次是:內模式、模

式、外模式。內模式是數(shù)據(jù)物理結構和存儲結構的描述;模式是數(shù)據(jù)庫

所有數(shù)據(jù)的邏輯結構和特征描述;外模式是數(shù)據(jù)庫用戶看到和使用的局

部數(shù)據(jù)的邏輯結構和特征。三級模式間有兩層映像,分別是模式/內模

式映像和外模式/模式映像。模式/內模式映像只有一個,外模式/模

式映像與用戶個數(shù)相同。所以正確答案為A。

9.A解析:解決碎片的方法是移動所有的占用區(qū)域,使所有的空閑區(qū)合

并成一片連續(xù)區(qū)域,這一過程稱為緊湊。顯然,緊湊帶來大的系統(tǒng)開銷,

應盡可能減少移動的信息量,但并不是內存中任意一個程序都可以隨時

移動。

10.D解析最優(yōu)適應分配算法可把空閑區(qū)按長度以遞增順序登記在空閑

區(qū)表中。分配時順序查找空閑區(qū)表,由于查找時每次總是從分區(qū)中的最

小的一個區(qū)開始,所以,當找到第一個能滿足作業(yè)要求的分區(qū)則一定是

所有能滿足作業(yè)要求的分區(qū)中的最小的一個分區(qū)。

11.變形級系統(tǒng)【解析】通用型網(wǎng)絡操作系統(tǒng)又可分為變形級系統(tǒng)和基

礎級系統(tǒng)。

12.關系(或表)關系(或表)

13.參照完整性當更新、刪除、插入一個表中的數(shù)據(jù)時,通過參照引用相

互關聯(lián)的另一個表中的數(shù)據(jù),來檢查對表的數(shù)據(jù)操作是否正確

14.回滾回滾解析:未能成功完成的事務稱為中止事務,中止事務必須

對數(shù)據(jù)庫的狀態(tài)不造成影響,即中止事務對數(shù)據(jù)庫所做的任何改變必須

撤銷。一旦中止事務造成的變更被撤銷,則稱事務已回滾。

15.S.S#=SC.S#ANDSC.C#=C.C#數(shù)據(jù)庫技術為C表中的屬性,學生名為

S表中的屬性,成績?yōu)镾C表中的屬性。因此要將三張表關聯(lián)起來

16.靜止【解析】JPEG是關于靜止圖像壓縮編碼的國際標準,由國際標

準化組織和國際電報電話咨詢委員會聯(lián)合制定。它適合于連續(xù)色調、多

級灰度、單色或彩色靜止圖像的數(shù)字壓縮編碼。

17.22解析:根據(jù)B樹的規(guī)則,m階B樹至少有2棵子樹,最多有m棵

子樹。

18.自治【解析】計算機網(wǎng)絡利用通信線路將不同地理位置的多個自治

的計算機系統(tǒng)連接起來,以實現(xiàn)資源共享。

19.關系完整性約束關系完整性約束

20.端到端(或End.tO.End)【解析】傳輸層的主要任務是向用戶提供可靠

的端到端服務,透明地傳送報文。它向高層屏蔽了下層數(shù)據(jù)通信的細節(jié),

因而是計算機通信體系結構中最關鍵的一層。

21.B

22.A

23.D

24.B

25.B解析:將23,14,9,6,30,12,18依次按散列函數(shù)K(k)=kmod7計算,

并按線性探測法解決沖突,得到的散列結果是14,18,23,9,30,12,6O

26.B

27.B

28.D

29.B

30.C

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

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

\n【解題思路】

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

變量i、i、ko

\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國用的ASCH碼值大

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

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

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

\n【參考答案】

\n

\n

32.\n【審題關鍵句】按每個數(shù)的后三位降序排列,然后取出滿足此條件

的前10個數(shù)依次存入數(shù)組;如果后三位的數(shù)值相等,則按原先的數(shù)值

進行升序排列。

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

同點:①按每個數(shù)的后三位降序排列,參考答案的第5條語句,修改兩

數(shù)組元素的大小比較符即可;②后三位的數(shù)值相等則按原先的數(shù)值進行

升序排列,參考答案的第13條語句,同樣也是修改兩數(shù)組元素的大小

比較符即可。

\n【參考答案】

\n

\n

\n

33.\n【審題關鍵句】圍圈問題。

\n【解題思路】

\n①定義整型變量i、j,表示出圈人位置的變量si和出圈人序號的變量

Wo并將S的值賦給變量sl(s的值已在源程序中賦值為1)。

\n②通過一個for循環(huán),將n個人的序號存入一維數(shù)組P中(n的值已在

源程序中賦值為100)o

\n③再建立一個for循環(huán),循環(huán)變量i從n開始,即從100開始,依次遞

減直到其值小于2時退出循環(huán)。由于每執(zhí)行一次循環(huán),人數(shù)就會減少1

個,因此,此處的for循環(huán)應表示為遞減方式。在該循環(huán)體中,先計算

每次出圈人的位置,通過表達式“(sl+m.l)%i”計算每次出圈人的位置

(m的值已在源程序賦值為10)。若所得結果為0,則說明要開始報數(shù)的

是最后一個人,在此人前面的那個人就是要出圈的人,再通過一個循環(huán)

將要出圈的人移到數(shù)組最后。

\n【參考答案】

\n

\n

34.\n[審題關鍵句】以行為單位從字符串左邊部分升序排序,排序后左

邊部分與右邊部分進行交換。如果原字符串長度為奇數(shù),則最中間的字

符不參加處理。

\n【解題思路】

\n本題類似第77套試題,通過審題可以發(fā)現(xiàn)主要是對字符串左邊部分

排序時所采用的排序方式不同,參考答案的第11行,修改if條件語句

的設置即可。

\n【參考答案】

\n

\n

35.\n[審題關鍵句】四位數(shù)的千位>=百位>=十位>=個位,且四位數(shù)是奇

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

\n【解題思路】

\n本題類似第9套試題,通過審題可以發(fā)現(xiàn)主要有兩個不同點:一是要

求統(tǒng)計的四位數(shù)的條件是“千位>=百位>=十位>=個位",二是要求該四

位數(shù)是奇數(shù),這兩個不同點都體現(xiàn)在參考答案的第8條語句中,對該語

句進行修改即可,其中,可以判斷奇數(shù)的表達式是、用%2”。

\n【參考答案】

\n

\n

36.【審題關鍵句】千位+十位組合與個位+百位組合,都是奇數(shù),兩數(shù)相

減結果大于等于0小于等于10,從大到小排序。

\n【解題思路】

\n①首先,本題要定義多個變量,包括兩侖循環(huán)變量循環(huán)i、j;用來存

放四位數(shù)分解之后各位數(shù)的變量qw(千位)、bw(百位)、SW(十位)和gw(個

位);兩個用來存放重新組合數(shù)字的變量newVl和newV2。

\n②通過for循環(huán)依次對數(shù)組中的每個四位數(shù)進行分解,每分解一個四

位數(shù),根據(jù)題目要求,對其各位數(shù)進行重新組合,形成兩個新的十位數(shù),

組合條件分別是原四位數(shù)的千位和十位組成一個十位數(shù),個位和百位組

成一個十位數(shù),并將兩個新的十位數(shù)分別賦給變量newVI和newV2o

\n③數(shù)字重組完畢之后,再根據(jù)題目要求篩選滿足條件的四位數(shù),本題

需要考慮多個篩選條件:一是新組合的十位數(shù)中,其十位數(shù)不能為0,

即原四位數(shù)的千位和個位數(shù)字不能為0;二是兩個新組合的十位數(shù)之差

必須大于等于。小于等于10;三是兩個新組合的數(shù)字均為奇數(shù)。

\n④將同時滿足以上3個條件的四位數(shù)賦給數(shù)組b[cnt],同時數(shù)組下標

值加1,當for循環(huán)執(zhí)行完畢后,則將所有滿足條件的四位數(shù)全部存放

到數(shù)組b[cnt]qbo

\n⑤最后通過兩個for循環(huán),對數(shù)組b[cnt]中的元素按從大到小的順序排

溫馨提示

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

評論

0/150

提交評論