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

下載本文檔

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

文檔簡介

2022年山東省濱州市全國計(jì)算機(jī)等級考試

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

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

一、1.選擇題(10題)

1.虛擬頁式存儲(chǔ)管理中頁表有若干項(xiàng),當(dāng)內(nèi)存中某一頁面被淘汰時(shí),可

根據(jù)其中哪一項(xiàng)決定是否將該頁寫回外存?

A.內(nèi)存標(biāo)志B.外存地址C.修改標(biāo)志D.訪問標(biāo)志

2.下列關(guān)于函數(shù)依賴性不正確的是()。

A.若X—Y,X-Z,貝IJX-YZ

8.若乂丫—2,貝IJX-Z,Y—Z

C.若X-Y,WY—Z,則XW-Z

D.若X->Y,Y-Z,則X-Z

3.設(shè)關(guān)系R與關(guān)系S具有相同的目(或稱度),且相對應(yīng)的屬性的值取自

同一個(gè)域,則R-(R-S)等于。

A.RUSB.RPSC.RxSD.R-S

4.在關(guān)系數(shù)據(jù)庫系統(tǒng)中,為了簡化用戶的查詢操作,而又不增加數(shù)據(jù)的

存儲(chǔ)空間,常用的方法是創(chuàng)建________O

A.另一個(gè)表B.游標(biāo)C.視圖D.索弓[

5.在下圖所示的二叉樹中查找關(guān)鍵碼值502,需要進(jìn)行多少次關(guān)鍵碼值

比較?

68

A.lB.2C.3D.4

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

()。

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

7.下面所列條目中,哪一項(xiàng)是當(dāng)前開發(fā)工具的發(fā)展趨勢?

I.采用三層Client/Server結(jié)構(gòu)

II.對Web應(yīng)用的支持

III,開放的、構(gòu)件式的分布式計(jì)算環(huán)境

A.IB.IIC.IIID.都是

8.如果有兩個(gè)事務(wù),同時(shí)對數(shù)據(jù)庫中同一數(shù)據(jù)進(jìn)行操作,不會(huì)引起沖突

的操作是

A.一個(gè)是DELETE,另一個(gè)是SELECT

B.一個(gè)是SELECT,另一個(gè)是UPDATE

C.兩個(gè)都是UPDATE

D.兩個(gè)都是SELECT

9.下列算法中,不屬于進(jìn)程調(diào)度算法的是

A.先進(jìn)先出算法B.時(shí)間片輪轉(zhuǎn)算法C.直接插入排序算法D.最高優(yōu)先

數(shù)算法

10.下列的故障中,可能會(huì)造成事務(wù)執(zhí)行失敗的是

A.系統(tǒng)故障B.磁盤故障C.邏輯錯(cuò)誤D.硬件故障

二、填空題(10題)

11.數(shù)據(jù)模型用來描述數(shù)據(jù)的靜態(tài)特征、動(dòng)態(tài)特征和數(shù)據(jù)的完整性約束。定義一組規(guī)則,數(shù)

據(jù)庫中的數(shù)據(jù)必須滿足這組規(guī)則,這是描述數(shù)據(jù)的」]

12.PowerDesigner是SYBASE公司提供的CASE工具,它包括多個(gè)模

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

13.局域網(wǎng)所使用的傳輸介質(zhì)主要有雙絞線、光纖、無線

通信信道。

14.網(wǎng)絡(luò)安全技術(shù)的研究主要涉及三方面問題:_口_、安全攻擊和安全服務(wù)

15.

若關(guān)系模式R的規(guī)范化程度達(dá)到4NF,則R的屬性之間不存在非平凡

且非函數(shù)依賴的【】。

16.Novell公司的NetWare最著名的地方就是它的和打印管

理。

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

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

的方法。

18.按后根次序周游樹或樹林,等同于按次序周游對應(yīng)的二叉樹。

19.一個(gè)數(shù)據(jù)庫有多個(gè)外模式,有【】內(nèi)模式。

20.數(shù)據(jù)庫管理系統(tǒng)中事務(wù)的隔離性主要由____部件來保證。

三、單選題(10題)

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

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

22.如果以鏈表為棧的存儲(chǔ)結(jié)構(gòu),則退棧操作時(shí)()

A.必須判別棧是否滿B.必須判別棧是否空C.判別棧元素的類型D.對

棧不作任何判別

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

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

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

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

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

D.OSI中采用了三級抽象

24.概念模型()

A.依賴于DBMS和硬件B.獨(dú)立于DBMS和硬件C.依賴于DBMSD.獨(dú)

立于DBMS

25.在SQLServer系統(tǒng)數(shù)據(jù)庫中,存放用戶數(shù)據(jù)庫公共信息的是

A.masterB.modelC.msdbD.tempdb

26.能夠?qū)owerDesigner中所有模型信息只讀訪問的模塊是()。

A.A.ProcessAnalyst

B.DataArchitect

C.Viewer

D.WarehouseArchitecture

27.對數(shù)據(jù)庫模式設(shè)計(jì)進(jìn)行優(yōu)化有三項(xiàng)指標(biāo),下列指標(biāo)中不屬于這三項(xiàng)

指標(biāo)的是()

A.A.單位時(shí)間內(nèi)訪問的邏輯記錄個(gè)數(shù)要少

B.單位時(shí)間內(nèi)數(shù)據(jù)的傳送量要少

C.數(shù)據(jù)庫模式中的關(guān)系(即數(shù)據(jù)庫文件)數(shù)目要少

D.系統(tǒng)占用的存儲(chǔ)空間要少

28.有兩個(gè)實(shí)體集,并且它們之間存在著一個(gè)M:N聯(lián)系,根據(jù)概念ER

模型轉(zhuǎn)換成關(guān)系數(shù)據(jù)庫的規(guī)則,這個(gè)ER結(jié)構(gòu)轉(zhuǎn)換成表的個(gè)數(shù)為()

A.lB.2C.3D.4

29.物理結(jié)構(gòu)設(shè)計(jì)的任務(wù)是設(shè)計(jì)數(shù)據(jù)庫的()

A.存儲(chǔ)格式B.存取方法C.存儲(chǔ)結(jié)構(gòu)與存取方法D.存儲(chǔ)模式

30.用數(shù)組存放循環(huán)隊(duì)列的元素值,若其頭尾指針分別為front

和rear,則循環(huán)隊(duì)列中當(dāng)前元素的個(gè)數(shù)為()

A.(rear-frontm)modm

B.(rear-front1)modm

C.(rear-front-1m)modm

D.(rear-front)modm

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

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

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

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

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

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

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

Out.dat文件中o

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

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

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

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

1;*include<stdio.h>

2;tdefineMAX200

3?Inta[MAX]#b(MAX],ent-0;

4;voidwriteDat();

5!voidjsVal()

/()從數(shù)界文件in,dai200個(gè)四位數(shù)存入數(shù)組?中?/

voidreadDat()

12!FILE*fp;

Rw

13ifp-fopen(ln.dat,"r");

14;for(i-0;1<MAX;ix)

fscanf(fp,

fclose(fp);

17

18voidmain()

19

20,int1;

21!readDat();

22;jsValO;〃調(diào)用”Vah)曲故,實(shí)現(xiàn)KH要求的功能

23\printf("湎足條件的數(shù)=Sd\n-,ent);

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

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

261printf;

27'writeDat():

28;|

?函數(shù)writeD叫)和端聚cm以及數(shù)赳b中符合條件的四位數(shù)■出到oul4at文件中?/

29;voidwriteDat()

30

31FILEefp;

32inti;

33fp=?fopen("out.dat",Ww");

34fprintf(fp#ent);

35for(1=0;i<ent;

36fprintf(fp/"$d\n”,b[i1)

37fclose(fp);

38

32.編寫一^函數(shù)findStr(char*str,char*substr),該函數(shù)統(tǒng)計(jì)一個(gè)長度為

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

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

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

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

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

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

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

填入你編寫的若干語句。

^include<stdio.h>

*include<string.h>

voidReadWrlte();

a

intfindStr(char3trtchar?substr)

main0

charstr(81|,substr(3];

intn;

printf("輸入原字符申:w);

gets(str);

pdntf("■入子字符串:”);

gets(substr);

puts(str>;

puts(aubstr);

nwfindStr(str,substr);

"n

printf(*n"%d\n,n);

ReadWrite();

I

,?從文件in.dii中It取兩個(gè)字符中,蚌■用炳欣findSoO,■后1E郎果博出到文件即如中,/

voidReadWrite()

24charstr[81)rsubstr(3],ch;

25intn,lenri00;

e

26FILEerfrwf;

27rf=fopen(*£n.dat**,wrH);

wwHM

28wf-fopen(out.datrw>;

29while(i<5)

30|

31fgets(str,80,rf);〃從文件mdai中域取長度為R的字符中存入到字符中

32(gets(subset<10,rf);〃從文件mdit中讀取長度為Q的子字符中存入到字符率substr

33len■strlen(substr)?1;〃mf字符南gubstr的長度K1的

ch-substr(lenI;〃把子字符州的量后T字箝的但"字符ch

人如臬子字符申的量后個(gè)字椅是同架按行符或是文鐘帖販料,明紀(jì)子字符串的?后f字符的值設(shè)置X。?/

35if(ch??'\n'11ch~Oxla)

36substr[len]?0;

flndStr(4tr?■ubstr)返Z1子字符串subst.r在字符率Atr中出現(xiàn)的次數(shù)*/

37n-findStr(str,substr);

38fprintf(wf/Fd\n".n);//IC計(jì)H納暨n寫入到文件out.dau中

39〃謂環(huán)堂量士加】

40I

41fclose(rf);

42fclose(wf);

43

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

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

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

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

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

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

果兩個(gè)新組成的數(shù)均是奇數(shù)并且至少有一個(gè)數(shù)能被5整除,同時(shí)兩個(gè)新

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

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

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

到Out.dat文件中。

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

程序中已定義數(shù)ffl;M200].b(200],巳定義變量:ent

請勿改動(dòng)數(shù)據(jù)文件in.dat中的任何數(shù)據(jù)、上函數(shù)main。、讀的數(shù)readDatO和月函數(shù)而teDatO的內(nèi)容.

1I#include<stdlo.h>

2|tdefineMAX200

3*inta(MAX],b[MAX]ent,0;

?t

4jvoidwriteDat();

5?voidjsVal()

6j(

8J|

9;voidreadDat()〃從in.dat文件M《取200個(gè)網(wǎng)位數(shù)存入數(shù)ifia中

10;(

XIJxnt£s

12;FILE*fp;

Rn

13*fp-fopen(in.datr

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

15;fscanf(fp,f1]):

16!fclose{fp);

17;|

18;voidmain()

19!

20;

21\readDat();

22?isVai();〃,用曲數(shù)isvalU,求廈?目要氽的功傕

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

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

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

26jprintf(H\nw);

27?writeDat();

28;J

29voidwriteDat()〃把計(jì)簿的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

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

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

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

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

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

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

字),如果新組成的兩個(gè)位數(shù)ab>cd,ab必須是偶數(shù)且能被5整除,cd必

須是奇數(shù),同時(shí)兩個(gè)新數(shù)的十位數(shù)字均不為零,則將滿足此條件的四位

數(shù)按從大到小的順序存入數(shù)組b中,并要計(jì)算滿足上述條件的四位數(shù)的

個(gè)數(shù)cnto最后main函數(shù)調(diào)用寫函數(shù)writeDat把結(jié)果ent以及數(shù)組b中

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

注?。翰糠衷闯绦虼嬖趖CSLC文件中.

程序中已定義教組:4200),b[200],已定義變量:ent

請勿改動(dòng)數(shù)據(jù)文件in.dat中的任何數(shù)據(jù)、主函數(shù)main。、讀的數(shù)readDatO和寫函數(shù)writeDaU)的內(nèi)容.

1ilinclude<stdio.h>

2IfdefineMAX200

3-inta(MAX],b(MAX],ent-0;

4!voidwrlteDat0;

5ivoidjsVal()

6;(

*7i

8i)

9!voidreadDat()〃從in.dat文件中it取200個(gè)四位數(shù)存入致殂a中

10jI

11?int£;

12?FILE#fp;

13;fp-fopen(Hin.datw,wrw);

14?for(i*0;i<MAX;1++)

15ffscanf(fpr;

16;fclose(fp);

17!J

18;voidmain()

19;(?

20!inti;

21treadDat();

22;jsValO;〃?用港數(shù)”V,客現(xiàn)?日要求的功能

231printf<“涓足條件的數(shù)7d\n”,ent);

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

25!printf(w%d”,b[il);

26iprintf("\nw);

writeDat();

28I

29voidwriteDat(>"紀(jì)計(jì)算站果cni以及數(shù)iflb中符合條件的四位Ik“出到outdot文件中

30(

31FILE*fp;

32int1;

33fp?fopenLout.dat".Www);

wR

34fprintf(fp,ld\nrent);

35for(1■0;i<ent;11??)

36fprintf(fp,"%d\n"r

37fclose(fp);

38

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

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

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

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

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

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

例,原文:Adb.Bcdza

abck.LLhj

結(jié)果:Aec.Bdcab

hrdlITik

原始數(shù)據(jù)文件存放的格式是:銀行的窗度均小于80個(gè)字符,含標(biāo)點(diǎn)符號和空格.

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

請勿改動(dòng)主函數(shù)main。、讀函數(shù)ReadDaM)和■出函數(shù)WritcDmO的內(nèi)容.

1、tinclude<stdio.n>

2!!include《string.h>

3?charxx[50][80];

4;intmaxline■0;/*文*的總打數(shù)?/

5jintReadDat(void);

6;voidWriteDat(void);

7?voidConvertCharA(void)

8

9

10

11?voidmainO

12!l

13jif(ReadDat())

14(

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

16return;

17j}

18ConvertCharA();

19jWrlteDatO;

2。?I

!,?從文件m&t中it取一■英文文章存入到字符率數(shù)盥u中〃

21;intReadDat(void)

22!(

23\FILEwfp;

24|inti?0;

25?char*p;

26jif((fp-fopen("in.dat","r"))—NULL)

27return1;

28\while(fgeta(xx(i]r80rfp)!-NULL)

29{(

30p-strchr(xx[1],f\n*);

31if(p)*p-0;

32if

33i,

34;maxline-i;

35fclose(fp);

36return0;

37I

/?紀(jì)結(jié)果U?出到文件OUL&t中?/

38voidWriteDat(void)

39(

40FILE#fp;

41int1;

42fp?fopen(**out*wM);

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

44(

45print/xx[i]);

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

47\

48!fclose(fp);

49

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

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

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

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

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

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

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

中。

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

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

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

1?Iinclude<stdioeh>

2;IdefineMAXNUM200

3!intxx(MAXNUM);

4:inttotNum-0;〃文件Ln,Sit中共有,少個(gè)正IMS

5-inttotCnt-0;〃將合*ft的正?鼓的個(gè)數(shù)

6!doubletotPjz-0.0;〃平均值

i

7;IntReadDat(void);

8-voidWriteDat(void);

9?voidCalValue(void)

10;(

11!

12:J

13;voidmain()

14!(

15:int1;

16\ford-0;i<MAXNUM;i,+)

17;xx[i]-0;

18\if(ReadDatO)

19\(

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

21;return;

22i)

23:CalValue();

24:printf("文件in.dat中共有正整數(shù)個(gè)totNum);

25!prin"("符合條件的正整數(shù)的個(gè)敢■“個(gè)\n",totCnt);

26\print””平均值totPjz);

27;WriteDat();

28jI

;/?設(shè)取這若干個(gè)正餐數(shù)并存入數(shù)盥xx中?/

29!intReadDat(void)

30\(

31:FILE*fp;

32;int1-0;

w

33if((fp-fopcnein.dat.*r"))?NULL)

34return1;//1n<in.datMfiH1

\/?while-4執(zhí)行文卷Hi.dat的妁電送附?/

35Iwhile(!feof(fp))

36;1

37fscanf(fp,",d,"?;〃從文件,'個(gè)Hr存入XM【,J中.同N1Ml

38I

39;fclose(fp);

40return0;〃1E文件,n?<Uc若干個(gè)正■圖■取并正?存入便回0

41;)

;/??!計(jì)算站呆存入文件61t.st中?/

42?voidWriteDat(void)

43I(

44jFILE-fp;

w-

45[fp?fopen("out.datrw*);

46;tprintf(tpf-%d\n%d\n%.2If\n*,totNum,totCnt,totPjx);

47fclose(fp);

48

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

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

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

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

出到文件Out.dat中。

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

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

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

位置上。

例如:位置012345678

源字符串a(chǎn)bcdhgfe

123498765

則處理后字符串hgfedcba

876594321

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

請勿改動(dòng)數(shù)據(jù)文件in.dat中的任何敷據(jù)、主函數(shù)main()、讀曲數(shù)rcadD叫)和寫的數(shù)writcD&U)的內(nèi)容.

1Jlinclude<stdio.h>

2j*include<string.h>

3;charxx[201f80);

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

38.設(shè)有n個(gè)人圍坐一圈并按順時(shí)針方向從1到n編號,從第s個(gè)人開

始進(jìn)行1到m的報(bào)數(shù),報(bào)數(shù)到第m個(gè)人,此人出圈,再從他的下一個(gè)

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

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

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

件out.dat中0

設(shè)n=100,s=l,m=10o

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

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

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

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

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

請勿改動(dòng)主函數(shù)main和輸出數(shù)據(jù)函數(shù)writeDAT的內(nèi)容。

1ifinclude<stdio.h>

2;tdefineN100

3j?defineS1

4;IdefineM10

S!intp[100]9nrsrm;

6;voidWriteDat(void);

7!voidJoseqh(void)

6?\

9;

10j)

11jvoidmain()

12j(

13;m?M;

14;n-N;

151s?S;

16!Josegh();

17<WriteDatO;

18;)

!,?把砧聚p?出到文件outdat中?/

19;voidWriteDat(void)

20!(

21jint1;

22!FILEefp;

23!fp-fopen("outRww);

;/?以史■的方式,以1c個(gè)!dK為一雌把也微以門?出利屏幕劇文件中?/

24jfor(N-11l>m0X

25?(

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

27;fprintf(fp,74d”,p(i]);

28if(1%100)〃如果i?被10蒙除.射■出一個(gè)回甑換行將

29

30prlntf(*\nM);

31fprintf(fp/"Xn");

32

33

34fclose(fp);

35

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

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

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

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

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

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

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

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

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

請勿改動(dòng)數(shù)據(jù)文件indu中的任何數(shù)!K.主函依m(xù)ain()、讀函數(shù)readDatO和寫由AtwriteDatO的內(nèi)容?

1jllncludo<stdio.h>

2\IdefineMAX200

3inta(MAX],b[MAXJ/ent

4voidwriteDat();

voidjsVal()

6

7

8

9voidreadDat()

10(

11inti;

FILE*fp;

fp*fopen("in.dat",wr");

14for(i-0;i<MAX;i++l

15fscanf(fp,7d",[iI);

16fclose(fp);

17}

18voidmain()

19I

20inti;

21readDat();

22jsVal();

23prin"「澗足條件的敷。ent);

24for(i-0;i<ent;

25printf(?*%(!”,bill);

26printf(w\nw);

27writeDat();

26I

29voidwriteDat()

30

31FILEefp;

32intij

33fp-fopen("out.datw,"w");

nn

34fprintf(fp,%d\necnt);

35for(1?0;i<ent;ix)

36fprintf(fpr”d\n",b(x));

37fclose(fp);

38

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

號字符串?dāng)?shù)組XX中;請編制函數(shù)encryptChar,按給定的替代關(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為取余運(yùn)算,p是數(shù)組XX中某一

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

成整型變量),如果原字符是數(shù)字字符0至9或計(jì)算后f(p)值小于等于

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

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

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

進(jìn)行處理。

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

的內(nèi)容。

1!tinclude<stdio.h>

?include<string.h>

3tinclude<ctype.h>

4unsignedcharxx[50][80];

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

6intReadDat(void);

7voidWriteDat(void);

avoidencryptChar()

9

10

11

12!voidmain()

13;I

14;if(ReadDatO)

15!(

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

17return;

18?)

19iencryptChar();

20!WriteDat();

21i)

|廠從文科Hdm中工取一?英文文章,存入義無符號字符*般銀=中”

22!intReadDat(void)

23;(

24:FILE#fp;

25!inti?0;

26;unsignedchar#p;

21jif((fp-fopen("in.datw,wr"))—NULL)

28return1;

29;while(fgets(xx[l]r80,fp)!-NULL)

30I(

31P-strehr(xx(i]r'n');

32if(p)*p-0;

33

34I>、

35maxline?1;

;fclose(fp);

37;return0;

38P

i八把結(jié)果u一出到文件OUL&I中?/

39ivoidWriteDat(void)

40?I

41!FILE*fp;

42iinti;

43\fp-fopen("out.dat",**w");

44?for(i*0;i<maxline;

45;(

w

46:printf(%s\n"#xx[i1);

47ifprintf(fp#7s\n".xx[1]);

48-)

49!fclose(fp);

50;1

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

41.在SQLServer2008中,設(shè)某數(shù)據(jù)庫中有商品表(商品號,商品名,

進(jìn)貨價(jià)格),商品號為主碼;銷售表(商品號,銷售時(shí)間,銷售數(shù)量,銷

售價(jià)格,本次利潤),商品號和銷售時(shí)間為主碼,銷售價(jià)格為本次銷售商

品的單價(jià)?,F(xiàn)要求每當(dāng)在銷售表中插入前4列數(shù)據(jù)時(shí)(假設(shè)一次只插入

一行數(shù)據(jù)),系統(tǒng)自動(dòng)計(jì)算本次銷售產(chǎn)生的利潤,并將該利潤賦給銷售

表的第5歹IJ“本次利潤”。請編寫實(shí)現(xiàn)上述功能的后觸發(fā)型觸發(fā)器代碼。

(10分)

42.設(shè)某連鎖商店數(shù)據(jù)庫中有關(guān)系模式R:R(商店編號,商品編號,庫

存數(shù)量,部門編號,負(fù)責(zé)人)如果規(guī)定:每個(gè)商店的每種商品只在一個(gè)

部門銷售,每個(gè)商店的每個(gè)部門只有一個(gè)負(fù)責(zé)人,每個(gè)商店的每種商品

只有一個(gè)庫存數(shù)量。(10分)(1)請根據(jù)上述規(guī)定,寫出關(guān)系模式R的

函數(shù)依賴集;(2)請給出關(guān)系模式R的候選碼;(3)請說明關(guān)系模式R

屬于第幾范式,并給出理由;(4)請將R分解成滿足3NF的關(guān)系模式。

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

43.在SQLServer2008中,設(shè)用戶U1是某數(shù)據(jù)庫db_datawriter角色中

的成員,則U1在該數(shù)據(jù)庫中有權(quán)執(zhí)行的操作是()

A.SELECT

B.SELECT和INSERT

C.INSERT,UPDATE和DELETE

D.SELECT,INSERT,UPDATE和DELETE

44.數(shù)據(jù)庫性能優(yōu)化是數(shù)據(jù)庫應(yīng)用系統(tǒng)上線后最常見的運(yùn)行維護(hù)任務(wù)之

-O下列有關(guān)數(shù)據(jù)庫性能優(yōu)化的說法,錯(cuò)誤的是()o

A.數(shù)據(jù)庫性能優(yōu)化和數(shù)據(jù)庫的外部環(huán)境有很大關(guān)系,如果外部環(huán)境出現(xiàn)

瓶頸,單獨(dú)對數(shù)據(jù)庫進(jìn)行調(diào)整很難取得較好效果

B.在數(shù)據(jù)庫性能優(yōu)化期間可能對原有符合范式的關(guān)系轉(zhuǎn)為不符合范式

的關(guān)系

C.物化視圖將會(huì)預(yù)先計(jì)算并保存耗時(shí)操作的結(jié)果,可大幅度提高查詢效

率,但是物化視圖必須人工手動(dòng)刷新

D.存儲(chǔ)過程在執(zhí)行期間不需要重新編譯,可以在一定程度上提高運(yùn)行效

率,但是其與數(shù)據(jù)庫管理系統(tǒng)綁定,更換數(shù)據(jù)庫管理系統(tǒng)時(shí)需要重新編

參考答案

LC解析:在虛擬頁式存儲(chǔ)管理中,當(dāng)內(nèi)存中某一頁面被淘汰時(shí),可根

據(jù)修改標(biāo)志決定是否將該頁寫回外存。

2.B解析:Armstrong公理系統(tǒng)中,選項(xiàng)A屬于合并規(guī)則,選項(xiàng)C屬于

偽傳遞規(guī)則,選項(xiàng)D屬于傳遞規(guī)則,合并規(guī)則的逆并不一定成立。

3.B解析:傳統(tǒng)集合運(yùn)算包括并、交、差和廣義笛卡爾積4種運(yùn)算。對

本題中的關(guān)系R-(R-S),進(jìn)行分解:(R-S)是由屬于R而不屬于S的所有

元組組成,R-(R-S)就是有屬于R而不屬于(R-S)的元組組成,部分集合

就是由既屬于R又屬于S的所有元組組成,即Rnso所以本題正確答

案為選項(xiàng)B。這類題通過畫圖可以比較容易找到正確答案。

4.C解析:視圖具有以下幾個(gè)作用:簡化用戶操作;使用戶能以多種角

度看待同一數(shù)據(jù);支持重構(gòu)數(shù)據(jù)庫的邏輯獨(dú)立性;視圖能夠提供安全保

護(hù)同時(shí)不增加數(shù)據(jù)的存儲(chǔ)空間。

5.C解析:二叉排序樹的特點(diǎn)是:每個(gè)結(jié)點(diǎn)上的左子樹中所有的結(jié)點(diǎn)的

關(guān)鍵碼值都小于該結(jié)點(diǎn)的的關(guān)鍵碼值,而右子樹中所有的關(guān)鍵碼值都大

于該結(jié)點(diǎn)的關(guān)鍵碼值。二叉排序樹的查找方法是,將待查關(guān)鍵碼值與樹

根的關(guān)鍵碼比較,若相等則查到,否則比較結(jié)果確定進(jìn)入左子樹或右子

樹,繼續(xù)查找,如此進(jìn)行下去,直到找到待查的關(guān)鍵碼值,或確定二叉

樹中沒有這樣的關(guān)鍵碼。在本題中對關(guān)鍵碼502的查找如下:第一次:

502>236,進(jìn)入右子樹第二次:502>285,進(jìn)入右子樹篇三次502=502,

查找完畢。所以經(jīng)過三次關(guān)鍵碼值比較后,找到502,本題正確選項(xiàng)為

Co

6.A

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

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

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

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

7.D解析:當(dāng)前應(yīng)用開發(fā)工具的發(fā)展趨勢:采用三層Client/Server結(jié)構(gòu);

對Web應(yīng)用的支持;開放的、構(gòu)件式的分布式計(jì)算環(huán)境。

8.D解析:因?yàn)镈ELETE和UPDATE都對數(shù)據(jù)庫進(jìn)行了修改,如與其

他操作同時(shí)進(jìn)行,容易造成對未提交數(shù)據(jù)的依賴;而SELECT不對數(shù)據(jù)

庫進(jìn)行修改,因此兩個(gè)SKLECT可以同時(shí)進(jìn)行操作,而不會(huì)引起沖突。

9.C解析進(jìn)程調(diào)度算法包括先進(jìn)先出算法(FIFO)、時(shí)間片輪轉(zhuǎn)算法(RR)

和最高優(yōu)先數(shù)算法(HPF)。

10.C解析:邏輯錯(cuò)誤、系統(tǒng)錯(cuò)誤可能會(huì)造成事務(wù)執(zhí)行失敗。注意:系統(tǒng)

故障、磁盤故障和硬件故障都不會(huì)導(dǎo)致事務(wù)執(zhí)行失敗,因此A),B),D)

選項(xiàng)不正確,故C)選項(xiàng)正確。掌握故障產(chǎn)生的原因,以及如何解除故障。

H.完整性約束數(shù)據(jù)完整性約束是一組完整性規(guī)則的集合。它定義了數(shù)據(jù)

模型必須遵守的語義約束,也規(guī)定了根據(jù)數(shù)據(jù)模型所構(gòu)建的數(shù)據(jù)庫中數(shù)

據(jù)內(nèi)部及其數(shù)據(jù)相互間聯(lián)系所必須滿足的語義約束。

12.DataArehitectDataArehitect解析:PowerDesigner是一組緊密集成的

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

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

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

MetaWorks,ProcessAnalyst,DataArchitect,WarehouseArchitect和

AppModelero

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

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

性。

13.光纜【解析】局域網(wǎng)所使用的傳輸介質(zhì)主要有雙絞線、光纜、光纖、

無線通信信道。

14.安全機(jī)制網(wǎng)絡(luò)安全技術(shù)的研究主要涉及三方面問題:安全攻擊,安全

服務(wù)和安全機(jī)制。

15.多值依賴有關(guān)系模式RW1NF,如果對于R的每個(gè)非平凡的多值依賴

XAY,都有X包含碼,那么RE4NF

16.文件【解析】NetWare以其強(qiáng)大的的文件和打印服務(wù)能力而久負(fù)盛

名。

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

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

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

18.對稱序?qū)ΨQ序解析:由二叉樹與樹之間的對應(yīng)關(guān)系可知,按先根次

序周游樹(林)等同于按前序周游對應(yīng)的二叉樹,而按后根次序周游樹(林)

等同于按對稱序周游對應(yīng)的二叉樹。

19.一個(gè)一個(gè)解析:外模式也稱子模式或用戶模式,它是數(shù)據(jù)庫用戶(包

括應(yīng)用程序員和最終用戶)能夠看見的和使用的局部的邏輯結(jié)構(gòu)和特征

的描述,是數(shù)據(jù)庫用戶的數(shù)據(jù)視圖,是與某一應(yīng)用有關(guān)的數(shù)據(jù)的邏輯表

示。一個(gè)數(shù)據(jù)庫可以有多個(gè)外模式。內(nèi)模式也稱物理模式或存儲(chǔ)模式,

一個(gè)數(shù)據(jù)庫只有一個(gè)內(nèi)模式。它是數(shù)據(jù)物理結(jié)構(gòu)和存儲(chǔ)方式的描述,是

數(shù)據(jù)庫內(nèi)部的表示方法。

20.并發(fā)控制并發(fā)控制解析:解決事務(wù)并發(fā)執(zhí)行問題的一種方法是串行

地執(zhí)行事務(wù),即一個(gè)接一個(gè)地執(zhí)行。但這樣性能較低,事務(wù)并發(fā)執(zhí)行能

顯著地改善性能。因此,數(shù)據(jù)庫管理系統(tǒng)中有一個(gè)并發(fā)控制部件,它保

證事務(wù)隔離性,即確保事務(wù)并發(fā)執(zhí)行后的系統(tǒng)狀態(tài)與這些事務(wù)以某種次

序一個(gè)接一個(gè)地執(zhí)行后的狀態(tài)是等價(jià)的。

21.A

22.B

23.C

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

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

24.B

25.B

26.B

【答案】B

【解析】DataArchitect是可以對PowerDesigner中所有模型信息進(jìn)行

訪問的只讀模塊。

27.C

28.C

29.C

30.A

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

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

同點(diǎn):①判斷數(shù)值為奇數(shù),可通過a[i]%2進(jìn)行判斷,參考答案的第4條

語句;②要求進(jìn)行比較的元素大于后連續(xù)5個(gè)數(shù),因此在設(shè)置判斷條件

時(shí),作為比較的兩個(gè)數(shù)之間應(yīng)該是大于關(guān)系,參考答案的第4條語句。

\n【參考答案】

\n

\n

32.\n【審題關(guān)鍵句】統(tǒng)計(jì)一個(gè)長度為2的子字符串在另一個(gè)字符串中出

現(xiàn)的次數(shù)。

\n【解題思路】

\n①定義字符指針p,q,并且q指向字符串str。定義計(jì)數(shù)整型變量ent,

設(shè)置其值等于0。

\n②在while循環(huán)中調(diào)用C語言的字符串庫函數(shù)strstr,返回子字符串

substr在字符串q第一次出現(xiàn)的位置,賦給變量P。用if語句判斷,如

果P的值為空,則說明在字符串str沒有找到子字符串,退出循環(huán)。否

則,變量ent加1,再把P的值加2(因?yàn)樽幼址畇ubstr的長度為2)賦

給變量q,執(zhí)行下一次循環(huán)。直到字符串中不存在子字符串時(shí),退出循

環(huán)結(jié)束。

\n③最后,返回子字符串substr在字符串str中出現(xiàn)的次數(shù)。

\n【參考答案】

\n

33.\n【審題關(guān)鍵句】千位十個(gè)位與百位+十位,奇數(shù),整除,從大到小排

序。

\n【解題思路】

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

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

參考答案的第8、9條語句重新指定兩位數(shù)的組合方式;②新組臺(tái)的兩

位數(shù)的奇數(shù)的判斷及整除判斷,參考答案的第10條語句。

\n【參考答案】

\n

\n

34.\n【審題關(guān)鍵句】千位+十位與個(gè)位+百位,比較大小,整除,奇數(shù),

從大到小排序。

\n【解題思路】

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

件有所不同,即判斷新組合的兩位數(shù)要求第一個(gè)為偶數(shù),第二個(gè)為奇數(shù),

比較兩題的第10條語句,只需將新組合的第二個(gè)數(shù)的判斷條件改為奇

數(shù)判斷,即“newV2%2”。

\n【參考答案】

\n

\n

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

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

\n【解題思路】

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

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

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

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

句首先判斷)的值是否在小寫字符字符W?切之間,然后,再判斷

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

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

\n【參考答案】

\n

\n

\n

36.\n【審題關(guān)鍵句】讀取正數(shù),統(tǒng)計(jì)個(gè)數(shù),右移后為偶數(shù)的個(gè)數(shù)及平均

值。

\n【解題思路】

\n①定義整型變量i、j和長整型he,并把其初始值設(shè)置為0。

\n②用for循環(huán)語句對數(shù)組XX進(jìn)行掃描,如果當(dāng)前數(shù)組元素xx國零,

則全局變量totNum加1。

\n③在for循環(huán)語句中,循環(huán)變量i從0開始遞增到totNum—1,對數(shù)

組xx中的每個(gè)元素XX用右移一位,把這個(gè)值賦給整型變量i,再對j

的值對2求余數(shù),如果余數(shù)等于0,則變量totCnt加1,并把數(shù)組元素

xx[i]累加到變量heo

\n④退出循環(huán)時(shí),把變量he的數(shù)據(jù)類型轉(zhuǎn)換成雙精度型再除以變量

totCnt的值,就得到算術(shù)平均值totPjzo

\n【參考答案】

\n

\n

37.\n[審題關(guān)鍵句】以行為單位從字符串左邊部分降序排序,排序后左

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

符不參加處理。

\n【解題思路】

\n①定義循環(huán)變量i、j、k和整型變量len、po

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

20,實(shí)現(xiàn)對20行數(shù)據(jù)的逐行處理。在循環(huán)體中,對于i行首先調(diào)用函數(shù)

strlen(xx[i])求得第i行字符串的長度,并把其值賦給變量len,再用len

除以2,得到第i行字符串長度的一半,賦給變量P。在第二層for循環(huán)

中,循環(huán)變量J從0開始,依次遞過來增直到其值等于(p-1),在第三層

for循環(huán)中,循環(huán)變量k從J+1開始,依次遞過來增直到其值等于P,比

較字符xx[i][j]ASCII碼值與xx[i][k]ASCII碼值的大小,如果字符xx[i]

啪的ASCI

溫馨提示

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

評論

0/150

提交評論