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

下載本文檔

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

文檔簡介

[2021年】吉林省通化市全國計算機(jī)等級

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

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

一、1.選擇題(10題)

1.由權(quán)值分別為3,8,6,2,5的葉子節(jié)點生成一棵哈夫曼樹,它的帶

權(quán)路徑長度為

A.24B.48C.72D.53

2.操作系統(tǒng)中,進(jìn)程在下列情況下從執(zhí)行狀態(tài)轉(zhuǎn)為就緒狀態(tài)。

A.進(jìn)程被調(diào)度選中B.時間片用完C.等待某一事件D.等待的事件發(fā)生

3.用二維表數(shù)據(jù)來表示實體之間聯(lián)系的模型叫做

A.網(wǎng)狀模型B.層次模型C.關(guān)系模型D.實體一聯(lián)系模型

4.設(shè)順序表中結(jié)點個數(shù)為n,向第i個結(jié)點后面插入一個新結(jié)點,設(shè)向

每個位置插入的概率相等,則在順序表中插入一個新結(jié)點平均需要移動

的結(jié)點個數(shù)為()。

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

5.若用如下的SQL語句創(chuàng)建表S:CREATETABLES(S#

CHAR(6)PRIMARYKEY,SNAMECHAR(8)NOTNULL,SEXCHAR(2),

AGEINTEGER)

s#SNAMESEXAGE

922345021876李明芳張為王小女男2332

005321偉男34

上列各元組可插入S表的是

I.C0223451'袁鳴明‘,'男',25)

II.(620746,,楊云,,NULL,NULL)

III.(D2072r,張為二'女[21)

A.全部B.i和iic.i和mD.II和m

6.9.數(shù)據(jù)庫管理系統(tǒng)通常提供授權(quán)功能來控制不同用戶訪問數(shù)據(jù)的權(quán)

限,這主要是為了實現(xiàn)數(shù)據(jù)庫的()

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

7.在虛擬頁式存儲管理系統(tǒng)中,地址越界中斷屬于()。

A.輸入輸出中斷B.程序性中斷C.時鐘中斷D.自愿性中斷

8.DB是

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

9.計算機(jī)的內(nèi)存儲器比外存儲器

A.便宜B.儲存更多信息C.存取速度快D.雖貴,但能儲存更多信息

10.在關(guān)系SC(student_id,student_name,course_id,grade)中,有

student_id,course_id—gradestudentid—>student_name關(guān)系SC最高達(dá)至1J

范式。

A.不滿足B.1NFC.2NFD.3NF

二、填空題(10題)

11.在操作系統(tǒng)的存儲管理中,存儲共享的兩個目的是_口_和實現(xiàn)進(jìn)程

通信。

12.

設(shè)哈希函數(shù)h(k)=kmod7,哈希表的地址空間為。?6,對關(guān)鍵字序列(32,

13,49,55,22,38,12)按線性探測法解決沖突,關(guān)鍵字12應(yīng)存

放在散列表中的地址是【】,

查找關(guān)鍵字12需比較的次數(shù)為【】

13.在多道程序設(shè)計中,為了保證系統(tǒng)的安全,將指令系統(tǒng)中的指令分為」]_和非一兩部分。

14.計算機(jī)應(yīng)用技術(shù)領(lǐng)域包括科學(xué)計算、事務(wù)處理、過程控制、輔助工程、

網(wǎng)絡(luò)應(yīng)用和多媒體的應(yīng)用等七大領(lǐng)域。

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

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

16.按網(wǎng)絡(luò)覆蓋范圍分類,用于實現(xiàn)幾十公里范圍內(nèi)大量局

域網(wǎng)的互聯(lián)。

17.使用PowerDesigner的DataArchitect,可以對已有的數(shù)據(jù)庫生成物

理模型(PDM),這種功能通常稱為o

18.SQLServer中一"數(shù)據(jù)頁的大小是__________KBO

19.在數(shù)據(jù)倉庫建立過程中,對數(shù)據(jù)進(jìn)行糾正和預(yù)處理的過程稱為數(shù)據(jù)

20.在因特網(wǎng)中,域名解析通常借助于一組既獨立又協(xié)作的

完成。

三、單選題(10題)

21.在登錄日志文件時,應(yīng)該

A.將更新數(shù)據(jù)庫與登錄文件兩個操作同時完成

B.將更新數(shù)據(jù)庫與登錄文件兩個操作按隨機(jī)的順序完成

C先寫數(shù)據(jù)庫的更新,后登錄日志文件

D.先登錄日志文件,后寫數(shù)據(jù)庫的更新

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

A.子類具有繼承性

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

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

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

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

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

24.消息認(rèn)證是指接收者能夠檢驗收到消息真實性的方法,下列不屬于

消息認(rèn)證的檢驗內(nèi)容?

A.A.證實消息的源和宿B.消息的內(nèi)容是否保持其完整性C.消息

的序號和時間性D.消息是否被竊取

25.以下關(guān)于因特網(wǎng)中的電子郵件的說法,錯誤的是()。

A.A.電子郵件是有固定格式的,它由郵件頭和郵件體兩部分組

B.電子郵件應(yīng)用程序的最基本的功能是:創(chuàng)建和發(fā)送,接收、閱讀和管

理郵件的功能

C.密碼是對郵件的一個最基本的保護(hù)。目前,保證電子郵件安全性的主

要手段是使用大寫字母、小寫字母、數(shù)字和符號混用的密碼

D.利用電子郵件可以傳送多媒體信息

26.如果兩個實體之間的聯(lián)系是1:M,則實現(xiàn)1:M聯(lián)系的方法是()

A.將兩個實體轉(zhuǎn)換成一個關(guān)系

B.將兩個實體轉(zhuǎn)換的關(guān)系中,分別加入另一個關(guān)系的主碼

C.將端實體轉(zhuǎn)換的關(guān)系的主碼,放入端實體轉(zhuǎn)換的關(guān)系中

D.將端實體轉(zhuǎn)換的關(guān)系的主碼,放入T端實體轉(zhuǎn)換的關(guān)系中

27.下列SQLServer提供的系統(tǒng)角色中,具有數(shù)據(jù)庫服務(wù)器上全部操作

權(quán)限的角色是__________O

A.db_ownerB.dbcreatorC.db_datawriterD.sysadmin

28.下列關(guān)于數(shù)據(jù)的邏輯結(jié)構(gòu)的敘述中,哪一個是正確的?()。

A.數(shù)據(jù)的邏輯結(jié)構(gòu)是數(shù)據(jù)間關(guān)系的描述

B.數(shù)據(jù)的邏輯結(jié)構(gòu)反映了數(shù)據(jù)在計算機(jī)中的存儲方式

C.數(shù)據(jù)的邏輯結(jié)構(gòu)分為順序結(jié)構(gòu)和鏈?zhǔn)浇Y(jié)構(gòu)

D.數(shù)據(jù)的邏輯結(jié)構(gòu)分為靜態(tài)結(jié)構(gòu)和動態(tài)結(jié)構(gòu)

29.邏輯文件存放在存儲介質(zhì)上時,采用的組織形式是與什么有關(guān)?

A.邏輯文件結(jié)構(gòu)B.存儲介質(zhì)特性C.主存儲器管理方式D.分配外設(shè)方

30.在建立表結(jié)構(gòu)時定義關(guān)系完整性規(guī)則()

A.使DBS能夠自動維護(hù)數(shù)據(jù)完整性約束條件B.還需要編程實現(xiàn)數(shù)據(jù)完

整性約束條件C.沒有必要定義D.將使系統(tǒng)操作復(fù)雜

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

31.已知數(shù)據(jù)文件in.dat中存有200個四位數(shù),并已調(diào)用讀函數(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進(jìn)

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

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

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

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

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

注部分源程序存在tesl.c文件中?

程序中已定義敷蛆$a[200].b[200],已定義變*:ent

請勿改動數(shù)據(jù)文件in.dat中的任何數(shù)據(jù)、主函數(shù)漆函數(shù)rcadDatQ和寫函數(shù)writeDat()的內(nèi)容.

1!Iinclude<stdio.h>

2iIdefineMAX200

3;inta[MAXhb(MAX],ent-0;

4!voidwriteDat();

5ivoidjsVal()

6\(

e;i

9!voidrcadDat()〃從in.dac■文件中灌取20。個四位或〃入數(shù)Ma中

10.(

11;inti;

12?FILEwfp;

13ifp-fopen("in.datw;

14?for(i-0;i<MAX;

w

15jfscant(fp,"%dr[1]);

16ifclose{fp);

17!)

18?voidmain()

Jft

32.函數(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*Hmod256,mod為取余運算,P是數(shù)組XX中某一

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

成整型變量),如果計算后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)容。

finclude<stdio.h>

Iinclude<string.h>

3?finclude<ctype.h>

4unsignedcharxx[50][80];

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

6;intReadDat(void);

7?voidWriteDat(void);

8;voidencryptCharO

9J(

10;

unsignedintval;

11;

12;

13;voidmam()

14;(

15!if(ReadDatO)

16i(

:;iprintf("數(shù)據(jù)文件m.dat不能打開!\n\007");

return;

19;

20jencryptChar();

21;WriteDat();

22jI

/?從文件tiLdm中諭取一篇英文文IL存人勃字符中數(shù)批1*中?/

23;intReadDat(void)

24!I

25JFILE*fp;

26\inti-0;

27!unsignedchar*p;

28\

if((fp-fopenLin.daL,)-NULL)

29-return1;

1

30?while(fgets(xx(i)#80,fp)?NULL)

31((

32j

p-strchr(xx[ih*\n*);

33iif(p),P-0;

34\if

35:

36;maxiine?i;

37;fclose(fp);

38!return0;

39;?

/?£結(jié)果MX■出到文件outdai中?/

40-voidWriteDat(void)

41

42FILE*fp;

43inti;

44fp-fopen(?,out.dat**,、");

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

46(

H

47printf("ls\nrxx[i]);

48fprintf(fp,Fs\n”,xx[ij);

49)

50fclose(fp);

51

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

例如,9123.9-I-2-3X),則讀數(shù)滿足條件存入敗組b中.且個數(shù)cnmi+1.

9812.9-8-1-20,則該政不滿足條件忽略.

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

程序中已定義1!(組:a(300),b(300),已定義變量卜cm

請勿改動數(shù)據(jù)文件in.dat中的任何數(shù)據(jù).主函敷mainO、波函數(shù)readDatO和寫函數(shù)writeDat()的內(nèi)容.

tlnclude<stdio.h>

2inta(300J,b(3001#cnt-O;〃定義整型Idfi△【300],和攵并且6t的初值為0

3voidwriteDat();

4voidreadDat();

5voidjsVa1ue()

6

7

8

9main()

10

11inti;

12readDat():

13?isValue();

14;writeDat();

R,

15!printf(cnt-%d\n'rent);

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

17\printf(wb(%dl-W\n",“b[:

18I)

19;voidreadDat()

20!(

21?FILE*fp;

22-int1;

wM

23jfp-fopen(in.dat*r*r);

24;ford-0;1<300;if)

25|fscanf(fp,

26jfclose(fp):

AT>I

28!voidwriteDAt()

29;1

30■FILEwfp;

31!int1;

32ifpnfopen(wout.dat","w");

33Jfprintf(tp,"%d\n"fent);

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

35;fprintf(fp,Fd\n",b(iH;

36?fclose(fp);

37I}

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

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

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

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

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

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

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

放在原字符串對應(yīng)的位置上,之后把已處理的字符串逆轉(zhuǎn)后仍按行重新

存入無符號字符串?dāng)?shù)組XX中。最后main函數(shù)調(diào)用函數(shù)WriteDat把結(jié)

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

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

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

test.c文件中。

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

的內(nèi)容。

1?finclude<stdio.h>

2\Iinclude<string.h>

3;unsignedcharxx[50)(80];

4!intmaxiine=0;/?文章的總行數(shù)?/

5;intReadDat(void);

voidWriteDat(void);

7voidChA(void)

8

9

voidmainO

13if(ReadDatO)

14(

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

16return;

17}

18ChA();

19WriteDat();

20]

/?從文件m.dM中康我一編英文丈量存入》無符號字辨申數(shù)的XM中?/

21intReadDat(void)

22(

23FILE*fp;

24inti?0;

25char*p;

26it((fp-fopen(win.datw,Hr*))-NULL)

27return1;

28while(fgets(xx(i)<80#fp)9NULL)

29(

30p■strchr(xx(i)t?\n*);

31if(p),p?0;

32

33)

34maxline?i;

35fclose(fp);

36return0;

37)

/?把結(jié)果xx*出到ouLdal文件中?/

38voidWriteDat(void)

39(

40FILE*fp;

41inti;

42fp-fopenLout.dat".”");

43for(i?0;i<maxline;1+?)

44(

w

45printf(%s\n"/xx(i));

R

6fprlntf(fp/"%s\n#xx[11);

47)

48fclose(fp);

49

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

把這些數(shù)存入數(shù)組a中,請考生編制一函數(shù)jsVal,其功能是:把千位數(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ù)能被5整除,同時兩個新

數(shù)的十位數(shù)字均不為零,則將滿足此條件的四位數(shù)按從大到小的順序存

入數(shù)組b中,并要計算滿足上述條件的四位數(shù)的個數(shù)ent。最后main函

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

到Out.dat文件中。

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

程序中已定義數(shù)ifl:a[200),b[200),巳定義變lbent

請勿改動數(shù)據(jù)文件in.dat中的任何數(shù)據(jù)、I函數(shù)main。、讀函數(shù)0(10&4)和^^函故wrileDatO的內(nèi)容.

1?*include<stdlo.h>

2|fdefineMAX200

3?inta(MAX],“MAXI,ent-0;

4;voidwriteDat();

5'voidisVal()

9?voidreadDat()〃從In.da。文件中迷取200個四位數(shù)存入敷a中

10;(

11!xnt£;

RnRH

13?fp■fopen(in.datrr);

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

15;fscant(fp9

16!fclose(fp);

17:)

18;voidmain()

19!(

20iint1;

readDat();

22?isVai();〃謂用曲數(shù)WV&U),虬現(xiàn)■目■求的功雛

23jprint—”滿足條件的數(shù),%d\n**/ent);

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

25;printf("%dIb(i]);

26jprintf(H\nw);

27?writeDat();

28;J

29voidwriteDat()〃把計簿的IEent以及數(shù)能b中希合條件的四位數(shù)?出舞Mdii文件中

30(

31FILE*fp;

32inti;

33fp-fopen("out.datM,Hww);

34fprintf(fp/ent);

35for(i-0;i<ent;

36fprintf(fp,w%d\n**/b[i]);

37fclose(fp);

38

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

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

其功能要求:

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

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

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

最后main函數(shù)調(diào)用函數(shù)WriteDat把所求的結(jié)果輸出至1J文件out.dat

中。

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

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

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

?include<stdio.h>

2!IdefineMAXNUM200

3\intxx[MAXNUM|;

4;inttotNum-0;〃文件In.dau中年有名少個正整數(shù)

5;mttotCnt■0;〃符合條件的正整數(shù)的個被

6;doubletotPjt-0.0;〃平

7;intReadDat(void);

6;voidWriteDat(void);

voidCalValue(void)

11;

12!

13;voidmalnO

14;

inti;

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

17xx(1]-0;

18if(ReadDat())

19

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

21return;

22

23CalValue();

24printsL文件in.dat中共有正整數(shù)7d個\n",totNum);

25print。L符合條件的正整數(shù)的個數(shù)-、d個\n,tocCnt);

26printf平均值=$?21f\n?,totPjz);

27WriteDatO;

28

八源取這若干個正■敏并存入室ifiix中〃

29IntReadDat(void)

30

31FILE*fp;

32inti-0;

33if((fp-fopen(-In.dat-,-r-D-NULL)

34return1;

35while(!feof(fp))

",

37fscanf(fp,7d.e.&xx(i+>]);

38

39fclose(fp);

40return0;

41

/?把計翼站累存入文件iut.dat中〃

42voidWriteDat(void)

43

44FILE*fp;

45fp-fopen(**out.dat",**w0>;

w

46fprintf(fp,*%d\n%d\ni.21f\n,totNum,totCnt,totPji);

47fclose(fp);

48

37.已知數(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文件中。

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

程序中已定義敬蝸:a[200].b(200].已定義變■,ent

請勿改動數(shù)據(jù)文件im&t中的任何畋據(jù)、主的1smm()、讀南敬edDatO和寫崩數(shù)*期加()的內(nèi)容.

1?linclude<stdio.h>

2\IdefineMAX200

3\intalMAXI,b[MAX],ent-0;

4jvoidwriteDat():

5;voidjsVal()

6\<

7i

8j}

9!voidreadDat()

10;1

11?int1;

12{FILE*fp;

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

14!for(i-0;1<MAX;ii)

15ifscanf(fp,

26?fclose(fp);

17!|

18?voidmain()

19?I

20!inti;

21;readDat();

22:jsVal();

23;phntfL滿足條件的故,,小n**.cnt);

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

25!printf(w%d”,b[i]>;

26;prlntf(0\nH>;

27;writeDat();

28!J

29;voidwriteDat<)

30\(

31?FILEefp;

32;inti;

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

34jfprlntf(fp?"%d\n"rent);

35?for(i■■0;i<ent;ii)

36?fprintf(fpr*td\n*rb(i));

37?fclose(fp);

38j1

38.已知在文件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)品名稱從大到小進(jìn)行排列,若產(chǎn)品名

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

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

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

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

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

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

linclude<stdio.h>

Iinclude<strln9.h>

linclude<stdlib.h>

4tdefineMAX100

6;(

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

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

9!intdjv/?單價?/

10jintsi;/??/

11Jlongje;/?金81?/

12j}PRO;

13;PROsell(MAX);

14*voidReadDat();

15?voidWriteDat();

16;voidSortDat()

17!(

20?voidmain()

21j1

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

23?ReadDat();

24;SortDat0;

WxiteDat();

26}

27voidReadDat()

28(

29FILE

30charstr[B0]9ch[11];

31int1;

32fp-fopen*r*);

for(1?0;i<100;

34

35fgets(str>80.fp);

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

37jmemcpy(sell(1].mc?str?4.10);

38?tnamcpy(ch*4);ch[4]w0;

39isei1(1)?dj?atol(ch);

40?memcpylchf8tr*18*5);uh[51?0,

41jsell|i]<si-atoi(ch);

42;s4lltl].je?(lon9)sell(1).dj,sell(1)

431)

44?fclose(fp);

45;)

46ivoidWrlteDatO

47j<

48[FIIX*fp;

49?inti;

50)fp?fopen(wout.datM?-3**);

51!for(1?0;1<100;)

52j|

53|fprintf(fp#"Is%s14dI5dtl01d\n*?sell(i|.dm(sell[ij.mcrsell(i|.dj,aellfl].slr

!sellI1J.je);

54i}

55\fclose(fp);

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

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

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

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

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

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

例如:位置01234567

源字符串hgfedcba

則處理后字符串hafcdebR

注意:部分源程序存在皿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ù)存放到字柯串?dāng)?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?strehr(xx[i],\n*);

25if(p)*p?0;

26if

27i)

?

28;fdose(in);

29!)

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

30;voidwriteDat()

31\(

32FILEeOUt;

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

40.已知在又件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)品代碼從小到大進(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)行解

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

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

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

Iinclude<stdio.h>

2*tinclude<string.h>

3?tinclude<stdlib.h>

4;?defineMAX100

5typedefstruct

7chardm(5);八產(chǎn)豆代碼?/

charme(11];/?產(chǎn)易名算*/

intdj;/?總價?/

10;intsi;/?收??/

11ilongje;/?金??/

12;PRO;

13!PROsell[MAX);

14?voidReadDat();

15;voidWriteDat();

16!voidSortDatO

17;(

18

19

20voidm41nO

men15Gt.(eel1.0,slzeof(sell));

ReadDatO;

SortDa匕0;

WriteDatO:

/?試取B100個帆2記景先俘人削I種a》HI中?/

voidReadDat()

28(

29FILEafp;

30charatr(80)#ch111);

31

32fp■fopen(*in.datw,"r")?

33for(i?0;i<100;

34(

35fgets(str,80.tp);

36memepy(sell{l|atr?4>j

nveincpy<sell(U.me,str?4.10):

38memepy(chrstr*14,4);ch|4]?0;

39sei1(1].dj*Atoi(ch);

40memepy(ch,str?18?5);ch(5]?0;

41sell[1].si?atoi(ch)/

42sellfi].je?(long)sell(i].dj?sell

43I

44fclose(fp);

45)

八把絡(luò)果■出男兌付gt&t中?/

46!voidWriteDat(>

dm.aelldl.me,sellUI.dj,sellli]

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

41.已知某教務(wù)管理系統(tǒng)的設(shè)計人員在需求分析階段收集到下列原始數(shù)

據(jù)表格:

教師

上級領(lǐng)導(dǎo)教師

教師號教師名職稱工資

9868王文華教授8000null

9983李一斌副教授60009868

9985丁一講師刪9868

0783王潤澤講師刪9868

0899歐陽丹妮講師刪9868

課程

課程號課程名學(xué)分教材號教材名出版社名任課教師號

計算機(jī)原清華大學(xué)出

C2006311計算機(jī)原理9868

理版社

計算機(jī)原計算機(jī)原理與高等教育出

C20063129868

理應(yīng)用版社

清華大學(xué)出

C2004數(shù)據(jù)結(jié)構(gòu)313數(shù)據(jù)結(jié)構(gòu)9868

版社

數(shù)據(jù)庫原清華大學(xué)出

C2010314數(shù)據(jù)庫原理9868

理版社

數(shù)據(jù)庫原數(shù)據(jù)庫原理與高等教育出

C20103159868

理技術(shù)版社

清華大學(xué)出

S3001音樂欣賞216音樂欣賞9983

版社

已知該業(yè)務(wù)系統(tǒng)存在如下規(guī)則:

I.每個教師有唯一的教師號,每個教師號對應(yīng)唯一的一名教師;

II.每門課程有唯一的課程號,每個課程號對應(yīng)唯一的一門課程;

III.每本教材有唯一的教材號,每個教材號對應(yīng)唯一的一本教材;

IV.每個教師最多只有一個上級領(lǐng)導(dǎo),也可以沒有上級領(lǐng)導(dǎo);

V.一門課程僅由一名教師講授;

VI.一本教材僅用于一門課程。(12分)

(1)請根據(jù)原始數(shù)據(jù)表及業(yè)務(wù)規(guī)則,給出該系統(tǒng)的關(guān)系模式,保證每個

關(guān)系模式滿足3NF,并說明每個關(guān)系模式的主碼和外碼。

⑵畫出該系統(tǒng)的ER圖,ER圖中需給出每個實體集的屬性,主碼屬性

用下劃線標(biāo)識。

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

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

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

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

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

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

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

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

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

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

課程后,可獲得相應(yīng)課程的成績。針對以上描述,完成下列設(shè)計內(nèi)

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

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

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

3NF的關(guān)系模式,并標(biāo)出每個關(guān)系模式的主碼和外碼。(要求關(guān)系模

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

限)(4分)

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

43.以下哪個設(shè)計內(nèi)容不屬于數(shù)據(jù)庫應(yīng)用系統(tǒng)總體設(shè)計范疇()o

A.數(shù)據(jù)庫應(yīng)用系統(tǒng)體系結(jié)構(gòu)設(shè)計B.軟硬件選型和配置設(shè)計C數(shù)據(jù)庫

軟件總體設(shè)計D.關(guān)系模式設(shè)計

44.設(shè)有關(guān)系模式R(A,B,C,D),存在函數(shù)依賴集:{A-B,C-D},

則R最高可屬于()o

A.1NFB.2NFC.3NFD.BCNF

參考答案

1.D解析:根據(jù)哈夫曼樹的構(gòu)造原理,可得到這5個節(jié)點對應(yīng)的哈大曼

樹如圖所示”因此其帶權(quán)路徑長度為:(2+3)X3+(5+6+8)X2=53。

2.B解析:進(jìn)程被調(diào)度選中時進(jìn)程就會進(jìn)入運行狀態(tài);等待某一事件的

進(jìn)程應(yīng)該是處于等待狀態(tài)。如果等待的事件發(fā)生,則該進(jìn)程就由等待狀

態(tài)進(jìn)入就緒狀態(tài)。進(jìn)程在執(zhí)行過程中時間片用完則轉(zhuǎn)為就緒狀態(tài)。

3.C解析:在數(shù)據(jù)庫系統(tǒng)中,有3種數(shù)據(jù)模型:網(wǎng)狀模型使用網(wǎng)狀結(jié)構(gòu)

來表示實體之間的聯(lián)系;層次模型使用層次(樹形)結(jié)構(gòu)來表示實體之間

的聯(lián)系;關(guān)系模型用二維表數(shù)據(jù)來表示實體之間聯(lián)系。

4.B解析:若順序表中結(jié)點個數(shù)為n,且往每個位置插入的概率相等,則

插入一個結(jié)點平均需要移動的結(jié)點個數(shù)為n/2o

5.C

6.D解析:在計算機(jī)的安全性控制中,包括用戶標(biāo)識和鑒別、DBMS存

取控制、操作系統(tǒng)安全保護(hù)及數(shù)據(jù)密碼存儲。對于數(shù)據(jù)庫的安全性主要

是DBMS的存取控制機(jī)制,這樣可以確保只授權(quán)給有資格的用戶訪問

數(shù)據(jù)庫的權(quán)限,同時令未被授權(quán)的人員無法接近數(shù)據(jù)。

7.B解析:中斷機(jī)制是現(xiàn)在計算機(jī)設(shè)施中的基本設(shè)施之一。它在系統(tǒng)中

起著通信聯(lián)絡(luò)的作用,以協(xié)調(diào)系統(tǒng)對各種外部資源的相應(yīng)和處理.一般

將中斷源分為兩類:即強(qiáng)迫性中斷和自愿性中斷。自愿性中斷是正在運

行程序時有意識安排的,通常由程序員在編制程序時,因要求操作系統(tǒng)

提供服務(wù)而有意識使用訪管指令或系統(tǒng)調(diào)用,從而導(dǎo)致中斷的。而強(qiáng)迫

性中斷是正在運行的程序所不期望的,它們是否發(fā)生,何時發(fā)生都無法

預(yù)料。這類中斷大致有以下幾種:①輸入/輸出中斷是來自通道或各種外

部設(shè)備的中斷,用以反饋通道或設(shè)備的工作狀況;②硬件故障中斷是機(jī)

器發(fā)生錯誤時的中斷,用以反饋硬件在執(zhí)行過程中出現(xiàn)的故障;③時鐘

中斷是硬件或軟件時鐘到時引起的中斷;④程序性中斷是因運行過程中

的問題所引起的中斷,用于反饋程序執(zhí)行過程中出現(xiàn)的意外情況,如目

態(tài)下執(zhí)行特權(quán)指令、地址越界、虛擬存儲中的缺頁等。因此地址越界中

斷屬于強(qiáng)制中斷中的程序性中斷,本題正確選項為B。

8.A解析:DB是數(shù)據(jù)庫(DataBase)的英文縮寫。

9.C解析:主存儲器簡稱主存或內(nèi)存,是計算機(jī)中用來存放指令和數(shù)據(jù)

并能由中央處理器直接存取的存儲器。計算機(jī)工作時,整個處理過程中

用到的數(shù)據(jù)和指令都存放在內(nèi)存中。輔助存儲器簡稱輔存或外存,是不

直接向中央處理器提供指令和數(shù)據(jù)的各種存儲設(shè)備。它主要用來存放內(nèi)

存中難以容納,但為程序執(zhí)行所需要的數(shù)據(jù)信息。內(nèi)存存儲速度快,但

存儲成本高且容量??;外存的存儲容量大,存儲成本低,但存取速度慢。

10.B

1L節(jié)省內(nèi)存空間存儲共享是指兩個或多個進(jìn)程共用內(nèi)存中相同的區(qū)域,

目的是節(jié)省內(nèi)存空間,實現(xiàn)進(jìn)程間通信,提高內(nèi)存空間的利用效率

12.

56次

h(k)=kmod7,所以地址為:12mod7=5.分別于關(guān)鍵字進(jìn)行比較,從而得

出比較次數(shù)為6.

13.特權(quán)指令

特權(quán)指令是指具有特殊權(quán)限的指令,在多用戶,多任務(wù)的計算機(jī)系統(tǒng)中,

特權(quán)指令卻是不可缺少的。它主要用于系統(tǒng)資源的分配和管理,包括改

變系統(tǒng)的工作方式,檢測用戶的訪問權(quán)限,修改虛擬存儲器管理的段表,

頁表和完成任務(wù)的創(chuàng)建和切換等

14.人工智能【解析】概括起來,計算機(jī)應(yīng)用技術(shù)領(lǐng)域包括科學(xué)計算、

事務(wù)處理、過程控制、輔助工程、人工智能、網(wǎng)絡(luò)應(yīng)用和多媒體的應(yīng)用

等七大領(lǐng)域。

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

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

16.城域網(wǎng)【解析】城域網(wǎng)是介于廣域網(wǎng)和局域網(wǎng)之接的一種高速網(wǎng)絡(luò)。

城域網(wǎng)的設(shè)計目標(biāo)是滿足幾十千米范圍內(nèi)的大量企業(yè)、機(jī)關(guān)、公司的多

個局域網(wǎng)的互聯(lián)需求,以實現(xiàn)大量用戶之間的數(shù)據(jù)、語音、圖形與視頻

等多種信息傳輸。

17.逆向工程逆向工程

18.8KB

19.清理清理

20.域名服務(wù)器【解析】主機(jī)名與IP地址的映射是借助一組既獨立又協(xié)

作的域名服務(wù)器完成的。因特網(wǎng)中存在大量的域名服務(wù)器,每臺服務(wù)器

保存它所管轄區(qū)域內(nèi)的主機(jī)名與IP地址的對照表。域名服務(wù)器是域名

解析系統(tǒng)的核心。

2LD解析:為保證數(shù)據(jù)庫是可恢復(fù)的,登記日志文件時必須遵循以下兩

條原則:1、登記的次序嚴(yán)格按并發(fā)事務(wù)執(zhí)行的時間次序;2、必須先寫

日志文件,后寫數(shù)據(jù)庫。

22.C

23.C

24.D

消息認(rèn)證是指接收者能夠檢驗收到消息真實性的方法,檢驗的內(nèi)容包

括:

①證實消息的源和宿

②消息的內(nèi)容是否保持其完整性、即未篡改

③消息的序號和時間性

25.C選項A),電子郵件是有固定格式,它由郵件頭和郵件體兩部分組

成;選項B),電子郵件應(yīng)用程序的最基本的功能是:創(chuàng)建和發(fā)送,接收、

閱讀和管理郵件的功能;選項C),每個郵箱都有密碼保護(hù),這是最基本

的保護(hù),目前,保證重要郵件的安全性的主要手段是使用數(shù)字證書,數(shù)

字證書可以證明用戶的身份。加密電子郵件,保證不被修改;選項D),

利用電子郵件可以傳送多媒體信息,MIME協(xié)議支持多媒體信息的發(fā)送。

26.C

27.D

28.A解析:按照邏輯結(jié)構(gòu)的定義數(shù)據(jù)的邏輯結(jié)構(gòu)是數(shù)據(jù)間關(guān)系的描述,

只抽象地反映數(shù)據(jù)元素之間的邏輯關(guān)系,不管其存儲方式。順序結(jié)構(gòu)、

鏈?zhǔn)浇Y(jié)構(gòu)、靜態(tài)結(jié)構(gòu)和動態(tài)結(jié)構(gòu)都是指存儲結(jié)構(gòu)。因此A是正確的。

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

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

30.A

31.\n【審題關(guān)鍵句】個位+于位與百位+十位,奇數(shù),偶數(shù),整除,從大

到小排序。

\n【解題思路】

\n本題類似第24套試題,通過審題可以發(fā)現(xiàn)主要是對四位數(shù)的篩選條

件有所不同,體現(xiàn)在兩個方面:①分解后重新組合成十位數(shù)的方式不同,

參考答案的第8、9

溫馨提示

  • 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

提交評論