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

下載本文檔

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

文檔簡介

2022年江蘇省揚州市全國計算機等級考試

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

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

一、1.選擇題(10題)

1.SQL通常不提供下列哪一種操作?

A.修改索引定義B.修改視圖定義C.修改索弓[定義和修改視圖定義D.

修改表定義

2.SQL語言集數(shù)據(jù)查詢、數(shù)據(jù)操作、數(shù)據(jù)定義和數(shù)據(jù)控制功能于一體,

語句INSERT、DELETE、UPDATE實現(xiàn)哪類功能?。

A.數(shù)據(jù)查詢B.數(shù)據(jù)操縱C.數(shù)據(jù)定義D.數(shù)據(jù)控制

3.當(dāng)利用大小為N的數(shù)組順序存儲一個棧時,假定用棧頂指針top=N+l

表示棧空,則向這個棧插入一個元素時,首先應(yīng)執(zhí)行語句修改top

指針。

A.top:=top+lB.top:=top-1C.top:=0D.top:=N

4.PowerDesigner是新一代數(shù)據(jù)庫設(shè)計工具,下面是它的四個組成部分,

若要進行數(shù)據(jù)庫概念模式設(shè)計,應(yīng)該選用。

A.ProcessAnalystB.DataArchitectC.MetaworksD.AppModeler

5.S-Designer是一種可視化的數(shù)據(jù)庫設(shè)計工具,它的后續(xù)版本是Power-

Designer,使用它可以完成如下的哪些功能?

I.可以畫數(shù)據(jù)流圖(DFD)

II.可以畫實體聯(lián)系圖(E-R圖),即設(shè)計概念數(shù)據(jù)模型(CDM)

III,可以從概念數(shù)據(jù)模型(CDM)生成物理數(shù)據(jù)模型(PDM)

IV,可以從現(xiàn)存數(shù)據(jù)逆向生成物理數(shù)據(jù)模型(PDM)

V.可以從物理數(shù)據(jù)模型(PDM)逆向生成概念數(shù)據(jù)模型(CDM)

A.I、II和mB.I、II和WC.I、II和VD.都可以

6.是一個用以更好地支持企業(yè)或組織的決策分析處理的、面向主

題的、集成的,相對穩(wěn)定的、體現(xiàn)歷史變化的數(shù)據(jù)集合。

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

7.數(shù)據(jù)庫管理系統(tǒng)由三級模式組成,其中決定DBMS功能的是____o

A.邏輯模式B.外模式C.內(nèi)模式D.物理模式

8.設(shè)有關(guān)系R(A,B,C,D,E),A、B、C、D、E者B不可再分,則R

一定屬于

A.1NFB.2NFC.3NFD.以上3個選項都有可能

9.為了控制用戶程序不能執(zhí)行特權(quán)指令是通過設(shè)置PSW中的一個狀態(tài)

位來標(biāo)志,這一位是

A.保護位B.CPU狀態(tài)位C.屏蔽位D.條件位

10.當(dāng)局部E-R圖合并成全局E-R圖時,下列所列沖突中哪個不屬于可

能出現(xiàn)的沖突?()

A.屬性沖突B.語法沖突C.結(jié)構(gòu)沖突D.命名沖突

二、填空題(10題)

11.在數(shù)據(jù)庫物理結(jié)構(gòu)設(shè)計時,要對存儲方法進行設(shè)計,其中,查詢次數(shù)

由算法決定的是【】存放方法

12.若Dl={al,a2,a3},D2={bl,b2,b3},則D1?D2集合中共有元組

個。

13.組播路由協(xié)議分為組播路由協(xié)議和域間組播路由協(xié)議。

14.用高級語言編寫的程序稱之為[】。

15.如果多個事務(wù)在某個調(diào)度下的執(zhí)行結(jié)果與這些事務(wù)在某個串行調(diào)度

下的執(zhí)行結(jié)果相同,則稱這個調(diào)度為【】調(diào)度。

16.并行數(shù)據(jù)庫系統(tǒng)的性能有兩種主要的度量,分別是吞吐量和o

17.一旦CA驗證了實體的身份,就產(chǎn)生一個證書,將這個公共密鑰和身

份進行綁定。

證書中包括公共密鑰和密鑰所有者的全球惟一的O

18.在關(guān)系代數(shù)中,從兩個關(guān)系的笛卡兒積中選取它們的屬性或?qū)傩越M

間滿足一定條件的元組的操作稱為連接。

19.在順序表(4,7,9,12,13,14,18,19,22,29,50)中,用二分

法查找關(guān)鍵碼值n,所需的關(guān)鍵碼比較次數(shù)為o

20.若記錄型A中的每一個值,記錄型B中??梢杂蒒個值(N>=0)與

之聯(lián)系,反之,若記錄型B中的每一個值,記錄型A中至多有一個值

與之對應(yīng),則稱記錄型A與記錄型B之間是【】的聯(lián)系。

三、單選題(10題)

21.在SQLSever中創(chuàng)建用戶數(shù)據(jù)庫,其主要數(shù)據(jù)文件的大小必須大于

A.master數(shù)據(jù)庫的大小B.model數(shù)據(jù)庫的大小C.msdb數(shù)據(jù)庫的大小

D.3MB

22.在定義一個關(guān)系結(jié)構(gòu)時,應(yīng)該說明()

A.字段、數(shù)據(jù)項及數(shù)據(jù)項的值B.屬性名、屬性數(shù)據(jù)類型及位數(shù)C.關(guān)系

名、關(guān)系類型及作用D.記錄名、記錄類型及內(nèi)容

23.操作系統(tǒng)在控制和管理進程的過程中,涉及到()這一重要數(shù)據(jù)結(jié)構(gòu),

這是進程存在的惟一標(biāo)志。

A.FCBB.FIFOC.FDTD.PCB

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

()。

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

25.在數(shù)據(jù)庫概念設(shè)計階段,進行局部E-R模式的設(shè)計時,為實體和聯(lián)

系確定屬性的原則除了()外都是。

A.屬性應(yīng)該是不可再分解的語義單位

B.先確定公共實體類型的屬性

C.實體與屬性之間的關(guān)系只能是1:N的

D.不同實體類型的屬性之間應(yīng)為直接關(guān)聯(lián)關(guān)系

26.下列不屬于創(chuàng)建分區(qū)表步驟的是________o

A.創(chuàng)建分區(qū)依據(jù)列B.創(chuàng)建分區(qū)函數(shù)C.創(chuàng)建分區(qū)方案D.使用分區(qū)方案

創(chuàng)建表

27.一個公司有若干名兼職人員,而每個兼職人員有可能在多家公司打

工,則公司與兼職人員之間具有

A.一對一聯(lián)系B.一對多聯(lián)系C.多對多聯(lián)系D.多對一聯(lián)系

28.設(shè)計與試運行之后投入運行,開始維護工作,過程中監(jiān)控、評價、調(diào)

整與修改以保證數(shù)據(jù)庫系統(tǒng)正常和高效地運行。以下關(guān)于數(shù)據(jù)庫運行維

護工作說法不正確的是()

A.數(shù)據(jù)庫轉(zhuǎn)儲與恢復(fù)

B.數(shù)據(jù)庫安全性、完整性控制

C.檢測并改善數(shù)據(jù)庫性能

D.數(shù)據(jù)庫的重組修改數(shù)據(jù)庫原有設(shè)計的邏輯結(jié)構(gòu)和物理結(jié)構(gòu)

29.()可以看成是現(xiàn)實世界到機器世界的一個過渡的中間層次。

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

30.數(shù)據(jù)字典是軟件需求分析階段的最重要的工具之一,其最基本的功

能是______。

A.數(shù)據(jù)庫設(shè)計B.數(shù)據(jù)通信C.數(shù)據(jù)定義D.數(shù)據(jù)維護

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

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

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

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

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

條件的個數(shù)ent,并把這些四位數(shù)存入數(shù)組b中,而后對數(shù)組b進行升

序排序,最后調(diào)用寫函數(shù)writeDat把結(jié)果ent以及數(shù)組b中符合條件的

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

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

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

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

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

Iinclude<stdio.h>

2IdefineMAX200〃定義宏更■KM苴值制于2Go

3inta(MAX)rb(MAXl,ent?0;〃代初始值為0.定義全M整R*依鍬a[MAX].b(MWC|?<lcnt

qvoidwriteDat();//xdeMt()大敏的說明語句

5voidjsVal()

6

7

B

/?“adDatn從數(shù)據(jù)文忖tn.dai中讀取200個網(wǎng)位數(shù)存入數(shù)蛆■中,/

9voidreadDat()

10(

11int1;

12FILE*fp;

w

13fp-fopen(**in.datr"”);

14?for(ia0;1<MAX;i++)

15!(scant(fp,&a[i]);

16;fclose(fp);

17\卜

18?voidmamO

19;(

20!inti;

21freadDat();

22-jsValO;〃境陽油敝,實取BIH要求的功能

23Jprintf("滿足條件的數(shù)7d\n,:nt);

24?for(i-0;i<ent;[??)

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

26?printfC,\nM);

27;writeDat{);

28j)

j/?W敷wmdXttHe姑果加以及故期b中衿介條件的四位數(shù)■出到uut.dai文件中?/

29;voidwriteDat()

30!(

31;FILEafp;

32?int1;

w

33!fp=fopen(**out.datr"w");

wH

34;fprintf{fprid\nzent);

35!ford?0;i<ent;"?)

36?fprintf(fp,7d\n",b(iD;

37;felose(fp);

38;)

32.已知數(shù)據(jù)文件INI.DAT和IN2.DAT中分別存有100個兩位十進

制數(shù),并且已調(diào)用讀函數(shù)readDat把這兩個文件中的數(shù)存入數(shù)組a和b

中,請考生編制一個函數(shù)JsVal,實現(xiàn)的功能是依次對數(shù)組a和b中的數(shù)

按條件重新組成一個新數(shù)并依次存入數(shù)組C中,再對數(shù)組C中的數(shù)按

從小到大的順序進行排序,最后調(diào)用輸出函數(shù)writeDat把結(jié)果C輸出到

文件out.dat中。組成新數(shù)的條件:如果數(shù)組a和b中相同下標(biāo)位置的

數(shù)均是奇數(shù),則數(shù)組a中十位數(shù)字為新數(shù)的千位數(shù)字,個位數(shù)字仍為新

數(shù)的個位數(shù)字,數(shù)組b中的十位數(shù)字為新數(shù)的百位數(shù)字,個位數(shù)字為新

數(shù)的十位數(shù)字,這樣組成的新數(shù)并存入數(shù)組C中。

例如,?(1231241521!5

b>3245172118IS

c:34$I12751155

播序后g113512753451

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

用序中已定義:叩00卜b(IOO)和叩00]?

請勿改動敷據(jù)文件INLDAT和1N2.DAT中的任何數(shù)據(jù).主函數(shù)mamQ.讀曲數(shù)reMDatO和耳幽數(shù)writelM)的內(nèi)秀.

11?includeOtdio.h>

2?tdefincMAX100

3?inta(MAXI?b(MAXJ,C(MAXJ;

4-intent-0;/?壽故折內(nèi)要件數(shù)的個我?/

5?voidjsVdl()

IN1.DATIDN2.DAT中的100個眄粒十班.我存入也址,和b中?/

9?voidreadDat()

10j(

11;int1;

12jFILE*fp;

13:fp-fopen("ini.dacM***r")

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

15;fscanf(fp,7cT.fcalll):

16!fclose(fp>;

17;fp?fop?n("in2.dat",?r”)

18-ford-0;1<MAX;if

19?fscanf(fp4Fd"?&b[l]);

20;fclose(fp):

21j1

22voidmain()

24;intifvoidwriteDat();

25;for(i-0;i<MAX;

26?c[l]?Q;

27-readDat();

28!jsVal();

29;for(i-0;1<MAX“C(

30:prlntf(*id\n",c(i)>:

31iwritoDat()I

32j)

i/?把M聚Ur蝸c,出到文林2小中〃

33-voidwriteDat()

FILEafp;

36mti;

3了fp-fopen("out.dit*,Ww"?;

38for(1-07i<MAX,,c(i)>0;

39fprXntf(fp,*ld\n*<e(l)):

40{close(fp);

41

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

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

些四位數(shù)是素數(shù)的個數(shù)ent,再求出所有滿足此條件的四位數(shù)平均值pjzl,

以及所有不滿足此條件的四位數(shù)平均值pjz2。最后main函數(shù)調(diào)用寫函

數(shù)writeDat把結(jié)果ent,pjzl,pjz2輸出到out.dat文件中。

何如:5591站供數(shù),該攻滿足條件.零瓶計算平均值pjz1?H個數(shù)cnfcm+1.

9812是年素畋,誣敷不滿足條件.善加計算平均值pjz2.

注意*鄙分源程序存在tew.c文件中.

程序中已定義數(shù)組:B|300[?已定義變量:a)l.pjzLpjz2

謂藥改動故據(jù)文件indat中的任何效粼、生或收nuinO,速的散readDaM)和"兩數(shù)wnteDatO的內(nèi)容.

1itinclude<atdio.h,>X句說哂8閃序中?畬vc60中的標(biāo)次?人■出修嫉瞅

2;inta[300!,cnt-O;〃心■不收然川33。)和受■ent.我?ent獻初(ill*0

3!doublepjzl-O.O,pjz2*0.0;〃啟文堂■p〃i.p,x2JIM初u.。

4;voidwriteDat();//?出—C說明明句

5:voidreadDat();,/■人喻敷說那遍何

61intisPfintm)i?F(Ant*內(nèi)斷D)蜀古力?此W果是*歐3返回1,檸孫£畫o

14,voidj$Valu?()〃函Itj?v?iu。力的定義謂句

20;readDatOi〃■用ro?皿匕|)函電從ndat文件中&入WO個為付II件入故陋.中

21:jsValueO;〃■用()函數(shù),實廈就UM?*理的功能

22.writeDat();writ*xt”試數(shù).七環(huán)IT絲聚OM,即:I.咖2?出Kw3文杓中

23:prxntf(wcnt-%d\n滿足條件的平均值pzll-17.21f\n不消足條件的平均例pzj2-%7.21f\n*

'cntrpjzl,pjj2);〃在肝笫上?示HU的給豪

24:)

25jvoidreadDat()〃Mtn<bi文件中“入300個內(nèi)位教存入做出.中

26?(

27!FILE*fp;〃定義文件指葉殳■在

28;int1;〃定文史

29I£p-fopon("ln.dat"4"r");〃"只讀方表打開文件s.di?片H文幟Mtfp指陶文/s.&t

30ifor(i?0;i<300;〃■環(huán)堂■.從。依次g*到2”

31J(scant(fpf-%d,*,;〃從文件in.da<中tftA,38個內(nèi)倚數(shù)存入依用.中

32Ifclose(fp);〃共用NKan.dat

33iI

34-voidwriteDat()XM

35!(

36;FILE*fp;〃定義文件揄力安■力

37;fp-fopenLout.datW”):〃以只寫方式打開直神gt.dat,井RZ符插的加$角文件out.<Ut

38!fprwtf(fp,',%d\nV.21f\n17.21f\n"#ent,pjzl,pjz2);〃在解?上■水計體站黑

39Ifclose(fp);〃夬MIK件out.&r

40;|

34.已知在文件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)品代碼從大到小進行排列,最終排列結(jié)果仍存入結(jié)構(gòu)數(shù)組sell中。

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

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

題。

例如:sell[i]=temp;

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

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

1;linclude<stdlo.h>

2!IInclude<strmg.h>

i

3Ilinclude<stdlib.h>

4?IdefineMAX100

5?typedefstruct

6\(

7!chardni(5];/*產(chǎn)品代碼?/

8icharnc[11];/?產(chǎn)品名源?/

9;intdj;/?單鈔?/

10!intsi;/?lit*?/

11jlongje;今??/

12;}PRO;

13jPROsell[MAX];

14;voidReadDat();

15!voidWriteDat();

16IvoidSortDat()

19;?

20!voidinainO

21[{

22?memsot(sell*Q,sizcof(sell));

23?ReadDatO;

24;SortDat();

25!WrlteDat<”

26J)

27;voidReadDatO

28!(

29;FILEefp;

30jcharstr(80)9ch[111;

31Jinti;

32;fp?fopen("in.dat"r"r">;

33Jfor(l?0;1<100;

34;(

35'fgets(str980.fp);

36!memcpy(sell(1).dm,str/4);

37imetncpy(sell(i).me,3tr?4f10);

38'roeaicpy(ch#str*14f4);ch[41?0;

39?sell(11.dj-atol(cb);

40itnemepy(ch.str*18.5);ch(51-0;

41!sell(i)?sl?atoi(ch);

42(sellfl).je?(long)sell(i).dj?sell(1).si;

43-\

44!fclose(fp);

45i)

46\voidWriteDat()

47

48FILE?fp;

49Xnt1;

50tp?fopen("out?dat**#*wn);

51for(1?0;1<100;

52I

53fprlntf(fp,"%BIs%4d(SdH01d\n*,sell[1].dm,5ell(1).mcfsell]幻?dj.sell

sell(i).je);

>

55fclose(fp);

56

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

串?dāng)?shù)組XX中;請編制函數(shù)eneryptChar,按給定的替代關(guān)系對數(shù)組XX

中的所有字符進行替代,仍存入數(shù)組XX對應(yīng)的位置上,最后調(diào)用函數(shù)

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

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

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

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

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

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

每行的寬度均小于80個字符,含標(biāo)點符號和空格,并也按此替代關(guā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

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

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

程序中已定義數(shù)組:4200],耳200],已定義變量Ient

請勿改動數(shù)據(jù)文件in.dat中的任何數(shù)IK、主/數(shù)讀函數(shù)readDatO和號出微writeDa%)的內(nèi)容。

1j?includo<stdio.h>

2JIdefineMAX200

3inta(MAX]tb【MAXJ.ent

4voidwriteDat();

5voidjsVal()

6

7

8

9voidreadDat()

10(

11inti;

FILE*fp;

fp?fopen("in.dat",wrn);

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

15fscanf(fp,7d",

16fclose(fp);

17>

18voidmain()

19I

20inti;

21readDatO;

22jsVal();

23printf「滿足條件的l![ned\rr.ent);

24for(i-0;i<ent;

25printf,bli]);

26printf(0\nw);

27writeDat();

26

29voidwriteDat()

30

31FILE,fp;

32inti;

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

w

34fprintf(fp,?*%d\necnt);

35for(1-0;i<ent;ii)

36fprintf(fpr”d\n?,bl:));

37fclose(fp);

38

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

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

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

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

出到文件Out.dat中。

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

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

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

位置上。

例蛆位置012345678

源字符串ibcdhgfe

123498765

則處理后字符串hgfedcba

876594321

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

請勿改動數(shù)據(jù)文件in.dat中的任何數(shù)據(jù)、主函數(shù)main()?讀曲數(shù)readDat()和寫的數(shù)writeD&U)的內(nèi)容.

1*linclude<stdio.h>

2jfinclude<string.h>

3:charxx(20)[80);

4voidreadDat();

5voidwrlteDat();

6voidjsSort()

7

8

9

10voidmain()

11

12readDat();

13jsSort();

14wrlteDat("

15

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

16voidreadDat()

17!(

18?FILE-in;

19?inti-0;

20char*p;

nw

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

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

23

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

25if(p)*p?0;

26

27]

28fclose(in);

29;)

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

30jvoidwriteDat()

31

32FILE*out;

33int1;

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

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

36(

37printfxx[i));

38fprintf(out,xxri!);

39)

40fclose(out);

41

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

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

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

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

出到文件out.dat中。

例:原文:dAe,BfC.

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

的寬度均小于80個字符,含標(biāo)點符號和空格。

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

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

的內(nèi)容。

1jlinclude<stdio?h>

2i?include<stringeh>

3?charxx[50][80];

4?unsignedintmaxline■0;7?文章的總行16

5iintReadDat(void);

6-voidWriteDat(void);

7jvoidSortCharD(void)

R?I

if(ReadDat())

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

return;

17

18SortCharDO;

19WriteDat();

20

!/?從文件mdst中樵取一篇英文文拿存入男字符串?dāng)?shù)婚xx中?/

21IintReadDat(void)

FILEefD

24;inti?0;

25!char*p;

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

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

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

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

29;1

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

31;if(p)*p-0;〃如果p的值不為零.劃元其值設(shè)置為0

32;i++;〃行爻量加】

33:}

34?maxline?1;//IE文章的總行敬M蛤攵■naxllne

35[(close(fp);

36|return0;

37;|

i/?1E怙果XX?出刎文科ouLdat中?/

38;voidWriteDat(void)

39;(

40!FILE*fp;

41junsignedinti;

Mw

42;fp?fop^n(out?dat*'t**w);

43!for(i-0;i<maxline;

44i(

H

45;printf(*%s\nrxx[1]);

46!fprintf(fp,7s\n3xxfi]);

47i}

48?fclose(fp);

49!}

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

把這些數(shù)存入數(shù)組a中,請考生編制一函數(shù)isVal,其功能是:把千位數(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,ab必須是偶數(shù)且能被5整除,cd必

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

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

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

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

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

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

請勿改動數(shù)據(jù)文件in.dat中的任何數(shù)據(jù)、主函數(shù)maiM)、讀法數(shù)readDatO和寫法數(shù)writcDatO的內(nèi)容.

finclude<stdio.h>

2?defineMAX200

3inta[MAX),b(MAX]rent-0;

4voidwriteDat();

5voidjsVal()

6

7

8

9voidreadDat()〃從ln.dat文件中厘取200個四位數(shù)存入數(shù)殂a中

10

11int1;

12FILEefp;

Mw

13fp-fopen(in.datr"r");

14for(i-0;i<MAX;

15fscanf(fpr"Qd。Aa(i]);

16fclose(fp);

17

18voidmain()

19

20Int1;

21readDat();

22jsValO;〃=用南敷”客觀?日要求的功能

23printf1滿足條件的數(shù)7d\n",ent);

24for(i?0;i<ent;

25printf(*%d”,b[H);

26printf("\nw);

writeDat();

28I

29voidwriteDat(>〃圮計年站累cm以及融蛆b中櫛合條件的四位數(shù)■出到ouidm文件中

30(

31FILE*fp;

32inti;

33fp?fopen(wout.dat",Rw*);

34fprintf(fp,RQd\n".ent);

3Sfor(i-0;i<ent;

w

36fprintf(fp,"%d\n#

37fclose(fp);

38

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

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

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

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

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

件out.dat中°

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

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

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

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

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

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

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

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)

/?紀(jì)砧果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

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

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

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

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

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

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

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

42.設(shè)在采用SQLServer2008數(shù)據(jù)庫的圖書館應(yīng)用系統(tǒng)中有三個基本表,

表結(jié)構(gòu)如下所示,請用SQL語句完成下列兩個查詢:BORROWER:借

書證號姓名系名班級12011106蔣輝文計算機系12-112011107王麗計算

機系12-112012113范園園信息系12-2LOANS:借書證號圖書館登記號

借書日期12011106T0010012012.01.0212012113

T0010262013.02.O6BOOKS:索書號書名作者圖書登記號出版社價格

TP311.1數(shù)據(jù)庫系統(tǒng)李明T001001科學(xué)19.00TP311.2二級C語言王

珊1001026人民32.00(1)檢索至少借了5本書的同學(xué)的借書證號、

姓名、系名和借書數(shù)量。(5分)(2)檢索借書和王麗同學(xué)所借圖書中的

任意一本相同的學(xué)生姓名、系名、書名和借書日期。(5分)

六、單選題口分K2題)

43.在某并行數(shù)據(jù)庫中,有關(guān)系R(A,B)和S(B,C),其中R包含

1000000行數(shù)據(jù),S包含100行數(shù)據(jù)。現(xiàn)有查詢SELECT*=FROMR,S

WHERER.A>;S.Bo下列數(shù)據(jù)劃分方式中,對該查詢速度最快的是

()O

A.將R按照A屬性進行散列劃分,將S按照B屬性進行散列劃分

B.將R按照A屬性進行范圍劃分,將S按照B屬性進行范圍劃分

C.將R按照A屬性進行范圍劃分,將S復(fù)制到各個節(jié)點

D.將R按照A屬性進行散列劃分,將s復(fù)制到各個節(jié)點

44.數(shù)據(jù)庫系統(tǒng)的三級模式結(jié)構(gòu)從數(shù)據(jù)庫系統(tǒng)管理角度考慮數(shù)據(jù)的組織

與存儲。下列不屬于數(shù)據(jù)庫三級模式結(jié)構(gòu)的是()o

A.邏輯模式B.物理模式C.外模式D.應(yīng)用模式

參考答案

LC解析:視圖是基于基本表的虛表,索引是依附于基本表的,因此,

SQL通常不提供修改視圖定義和修改索弓淀義的操作。用戶如果想修改

視圖定義或索引定義,只能先將它們刪除掉,然后再重建。不過有些關(guān)

系數(shù)據(jù)庫產(chǎn)品,如Oracle,允許直接修改視圖定義。

2.B解析:SQL語言數(shù)據(jù)查詢的語句是SELECT,數(shù)據(jù)操作語句有

INSERT,DELETE和UPDATE,數(shù)據(jù)定義語句有CREATE、DROP和

ALTER,數(shù)據(jù)控制語句是GRANT和REVOKE。

3.B解析:由題可知該題棧底為高地址,因此向棧中插入一數(shù)據(jù)時指向

棧頂?shù)闹羔槣plo

4.BPowerDesignerProcessAnalyst用于數(shù)據(jù)分析和數(shù)據(jù)發(fā)現(xiàn),使用戶能夠

描述復(fù)雜的處理模型以反映它們的數(shù)據(jù)庫模型,產(chǎn)生數(shù)據(jù)字典,繪制數(shù)

據(jù)流圖等。PowerDesignerDataArchitect用于兩層的即概念層和物理層數(shù)

據(jù)庫設(shè)計和數(shù)據(jù)庫構(gòu)造。PowerDesignerMetaWorks通過模型的共享支

持高級團隊工作的能力。PowerDesignerAppModeler用于物理(邏輯)數(shù)

據(jù)庫的設(shè)計和應(yīng)用對象的生成。

5.D解析:使用后續(xù)版本Power-Designer可以完成的功能有:可以畫數(shù)

據(jù)流圖(DFD);可以畫實體聯(lián)系圖(E-R圖),即設(shè)計概念數(shù)據(jù)模型(CDM);

可以從概念數(shù)據(jù)模型(CDM)生成物理數(shù)據(jù)模型(PDM);可以從現(xiàn)存數(shù)據(jù)

逆向生成物理數(shù)據(jù)模型(PDM);可以從物理數(shù)據(jù)模型(PDM)逆向生成概

念數(shù)據(jù)模型(CDM)。

6.C解析:數(shù)據(jù)倉庫是一個用以更好地支持企業(yè)或組織的決策分析處理

的、面向主題的、集成的、相對穩(wěn)定的、體現(xiàn)歷史變化的數(shù)據(jù)集合。

7.A解析:數(shù)據(jù)庫管理系統(tǒng)由三級模式組成,其中決定DBMS功能的是

邏輯模式。邏輯模式以一種數(shù)據(jù)模型為基礎(chǔ)統(tǒng)一考慮了所有用戶的需求,

并將這些需求有機地結(jié)合成一個邏輯整體。

8.A解析:關(guān)系模式需要滿足一定的條件,最低要求的條件是元組的每

個分量必須是不可再分的數(shù)據(jù)項,這叫做第一范式,簡稱1NF。

9.B解析:程序狀態(tài)字PSW由條件碼標(biāo)志和控制標(biāo)志構(gòu)成,其中控制信

息是由系統(tǒng)程序和用戶程序根據(jù)需要用指令來設(shè)置的,而狀態(tài)信息是由

中央處理器根據(jù)計算的結(jié)果自動設(shè)置的。

10.B解析:在設(shè)計分E-R圖時,由于各個子系統(tǒng)分別有不同的應(yīng)用,而

且往往是由不同的設(shè)計人員設(shè)計的,所以,各個分E-R圖之間難免有不

一致的地方,往往引起屬性沖突,結(jié)構(gòu)沖突和命名沖突。

11.散列查詢次數(shù)由散列算法決定,散列存放可以提高數(shù)據(jù)的查詢效率

12.9【解析】兩個分別為n和m目的關(guān)系R和s的笛卡兒積是一個n+

m列的元組的集合。若R有kl個元組,S有k2個元組,則關(guān)系R和S

的廣義笛卡兒積有kl?k2個元組。

13.域內(nèi)【解析】組播協(xié)議分為主機和路由器之間的協(xié)議,即組播組管

理協(xié)議以及路由器和路由器之間的協(xié)議。目前,組管理協(xié)議包括hxtemet

組管理協(xié)議IGMP和CiscO專用的組管理協(xié)議CGMP,組播路由協(xié)議又

分為域內(nèi)組播路由協(xié)議和域間組播路由協(xié)議兩類。

14.源程序源程序解析:在計算機語言中,把用高級語言和匯編語言寫

的程序稱為源程序,對應(yīng)的機器語言程序稱為目標(biāo)程序。

15.可串行化可串行化解析:幾個事務(wù)的并行執(zhí)行是正確的,當(dāng)且僅當(dāng)

其結(jié)果與按某一次序串行地執(zhí)行它們時的結(jié)果相同時,稱這種并行調(diào)度

策略為可串行化的調(diào)度。可串行化是并行事務(wù)正確性的唯一準(zhǔn)則。

16.響應(yīng)時間響應(yīng)時間解析:并行系統(tǒng)通過并行地使用多個CPU和磁盤

提高處理速度和I/O速度。對數(shù)據(jù)庫系統(tǒng)的性能有兩種主要的度量:吞

吐量和響應(yīng)時間。

17.標(biāo)識信息【解析】一旦CA驗證了實體的身份,就產(chǎn)生一個證書,

將這個公共密鑰和身份進行綁定。證書中包括公共密鑰和密鑰所有者的

全球惟一的標(biāo)識信息。這個證書由認證中心進行數(shù)字簽名。

18.0

19.4或4次4或4次解析:二分查找又稱為折半查找,首先用待查元

素的關(guān)鍵字與線性表中間位置的一個元素的關(guān)鍵值做比較,若相同則查

找成功,否則以這個中間值為界將線性表分為兩個子表,假設(shè)子表1中

的所有元素的關(guān)鍵值都小于中間元素,子表2中的所有元素的關(guān)鍵值都

大于中間元素,待查元素比中間元素值小,說明待查元素在子表1中,

完成了一次查找,這是一次失敗的查找,因為11并不在序列表中,所

以一共進行了四次比較。

20.一對多一對多解析:一對多聯(lián)系是關(guān)系數(shù)據(jù)中最普通的聯(lián)系。在一

對多聯(lián)系中,表A中的一個記錄在表B中可以有多個記錄與之對應(yīng),

但表B中的一個記錄最多只能有一個表A的記錄與之對應(yīng)。

21.B

22.B

23.D解析FCB(文件控制塊)是系統(tǒng)為管理文件而設(shè)置的一個數(shù)據(jù)結(jié)構(gòu),

是文件存在的標(biāo)志,記錄了系統(tǒng)管理文件所需要的全部信息;FIFO是

先進先出,一般表示某些算法(隊列操作、存儲頁面淘汰等);PCB是進

程控制塊,描述進程的基本情況以及進程的運行變化過程。

24.A

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

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

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

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

25.B

26.A

27.C解析:本題主要考查了實體之間多對多的聯(lián)系。如果對于實體集

A中的每一個實體,實體集B中至多有一個實體與之聯(lián)系,反之亦然,稱為

一對一聯(lián)系;如果對于實體集A中的每一個實體,實體集B中有n個實體

與之聯(lián)系;對于實體集B中的每一個實體,實體集A中至多有一個實體與

之聯(lián)系,稱實體集A與B的聯(lián)系為一對多聯(lián)系;如果對于實體集A中的

每一個實體,實體集B中有n個實體與之聯(lián)系;對于實體集B中的每一個

實體,實體集A中有m個實體與之聯(lián)系,稱為多對多聯(lián)系。所以C)正確。

28.D

29.A

30.C解析:數(shù)據(jù)字典是系統(tǒng)中各類數(shù)據(jù)描述的集合,是進行詳細的數(shù)據(jù)

收集和數(shù)據(jù)分析所獲得的成果。數(shù)據(jù)字典通過對數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu)的定

義宋描述數(shù)據(jù)流、數(shù)據(jù)存儲的邏輯內(nèi)容。所以數(shù)據(jù)字典的最基本的

溫馨提示

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

評論

0/150

提交評論