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

下載本文檔

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

文檔簡介

2022年安徽省蚌埠市全國計算機等級考試

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

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

一、1.選擇題(10題)

i.在關系數(shù)據(jù)庫中元組的集合稱為關系。通常標識元組的屬性或最小屬

性組稱為

A.主鍵B.定義C.屬性D.模式

2.下列關于多值依賴的敘述中,不正確的是

A.若X——丫,則X1—Z,其中Z=U-X-Y

B.若X—>―>Y,而Z=,則稱X—>—>Y為平凡的多值依賴

C.若X-Y,則X一一Y

D.若X一—丫,則X—Y

3.下列關于數(shù)據(jù)庫系統(tǒng)特點的敘述中,正確的一條是____o

A.各類用戶程序均可隨意地使用數(shù)據(jù)庫中的各種數(shù)據(jù)

B.數(shù)據(jù)庫系統(tǒng)中概念模式改變,需將與其有關的子模式做相應改變,否

則用戶程序需改寫

C.數(shù)據(jù)庫系統(tǒng)的存儲模式如有改變,概念模式無需改動

D.數(shù)據(jù)一致性是指數(shù)據(jù)庫中數(shù)據(jù)類型的一致

4.邏輯結構設計的成果是形成邏輯設計說明書,?下面哪一項不是邏輯設

計說明書包括的內容?

A.應用設計指南B.E-R模型C.物理設計指南D.模式和子模式的集合

5.主要由于何種原因,使UNIX易于移植?

A.UNIX是由機器指令書寫的

B.UNIX大部分由匯編語言,少部分用C語言編寫

C.UNIX是用匯編語言編寫的

D.UNIX小部分由匯編語言,大部分用C語言編寫

6.計算機系統(tǒng)中判別是否有中斷事件發(fā)生應是在()

A.進程切換時B.執(zhí)行完一條指令后C.執(zhí)行P操作后D.由用戶態(tài)轉入

核心態(tài)時

7.將局部E-R圖集成為全局E-R圖時,可能存在3類沖突,下面對這

些沖突的描述中,不屬于這3類沖突的是

A.屬性沖突B.結構沖突C.命名沖突D.模式?jīng)_突

8.實際上數(shù)據(jù)庫設計者能有效控制的是

A.輔助空間B.數(shù)據(jù)通信延遲時間C.I/O隊列等待時間D.封鎖延遲

9.下列敘述中錯誤的是

A.硬件是指中央處理機、存儲器和輸入輸出等物理設備

B.操作系統(tǒng)的作用主要是管理系統(tǒng)中的各種資源

C.操作系統(tǒng)主要是考慮管理系統(tǒng)的功能,因此為用戶提供良好的界面主

要是由應用軟件來完成

D.操作系統(tǒng)是與計算機硬件關系最為密切的系統(tǒng)軟件

10.下列問題是基于以下的5階B樹結構,該B樹現(xiàn)在的層數(shù)為2。

往該B樹中插入關鍵碼72后,該B樹的第2層的結點數(shù)為

A.6B.7C.8D.9

二、填空題(10題)

11.在X.80。中將安全攻擊分為兩類:被動攻擊和

12.從被管理設備中收集數(shù)據(jù)有兩種方法:輪詢法和基于中斷法,將兩者

結合起來的(Trap-directedPolling)是執(zhí)行網(wǎng)絡管理最有效

的方法。

13.PowerDesigner是SYBASE公司提供的CASE工具,它包括多個模

塊,其中用于數(shù)據(jù)庫概念數(shù)據(jù)建模(CDM)的模塊是_____。

14.防火墻是指設置在不同網(wǎng)絡或之間的一系列部件的組

4

口o

15/『,的作零元素,則計算非零元素MIWjWiWn)的地址

公式為Loc,%)3?_________

16.在SQLServer2008中,系統(tǒng)提供的具有創(chuàng)建數(shù)據(jù)庫權限的服務器角

色是__________O

17.SQLServer性能工具有:()和數(shù)據(jù)庫引擎優(yōu)化顧問

18.()是數(shù)據(jù)庫中的一個邏輯命名空間,可以存放表、視圖等數(shù)據(jù)庫

對象,用于對數(shù)據(jù)庫對象進行分類。

19.設有關系R(A,B,C)和S(A,D,E,F),若將關系代數(shù)表達式:

心………R<S用SQL語言的查詢語句表示,則有:SELECTR.A,B,D,

FFROMR,SWHERE。

20.計算機是由運算器、存儲器、輸入設備和輸出設備這5個

主要功能部件組成的,它們被稱為計算機的五大硬件。

三、單選題(10題)

21.E-R圖是數(shù)據(jù)庫設計的工具之一,它適用于建立數(shù)據(jù)的()

A.中繼器B.橋接器C.路由器D.網(wǎng)關

22.邏輯文件存放在存儲介質上時,采用的組織形式是與什么有關?

A.邏輯文件結構B.存儲介質特性C.主存儲器管理方式D.分配外設方

23.已經(jīng)獲得除CPU以外的所有所需資源的進程處于()狀態(tài)。

A.運行狀態(tài)B.就緒狀態(tài)C.自由狀態(tài)D.阻塞狀態(tài)

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

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

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

O

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

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

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

SQLServer服務器

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

26.在E-R圖和數(shù)據(jù)流圖中都使用了方框,下列說法中有錯誤的是()

A.在E-R圖中表示實體B.在E-R圖中表示屬性C.在數(shù)據(jù)流圖中表示起

點D.在數(shù)據(jù)流圖中表示終點

27.()是將若干對象和它們之間的聯(lián)系組合成一個新的對象。

A.分解B.抽象C.聚集D.概括

28.采用SPOOLing技術的主要目的是()。

A.提供內存和磁盤的接口B.減輕用戶編程負擔C.提高CPU和設備交

換信息的速度D.提高獨占設備的利用率

29.下面關于關系的性質描述正確的是

A.每列中的分量可以來自不同的域

B.一個關系中可以有相同的元組

C.每一個分量必須是不可分的數(shù)據(jù)項

D.不同列的分量必須來自相同的域

3O.Aarr和Barr兩個數(shù)組說明如下:VARAarr:Array[0...7]ofchar;

Barr:Array[-5...2,3...8]ofchar;這兩個數(shù)組分別能存放的字符的最

大個數(shù)是()

A.7和35B.1和5C.8和48D.1和6

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

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

號字符串數(shù)組XX中;請編制函數(shù)ChA,其函數(shù)的功能是:以行為單位

把字符串中的第一個字符的ASCII值加第二個字符的ASCII值,得到

第一個新的值,存入數(shù)組單元xx[i][O]中(其中:i是文章中的某行)。第

二個字符的ASCII值加第三個字符的ASCH值,得到第二個新的值,存

入數(shù)組單元xx[i]⑴中。以此類推一直處理到最后第二個字符,最后一個

字符的ASCH值加原第一個字符的ASCH值,得到最后一個新的值,存

放在原字符串對應的位置上,之后把已處理的字符串逆轉后仍按行重新

存入無符號字符串數(shù)組XX中。最后main函數(shù)調用函數(shù)WriteDat把結

果XX輸出到out.dat文件中°

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

號和空格,并也按它的ASCII值作以上處理。注意:部分源程序存放在

test.c文件中。

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

的內容。

1flnclude<stdio.h>

2?include<string.h>

3unsignedcharxx(50][80];

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

5intReadDat(void);

6voidWriteDat(void);

7voidChAfvoid)

8

9

10

11voidmalnO

if(ReadDatO)

14(

15printfL數(shù)據(jù)文件fn.da匕不能打開!\n\007*j;

16return;

17}

18ChA();

19WriteDat();

20>

產(chǎn)從文件tndM中it取一管英文文拿存入到無符號字符串畋彷X1中

21intReadDat(void)

22(

23FILE?fp;

24inti?0;

25char*p;

26if((fp-fopenLln.daL,)-NULL)

27return1;

28while(fgets(xx(i),80,fp)!*NULL)

29(

30p■strchr(xx(l),?\nf);

31if(p)*p=0;

32

33)

34maxline■1;

35fclose(fp);

36return0;

37}

/?把蛤果xx■出到outctoi文件中?/

38voidWriteDat(void)

39{

40FILE*fp;

41inti;

42fp■fopen(Rout.dat0,*ww);

43for(i-0;i<maxline;i++)

44(

45printf(w%s\nR,xx[ij);

46fprintf(fprfs\n..xx[il);

47}

48fclose(fp);

49

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

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

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

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

制函數(shù)SortDat,其功能要求:按產(chǎn)品代碼從小到大進行排列,若產(chǎn)品代

碼相同,則按金額從小大進行排列,最終排列結果仍存入結構數(shù)組sell

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

提示:若中間變量為PROtemp,則可以直接使用結構賦值語句進行解

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

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

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

finclude<stdio.h>

2tinclude<8tring.h>

3linclude<stdlib.h>

4,defineMAX100

5typedefstruct

5

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

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

9intdj;/?,價?/

10int91;/?tfB?/

11longje;/?金??/

12)PRO;

13PROsell[MAX];

14voidReadDat();

15voidWriteDat();

16voidSortDat()

17

18

19

20voidtMin()

21

22menisoc0.slzeof<sel1));

23ReadDat();

24SortDat();

25WritoDat(1;

26!I

j/,康取W100個m侑記事并存入然符數(shù)州Hl中?/

27;voidReadDat()

28

29FILE-fp;

30charstr(80)9ch[11];

31intI;

32fp-fopenL1n.dat,**r*);

33for(i?0;1<100;m

34(

35fgetg(str,80.tp);

36memcpy(sei1(1|.dwrstr*4);

n

memcpy<sellf1],mcfstr?4.10);

38memcpy(ch,3tr4-14,4);chMl*0;

39aellfiJ.dj,Atol(ch);

40memcpy(ch,str”8.5):chf5]?0:

41sellfl].si■atol(ch);

42sellIil.je-(long)sell(1).dj?sell11].91;

43

44{close(fp);

45)

/?IE給■■出到支付ouuht中?/

46voidWriteDatO

48\FILE*fp;

49jinti;

50fp■fopen(*out.dat",*wH>;

51ford?0:1<100;144)

52(

S3fprintf(£p-%52s^4d*5d%101d\n",selXfi-.dm,sell(i|.mc

trsell(l).djfsell[11.sl#

sellHJ?jo)i

54I

55fcloso(fp);

56

33.已知數(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ù)輸出到Outdat文件中。

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

存序中已定義數(shù)a|200|.b(200J.已定義交《Lent

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

1Iinclude<stdio.h>

?defineMAX200

inta(MAX],b[MAXIrent

4voidwriteDat();

5voidjsValO

6

7

8

9voidreadDat()

10

11inti;

12FILE*fp;

fp=fopen("in.dat","rR)

14for(i*0;1<MAX;

fscant(fp4rd".&a(1])

feiose(fp);

voidmam()

int1;

readDat《);

22jsVal();

23printf("滿足條件的敦ent);

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

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

26printf(n\n*);

27writeDat();

28

29voidwriteDat()

30

31FILE*fp;

32int1;

33fp-fopen(wout.dat0,Hw°);

Mw

34fprintf(fpF%d\n,cnt);

35for(i?0;i<ent;

36fprintf(fp>"%d\nw,b(i]);

37fclose(fp)i

38

34.函數(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的

內容。

1Ifinclude<stdio.h>

2!tinclude<string.h>

3i?include<ctype.h>

4;unsignedcharxx(50][80];

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

6;intReadDat(void);

7JvoidWriteDat(void);

8?voidencryptChar()

9

10

11

12\void

13p

14;if(ReadDatO)

15

16prints「數(shù)期文件in.dat不能打開!\n\007-);

17return;

18;?

19iencryptCharO;

20?WriteDat();

21;?

i/?從文件a&i中談取一?英文文章.存入現(xiàn)無符號字將申敷祖u中

22;intReadDat(void)

23!(

24;FILE*fp;

25jint1-0;

26iunsignedchar*p;

27if((fp-fopenl-in.dat","r"))-NULL>

28return1;

29;while(fgets(xx[i)#80#fp)!?NULL)

30;

31;p?strchr?\n,);

32;if(p)*p?0;

33\

34J)

35;maxline■1;

36!fclose(fp);

37ireturn0;

38;]

八圮雄果MX■出刎文件CHlLdtf中?/

39!voidWriteDat(void)

40\(,

41;FILE

42;inti;

ww

43Jfp-fopen("out.datr*w);

44Ifor(1?0ji<maxline;i**)

45;

w

46!printf(**%s\nrxx(l]);

47?fprintf(fpr7s\n”,xx[ij);

48\)

49?fclose(fp);

50?

35.已知在in.dat中存有若干個(個數(shù)<200)1四位十進制數(shù)字組成的正

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

數(shù)CalValueO,其功能要求:

1,求出該文件中共有多少個正整數(shù)totNum;

2.求這些正整數(shù)右移1位二進制位后,產(chǎn)生的新數(shù)是偶數(shù)的數(shù)的個數(shù)

totCnt,以及滿足此條件的這些正整數(shù)(右移前的值)的算術平均值totPjz0

最后main函數(shù)調用函數(shù)WriteDat把所求的結果輸出至ijout.dat文件

中。

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

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

和輸出函數(shù)WriteDatO的內容。

?include<stdio.h>

2IdefineMAXNUM200

3intxx(MAXNUM);

4inttotNum■0;〃文件in.dot中共刊多少個正整數(shù)

5inttotCnt-0;〃符合條件的無整故的個數(shù)

6doubletotPjz■0.0;〃平均儻

7intReadDat(void);

8voidWriteDat(void);

9voidCalValue(void)

IC

11

12

13voidmain()

14(

15int1;

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

17xx[i)=0;

18if(ReadDat())

19(

20print?!笖?shù)據(jù)文件in.dat不能打開!\007\nR);

21return;

22?

23CalValue();

24print,(”文件in.dat中共有正位敷Zd個\n",totNum);

25prlntf("符令條件的正整數(shù)的個數(shù)一討個"",totCnt);

26;printf("平均值=、.21f\n",totPjz);

27WriteDat();

28I

/?讀取垃若干個正整敷并存入數(shù)mXX中?/

29IintReadDat(void)

?

30i?

31:FILE-fp;

32?inti-0;

33!if((fp-fopen(-in.dat->-r"))-NULL)

34;return1;//Min.datXftWifi?1

\/?wbll??1(執(zhí)行.■■文件5.dat的姑題退出?/

35?whiledfeof(fp))

36;I

37;fscanf<fp,"d,”?〃從文件存入xx(外仇

38iI

39;fclose(fp>;

40:return0;〃1E文件an.st若干個壬”?取井正?棕人“tttu中總為0

41;)

;/??!計算的整存入攵件out.ut中?/

42?voidWriteDat(void)

43j(

44;FILE-fp;

45[fp-fopen("out.dAt*r*w*);

w

46-tprlntf(fpr*%<i\n%d\nt.2Il\n,totNum,totCnt,totPjx);

47:fclose(fp);

48;}

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

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

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

再求出所有滿足此條件的四位數(shù)平均值pjzl,以及所有不滿足此條件的

四位數(shù)平均值pjz2o最后main函數(shù)調用寫函數(shù)writeDat把結果ent,

pjzl,pjz2輸出到out.dat文件。

例如:7153.7+1-S+3,則該數(shù)淌足條件計■平均值討zL且個數(shù)

8129.8+1!-2-^.則談數(shù)不橘足條件計算平均值pjz2.

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

程序中已定義數(shù)俎??(300].已定義交量rent.Rjzl.pjz2

請勿改動數(shù)據(jù)文件ndM中的任何敢據(jù).主喻就maEO、點嚼數(shù)readDUG和。南數(shù)writeDW)的內容.

1■finclude<stdlo.h>

inta[300}tcnt-0;

3doublepoxl-0.0,pjz2?0.0;

4voidreadDatO;

5voidwriteDat();

6voidjsVAluo()

7

B

9

10voidmain()

12readD&t();

13jsValueO;

14writeDat();

15printf("cnf%d\n滿足條件的平均值p2jl-17.21f\n不脩足條件的平均值pzj2-i7.21f\n",

cnt,pjxl,pjz2);

16

voidreadDat()

18(

19FILE*fp;

2。inti;

卬?fopen(Rin.datM,RrM);

22for(i-0;i<300;i*+)

23fscanf(fp,7d/,&a[i]);

24fclose(fp);

25

26voidwriteDat()

27

26FILE*fp;

29fp■fopen(**out.dat",Mw**);

n

30fprintf(fp,?,%d\n%7.21f\n%7.21f\nrent,pjzl,pjz2);

31fclose(fp);

32

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中。

例如:6712.6垃=7+1,則該數(shù)滿足條件存入敷蛆b中.且個數(shù)5忤6計1?

8J29.8福!?什2.則讀數(shù)不滿足條件忽略.

注意,部分源程序存在t?t.c文件中.

程序中已定義敷鈕,a(300].b(300].已定義變量;ent

請勿改動數(shù)據(jù)文件in.d?t中的任何數(shù)據(jù)、主的數(shù)main()、讀函數(shù)readDat()和寫函數(shù)writcD")的內容.

Iinclude<stdio.h>

2inta[300)/b[300),cnt-0;

3voidwriteDat0;

4voidreadDat();

5voidjsValue()

6

7

8

9main。

10(

11int1;

12readDatO;

13jsValueO;

14writeDat();

,,,,

15printf(cnt?%d\n<ent);

16for(i?0;i<ent;

Mw

17printf(b(%d]-%d\nr1,b(i));

18

19voidreadDat()

20(

21FILE*fp;

22int1;

23fp?fopen("in.daf#;

24for(i-0;i<300;

25fscanf(fp*"Qd,",&a(i]);

26;fclose(fp);

27!J

28;voidwriteDat0

2”

30?FILE?fp;

31\int1;

321fp?fopen(°out.datw,wwH);

33jfprintf(fp#7d\n".ent);

34;for(i-0;i<ent;i**)

w

35;fprintf(fp,-%d\nrb[l));

36;fclose(fp);

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最后main函數(shù)調用函數(shù)WriteDat把

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

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

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

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

?#include<stdlo?h>

!idefineMAXNUM200

3;intxx(MAXNUM];

4?inttotNum=0;〃文仆xn.dat中共開多少個正

5?inttotCnt-0;〃料令條件的正短效的個數(shù)

6:doubletotPjz?0.0;〃平均值

7!intReadDat(void);

8?voidWriteDat(void);

9?voidCalValue(void)

10

11

12

13voidmain()

14(

15inti;

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

17xxfi)-0;

18if(ReadDat())

19

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

21return;

22I

23CalValueO;

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

25printf("符合條件的正整數(shù)的個數(shù)7d個\"*".totCnt);

26printfL平均值21f\n",totPjz);

27WriteDat();

28I

/?讀取這若干個正鱉斂并存入致fliu中?/

29intReadDat(void)

30(

31FILE*fp;

32inti?0;

33if((fp-fopen("in.datwrw))?NULL)

34return1;

35while(!feof(fp))

36(

37fscanf<fp,7d?”.);

38)

39fclose(fp);

40return0;

41J

,?把計算姑聚存入文件。Ut.uu中?/

42voidWriteDat(void)

43(

44FILE*fp;

45fp-fopen("out.datH,**wH);

46fprintf(fp/"%d\n%d\n,?21f\n",匕otNum,totCnt#totPjz);

47fclose(fp);

48

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

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

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

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

制函數(shù)SortDat,其功能要求:按產(chǎn)品名稱從大到小進行排列,若產(chǎn)品名

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

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

提示:若中間變量為PROtemp,則可以直接使用結構賦值語句進行解

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

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

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

?include<3tdio.h>

2?include<string.h>

3*include<stdllb.h>

A?defineMAX100

5typedefstruct

6

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

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

9intdji/,?單價?/

10intdl;/,Mt?/

11longje;/?金??/

12}PRO;

13PROsellIMAX);

14voidReadDatO;

15voidWrlteDat();

16voidSortDat()

17

18

19

20voidmain()

21<

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

23ReadDat();

24SortDatO;

25WriteDat();

26)

27voidReadDatO

28I?

29FILE?fp;

30charstr[80],ch[ll];

31inti;

32fp?£open(Mln.datM*wrw);

33for(i-0;i<100;1??】

34I

35fgets(str,80.fp);

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

37imemcpy(sell(i).scfstr10)

38:tnemcpy(chtstr*14r4);ch[4]?0;

39isellfi)?dj-atol(ch);

40;memcpy(ch*atr*18r5);ch[5]-01

41!sell|i].si?atol(ch);

sellll].je?(long)sell(i),dj?sellfl].91;

43

44fclose(fp);

45

46voidWrlteDat(>

47

48FILE*fp;

49inti;

SOfp-fopcn(wout.dat",Ww

SIford-0;1<100;

52

53fprlntf(fp,"Qs,s*4d、5d“01d\n"?sell(ii.dm?selX(i]?mcsell(l|.dj,aellfi].sl

rr

sellfij?)o);

54

55fclosetfp);

56

40.已知數(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。

例如i1239.9-1-2-3>0,則該數(shù)滿足條件存入數(shù)組1)中?且個故cntFit+L

8129.9-8-b2<0.則諫數(shù)不滿足條件忽略?

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

程序中已定義數(shù)組:]300卜b{3001.已定義殳最,ent

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

finclude<stdio.h>

inta【300),b(300),cnt-0;

3voidreadDat();

4voidwriteDat();

5voidjsValue()

6

7

8

9mainO

10

int1;

12readDat();

13jsValueO;

14writeDat();

R

15printf("cnt-%d\n#ent);

16for(i*0;1<ent;

17printf("bIW]-W\n*,i.

18;1

19!voidreadDat()

20;(

21-FILE*fp;

22?inti;

wR

23;£p?fopen(in.datr*r*');

24!for(1■0;i<300;if*)

25,fscant(fp,"、d,,;

26-fclose(fp);

27j)

28?voidwriteDat()

29\(

30jFILE-fp;

31\inti;

w

32jfp-fopen(out.dat*,r|;

H

33jfprintf(fp,,*%d\nrent);

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

35!fprintf(fp,Mtd\nH,b[il);

36jfclose(£p);

37

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

41.設某全國性的運輸企業(yè)建立了大型0LTP系統(tǒng),并在該系統(tǒng)之上建立

了數(shù)據(jù)倉庫。OLTP系統(tǒng)和數(shù)據(jù)倉庫中有如下數(shù)據(jù)表:運輸明細表(運輸

單ID,發(fā)送站ID,終到站ID,貨物ID,貨物重量,運輸價格,發(fā)貨日

期)匯總表1(發(fā)送站ID,終到站ID,貨物ID,發(fā)貨日期,總重,總

運價)匯總表2(發(fā)送站ID,終到地區(qū)ID,貨物ID,發(fā)貨日期,總重,

總運價)匯總表3(發(fā)送站ID,終到站ID,貨物ID,發(fā)貨月份,總重,

總運價)匯總表4(發(fā)送地區(qū)ID,終到地區(qū)ID,貨物類別ID,發(fā)貨日

期,總重,總運價)該企業(yè)管理的貨運站約有100個,貨物約有500種

共10類,各匯總表都建有主碼,且各表有合理的維護策略,在每次維護

后數(shù)據(jù)能保持一致。設有視圖V,該視圖的訪問頻率很高,其查詢結果

模式為(發(fā)送地區(qū)ID,終到站ID,發(fā)貨月份,總重,總運價),該視圖

現(xiàn)以匯總表1為計算數(shù)據(jù)源。經(jīng)監(jiān)控發(fā)現(xiàn),匯總表1的被訪問頻率過高,

導致系統(tǒng)整體性能下降,而其它匯總表被訪問頻率較低。在不增加匯總

表和索引的情況下,請給出一個改善系統(tǒng)服務性能的優(yōu)化方案,并簡要

說明理由。(1。分)

42.某網(wǎng)上商城因為業(yè)務發(fā)展,原有的系統(tǒng)不能很好的滿足需要,因此采

用了一套新的經(jīng)營管理系統(tǒng),此系統(tǒng)使用SQLServer2008數(shù)據(jù)庫管理

系統(tǒng)。此系統(tǒng)上線運行前,需將商場原有的數(shù)據(jù)導入到新系統(tǒng)中。原有

系統(tǒng)使用SQLServer2000,數(shù)據(jù)結構與新系統(tǒng)不完全一致。因此需要把

數(shù)據(jù)從SQLServer2000導入到SQLServer2008中,為了保證數(shù)據(jù)一

致性,數(shù)據(jù)導入過程中要求暫停業(yè)務且必須在3小時內完成。(1)在原

有數(shù)據(jù)導入新系統(tǒng)的過程中,實施人員發(fā)現(xiàn)原有數(shù)據(jù)量很大,導人數(shù)據(jù)

需要四小時,業(yè)務無法接受。經(jīng)分析某工程師認為,數(shù)據(jù)導入過程中的

數(shù)據(jù)庫I/O很高,但導入數(shù)據(jù)的程序本身對系統(tǒng)資源占用率很低。該工

程師建議將數(shù)據(jù)導入過程中的數(shù)據(jù)恢復模式從“完整”模式改為“簡單”

模式以提高數(shù)據(jù)導人速度;而另一位工程師則認為此方法未必能提高數(shù)

據(jù)導入速度,而且還可能導致數(shù)據(jù)丟失,不建議使用此方法。請分析此

方法是否能夠提高數(shù)據(jù)導入速度并給出理由,同時分析此操作的數(shù)據(jù)丟

失風險。(5分)(2)在成功導入歷史數(shù)據(jù)后,此系統(tǒng)順利上線運行。在

上線運行的第一周,發(fā)現(xiàn)數(shù)據(jù)庫服務器的CPU使用率很高,達到近90%,

高峰期間達到100%,且系統(tǒng)內存占用率達到90%,但系統(tǒng)I/O很輕。

業(yè)務人員反應系統(tǒng)操作速度很慢。為了提高系統(tǒng)運行速度。在不修改應

用程序的前提下,兩位工程師提出了不同的解決辦法:I.為服務器增

加2顆CPU,緩解CPU使用率很高的問題;II.為服務器增加一倍內

存,緩解內存使用率很高的問題。考慮成本,現(xiàn)階段只能按照一種方案

實施。請指出在現(xiàn)有情況下,哪種方案更合理并給出理由。(5分)

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

43.在信息系統(tǒng)的需求分析中,廣為使用的DFD建模方法屬于()。

A.結構化分析方法B.數(shù)據(jù)分析方法C.數(shù)據(jù)抽象方法D.業(yè)務歸納方法

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

于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ù)在計算機中存儲

及處理的特征

參考答案

LA解析:關系對應于二維表,元組對應于表中的一行,屬性對應于表

中的一類,主鍵用來唯一地標識一個元組的一個或一組屬性。關系中的

某一組屬性若其值可以唯一地標識一個元組,則該屬性組為一個候選關

鍵字。若一個關系中由多個候選關鍵字,則可任選一個作為主關鍵字,

也稱主鍵。

2.D解析:若X一一Y,則X-Z,其中Z=U-X-Y,即多值依賴具有對

稱性若X>>Y,而Z=,則稱X—>—>Y為平凡的多值依賴著X—>—>Y,

則X一一Y,即函數(shù)依賴可以看做多值依賴的特殊情況。注意若x一一Y,

則X-Y和多值依賴的特殊情況正好相反,所以錯誤,故D)選項正確。

掌握關系數(shù)據(jù)庫中,函數(shù)依賴的種類和函數(shù)依賴成立的條件。

3.C解析:數(shù)據(jù)庫系統(tǒng)的存儲模式如有改變,概念模式無需改動。因為

概念模式是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結構和特征的描述,它隱藏了物理

存儲的細節(jié),注重于描述實體、數(shù)據(jù)類型、聯(lián)系、用戶操作和約束。

4.B解析:邏輯設計說明書包括以下內容:①應用設計指南。②物理設

計指南。③模式和子模式的集合。其中E-R模型是概念結構設計的主要

成果。因此本題正確答案為選項B。

5.D解析:UNIX的外核程序和大部分的內核程序都是C語言寫的,這

使得系統(tǒng)易于移植,且可方便地移植到不同的硬件環(huán)境中。

6.B解析:處理器每執(zhí)行完一條指令后,硬件的中斷裝置立即檢查有無

中斷事件發(fā)生,若有中斷事件發(fā)生,則暫停現(xiàn)行進程的執(zhí)行,而讓操作

系統(tǒng)的中斷處理程序占用處理器,這一過程稱為“中斷響應”。

7.D解析:將局部E-R圖集成為全局E-R圖時,可能存在3類沖突:屬性

沖突;結構沖突;命名沖突。

8.A

實際上數(shù)據(jù)庫設計者能有效控制的是I/O服務和輔助空間;有限控制

的是封鎖延遲,CPU時間和主存空間;完全不能控制的是CPU和I/O

隊列等待時間,數(shù)據(jù)通信延遲時間。掌握數(shù)據(jù)庫物理設計過程,以及

在物理設計過程中應該考慮的開銷問題。

9.C解析:硬件主要包括中央處理機、存儲器和輸入輸出等物理設備;

操作系統(tǒng)的作用主要是管理系統(tǒng)中的各種資源,它不僅管理系統(tǒng)中的各

種資源,而且還為用戶提供良好的界面,操作系統(tǒng)是與計算機硬件關系

最為密切的系統(tǒng)軟件。注意:操作系統(tǒng)有兩個重要作用:管理系統(tǒng)中的

各種資源和為用戶提供良好的界面,故C選項錯誤。掌握操作系統(tǒng)的功

能,計算機中各種軟硬件的功能和區(qū)別。

10.C解析:對于葉結點處于第i層的B樹,插入關鍵碼總是進入第i-1

層的結點。題目中的B樹層數(shù)為2,葉結點處于第2層,將關鍵碼72插

入第1層.

該B樹的第2層的結點數(shù)變?yōu)?。因此本題答案為選項Co

11.主動攻擊【解析】在X800中將安全攻擊分為兩類:被動攻擊和主

動攻擊。被動攻擊試圖了解或利用系統(tǒng)的信息,但不影響系統(tǒng)資源。主

動攻擊試圖改變系統(tǒng)資源或影響系統(tǒng)工作。

12.陷入制輪詢法【解析】從被管理設備中收集數(shù)據(jù)有兩種方法:一種

是輪詢方法,另一種是基于中斷的方法。將以上兩種方法結合的陷入制

導輪詢方法可能是執(zhí)行網(wǎng)絡管理最有效的方法。

13.DataArehitectDataArchitect解析:PowerDesigner是一組緊密集成的

計算機輔助軟件工程(CASE)工具,用于為復雜的數(shù)據(jù)庫應用完成分析、

設計、維護、建立文檔和創(chuàng)建數(shù)據(jù)庫等功能。它可以根據(jù)用戶的項目規(guī)

模和范圍的需要提供靈活的解決方案。PowerDesigner由五個模塊組成:

MetaWorks,ProcessAnalyst,DataArchitect,WarehouseArchitect和

AppModelero

DataArchitect提供概念數(shù)據(jù)模型設計,自動的物理數(shù)據(jù)模型生成,針對

多種數(shù)據(jù)庫管理系統(tǒng)的數(shù)據(jù)庫生成,開發(fā)工具的支持和高質量的文檔特

性。

14.網(wǎng)絡安全域【解析】防火墻是指設置在不同網(wǎng)絡或網(wǎng)絡安全域之間

的一系列部件的組合。

15.Loc(all)【解析】計算非零元索aij(lSjSiWn)的地址的公式為:Loc(aij)

=Loc(an)十i*(i-1)/2+(j-l)o

16.Dbcreator

17.SQLServerProfiler

18.架構(或模式,Schema)

19.R.A=S.A或S.A=R.A【解析】自然連接是一種特殊的等值連接,它

要求兩個關系中進行比較的分量必須是相同的屬性組,并且要在結果中

把重復的屬性去掉。本題是自然連接,所以本題答案為R.A=S.A或S.A

=R.AO

20.控制器控制器解析:以存儲程序原理為基礎的馮?諾依曼結構的計算

機,一般都由5大功能部件組成,它們是:運算器、控制器、存儲器、

輸入設備和輸出設備。運算器對數(shù)據(jù)進行算術運算和邏輯運算;控制器

控制各部分自動協(xié)調地工作,完成對指令的解釋和執(zhí)行;存儲器存放程

序和數(shù)據(jù);輸入設備是外部向計算機傳送信息的裝置,?輸出設備是將計

算機內部二進制形式的信息轉換成人們所需要的或其他設備能接受和

識別的信息形式。

21.A

22.B解析:用戶的邏輯文件要存放到存儲介質上時,文件系統(tǒng)要根據(jù)存

儲設備的類型,用戶采用的存取方式?jīng)Q定文件在存儲介質上的組織方式。

23.B

24.C

25.B

26.B方框代表的是實體,屬性是橢圓,聯(lián)系是菱形

27.C解析:聚集是將若干對象和它們之間的聯(lián)系組合成一個新的對象。

28.D解析:在一類設備上模擬另一類設備的技術稱為虛設備技術。通常

使用高速設備來模擬低速設備,以此把原來慢速的獨占設備改造成為若

干進程共享的快速共事設備。就好像把一臺設備變成了多臺虛擬設備,

從而提高了設備的利用率.我們稱被模擬的設備為虛設備。SPOOLing

技術是一類典型的虛設備技術。

29.C解析:關系的性質1、每列中的分量來自同一個域;2、不同列的分

量可以來自相同的域,但是不同列的屬姓名不能相同;3、列的順序可以

交換;4、行的順序可以交換;5、一個關系中不能有相同的元組;6、每

一個分量必須是不可分的數(shù)據(jù)項。

30.C

31.\n【審題關鍵句】以行為單位,新字符串中每個字符的ASCH碼值等

于該位置上的原字符ASCII碼值加其后面一個字符的ASCII碼值,逆

序排序。

\n【解題思路】

\n①定義整型循環(huán)變量i、j和字符局部變量yuan。

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

或等于maxline,在循環(huán)體中,首先把第i行的第一個字符)XX[i][0]賦給

變量yuan,在第二層for循環(huán)中,循環(huán)變量j從0開始,依次遞增直到

其值等于該行字符串的長度減1,在循環(huán)體中,將字符xx[i][j]的ASCII

溫馨提示

  • 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

提交評論