2023年山東省聊城市全國(guó)計(jì)算機(jī)等級(jí)考試數(shù)據(jù)庫技術(shù)模擬考試(含答案)_第1頁
2023年山東省聊城市全國(guó)計(jì)算機(jī)等級(jí)考試數(shù)據(jù)庫技術(shù)模擬考試(含答案)_第2頁
2023年山東省聊城市全國(guó)計(jì)算機(jī)等級(jí)考試數(shù)據(jù)庫技術(shù)模擬考試(含答案)_第3頁
2023年山東省聊城市全國(guó)計(jì)算機(jī)等級(jí)考試數(shù)據(jù)庫技術(shù)模擬考試(含答案)_第4頁
2023年山東省聊城市全國(guó)計(jì)算機(jī)等級(jí)考試數(shù)據(jù)庫技術(shù)模擬考試(含答案)_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

2023年山東省聊城市全國(guó)計(jì)算機(jī)等級(jí)考試

數(shù)據(jù)庫技術(shù)模擬考試(含答案)

學(xué)校:班級(jí):姓名:考號(hào):

一、1.選擇題(10題)

i.在關(guān)系數(shù)據(jù)庫管理系統(tǒng)的層次結(jié)構(gòu)中,應(yīng)用層的服務(wù)對(duì)象是

A.數(shù)據(jù)庫B.終端用戶和應(yīng)用程序C.終端用戶D.數(shù)據(jù)查詢

2.關(guān)系數(shù)據(jù)模型由哪幾部分組成?

I.關(guān)系數(shù)據(jù)結(jié)構(gòu)

II.關(guān)系操作語言

III.關(guān)系操作集合

IV.關(guān)系完整性約束

A.I,n和wB.I,n和inc.I,m和wD.全部

3.在數(shù)據(jù)庫的三級(jí)模式結(jié)構(gòu)中,描述數(shù)據(jù)庫中全體邏輯結(jié)構(gòu)和特征的是

()o

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

4.設(shè)兩個(gè)關(guān)系C和SC如表所示,它們的主鍵分別為C#和(S#,C#),

除屬性GRADE的數(shù)據(jù)類型是整數(shù)外,其他屬性的數(shù)據(jù)類型都是字符型。

若要向關(guān)系SC執(zhí)行下列插入操作,哪一個(gè)元組可以被插入?()。

?13-6C?13-7SC

c#CNAMETEACHERStC#GRADE

993001cl88

cldatabaseZhang

991021c3

c2networkLing

997345c278

c3(MWu

99叉電9c395

A.C9930011,'c2',null)

B.('993O89','cl',83)

C.C994010',"c4',90)

D.('997345','c2',65)

5.在DBMS中系統(tǒng)初啟程序,初始化DBMS的工作在下列哪個(gè)模塊中

完成?

A.數(shù)據(jù)定義程序模塊B.數(shù)據(jù)操縱程序模塊C.數(shù)據(jù)庫運(yùn)行管理程序模

塊D.數(shù)據(jù)庫建立、維護(hù)程序模塊

下述哪一個(gè)數(shù)據(jù)庫系統(tǒng)屬于第一代數(shù)據(jù)庫系統(tǒng)().

A)SYBASEB)Ingres

6.c)IMSD)Objectstore

7.設(shè)關(guān)系R與關(guān)系S具有相同的目,且相對(duì)應(yīng)的屬性的值取自同一個(gè)

域,則Rns可記作o

A.{t|teRVteS}

B.{t|teRAt-|eS)("-|w"表示"不屬于")

C.{t|teRAteS}

D.{t|t£RVt-]eS)("-)表示“不屬于")

8.在就緒隊(duì)列中,一旦有優(yōu)先級(jí)高于當(dāng)前運(yùn)行進(jìn)程優(yōu)先級(jí)的進(jìn)程存在時(shí),

便立即對(duì)進(jìn)程進(jìn)行調(diào)度,轉(zhuǎn)讓CPU,這叫做

A.可剝奪方式B.不可剝奪方式C.時(shí)間片輪轉(zhuǎn)D.實(shí)時(shí)調(diào)用

9.在下面的敘述中,屬于TCP/IP協(xié)議特點(diǎn)的是

I.開放的協(xié)議標(biāo)準(zhǔn),獨(dú)立于特定的計(jì)算機(jī)硬件與操作系統(tǒng)

II,可以運(yùn)行在局域網(wǎng)、廣域網(wǎng),更適用于互聯(lián)網(wǎng)

III.整個(gè)TCP/IP設(shè)備在網(wǎng)絡(luò)中具有惟一的IP地址

IV.可以提供多種可靠的用戶服務(wù)

A.I和IIB.IVC.IIID.全部

10.下列關(guān)于進(jìn)程控制的敘述中,不正確的是

A.進(jìn)程控制是通過原語來實(shí)現(xiàn)的

B.一個(gè)進(jìn)程可以使用創(chuàng)建原語創(chuàng)建一個(gè)新的進(jìn)程,前者稱為父進(jìn)程,后

者稱為子進(jìn)程

C.創(chuàng)建一個(gè)進(jìn)程的主要任務(wù)是建立原語

D.撤銷進(jìn)程的實(shí)質(zhì)是撤銷PCB

二、填空題(10題)

H.在關(guān)系數(shù)據(jù)庫規(guī)范化理論的研究中,在函數(shù)依賴的范疇內(nèi)達(dá)

到了最高的規(guī)范化程度。

12.

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

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

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

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

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

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

的方法。

14.關(guān)系代數(shù)是一種關(guān)系操縱語言,它的操作對(duì)象和操作結(jié)果均為

15.U包括類型、取值范圍、取值單位的沖突

16.鏈表中元素的入棧順序是ABCD,它的出棧順序是」1

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

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

18.描述通信系統(tǒng)的基本技術(shù)參數(shù)是數(shù)據(jù)傳輸速率和。

19.二叉樹是結(jié)點(diǎn)的有限集合,這個(gè)有限集合或者為空集,或者由一個(gè)根結(jié)點(diǎn)及兩棵不相交

的、分別稱為根的左子樹和右子樹的【】組成

20.運(yùn)行IP協(xié)議的Internet可以為其高層用戶提供的、面向

無連接的、盡最大努力的數(shù)據(jù)報(bào)投遞服務(wù)。

三、單選題(10題)

21.在關(guān)系代數(shù)的連接操作中,連接操作需要取消重復(fù)列的是()。

A.自然連接B.笛卡爾積C.等值連接D.0連接

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

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

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

23.數(shù)據(jù)庫管理系統(tǒng)中用于定義和描述數(shù)據(jù)庫邏輯結(jié)構(gòu)的語言稱為()

A.數(shù)據(jù)庫模式描述語言(DDL)B.數(shù)據(jù)庫子語言(SubDL)C.數(shù)據(jù)操縱語言

(DML)D.數(shù)據(jù)結(jié)構(gòu)語言

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

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

25.在概念設(shè)計(jì)和邏輯設(shè)計(jì)之間起橋梁作用的是()

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

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

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

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

27.描述概念模型的常用方法是

A.建立數(shù)據(jù)模型方法B.需求分析方法C.二維表方法D.實(shí)體-聯(lián)系方

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

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

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

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

30.下列關(guān)于數(shù)據(jù)庫重構(gòu)的說法中,錯(cuò)誤的是________o

A.數(shù)據(jù)庫的重構(gòu)就是對(duì)數(shù)據(jù)庫的邏輯結(jié)構(gòu)作必要的小范圍改變

B.當(dāng)存儲(chǔ)空間的分配過于零散,導(dǎo)致存取效率下降,所以必須重構(gòu)數(shù)據(jù)

C.數(shù)據(jù)庫重構(gòu)包括重新設(shè)計(jì)數(shù)據(jù)庫及其應(yīng)用程序

D.如果能夠重構(gòu)數(shù)據(jù)庫,盡量不要重新設(shè)計(jì)數(shù)據(jù)庫及相應(yīng)的應(yīng)用程序

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

31.程序test.c的功能是:選出1000至5000范圍內(nèi)(包括1000,5000)

符合下面條件的四位自然數(shù)。條件是:千位數(shù)字與百位數(shù)字之和等于十

位數(shù)字與個(gè)位數(shù)字之和,且千位數(shù)字與百位數(shù)字之和等于個(gè)位數(shù)字與千

位數(shù)字之差的整10倍。計(jì)算并輸出這些四位自然數(shù)的個(gè)數(shù)ent以及這

些數(shù)的和sum。請(qǐng)編寫函數(shù)countValue實(shí)現(xiàn)程序的要求。最后main函

數(shù)調(diào)用函數(shù)writeDAT把結(jié)果crlt和sum輸出到out.dat文件中。

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

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

1tinclude<stdio.h>

2intcntrsum;//定義H型全局史?nt和8g

3voidwriteDATO;

4voidcountvalue()

5

6

7

8voidmain()

9(

10ent-sum?0;〃蛤全斶攵?cnc?8umK初值為0

11countvalue();〃,用方做countvAluoO?實(shí)現(xiàn)JS11要求的功債

w

12printf("滿足條件的自穌敷的個(gè)數(shù)■td\nrent);

13print-”滿足條件的自然數(shù)值的和%d\n*rsum);

14writeDATO;

15I

16voidwriteDAT()

17(

18FILE#fp;

19fp-fopenC^out.dat**,;

n

20fprintf(fpr%d\n%d\n",ent,sum);

21fclose(fp>;

22

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

把這些數(shù)存入數(shù)組a中,請(qǐng)考生編制一函數(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文件中。

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

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

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

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

linclude<stdio.h>

?defineMAX200

3Inta[MAX]<b[MAX]9ent

4voidwriteDatO;

5voidjsValO

6

7

8

/?re&dgtc從數(shù)界文件mdAt中讀取200個(gè)四收效“人效蝸?中?/

9voidreadDat()

10

int1;

FILE*fp;

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

14ford-0;1<MAX;

15fscant(fpr;

16fclose(fp);

18voidmain()

19;(

20int1;

21readDat();

22jsValO;〃調(diào)用jsVbl。曬故,實(shí)現(xiàn)也!【裳求的功能

23printf("滿足條件的U(H、d\rr,cn");

24for(i-0;i<ent;

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

26printf(w\nR);

27writeDat();

28

/,蝎熱writcD叫)把始果cm以及效如b中科合條件的四何數(shù)■出到ouuht文件中?/

voidwriteDat()

30

31FILE*fp;

32inti;

33fp■fopen("out.dat">Ww");

34fprintf(£p,ent);

35for(1=0;i<ent;i>+)

ww

36fprintf(fp,td\nrb[i1);

37fclose(fp);

38

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

把這些數(shù)存入數(shù)組a中,請(qǐng)考生編制一函數(shù)jsVa,其功能是:把千位數(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〉=0且ab.cd<=10且兩個(gè)數(shù)均是奇數(shù),

同時(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中。

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

程序中已定義數(shù)BPOObb{200],已定義變量,ent

請(qǐng)勿改動(dòng)數(shù)據(jù)文件ndai中的任何數(shù)據(jù).主由敷mag).讀咕數(shù)reMDatO和寫的數(shù)writeDatO的內(nèi)容.

?include<stdio.h>

?defineMAX200〃京義宏交■MAX,其值等于20。

3inta[MAX),b(MAX),ent-0;〃龍義全局裳盤-1?敷蛆.[MAX].b[3即受?enj耳初值等于0

4voidwriteDat();

5voidjsVal()

6

7

8

9voidreadD&tO〃從in?<Ut文件中Mt取20。個(gè)四位數(shù)存入敷m.中

10(

11inti;

12FILE#fp;

13fp-fopenL1n.dat"■"r*);

14for(1?0;i<MAX;

1Stscanf(fp,"%d",Salil);

16fclose(fp);

17

18;voidmain()

19;1

20?int1;

21ireadDat();

22:jsValO;〃四用””【()偷敷實(shí)現(xiàn)■目?求的功能

23\prlntf「滿足條件的IftTd'n".ent);

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

25jprintf(w%d**.b[i]);

26;printf("\nw);

27)writeDat0;

28;

)

29;voidwriteDat()〃無計(jì)It結(jié)果cm以及敏蛆b中符合條件的四位敷■出到文件中

30(

FILETp;

32|inti;

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

34;fprintf(fp,"%d\n"rent);

35!ford?0;i<ent;[?*)

36\Hw

fprintf(fpr%d\n,b(iH;

37;fclose(fp);

38!

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

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

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

量。函數(shù)ReadDat讀取這100個(gè)銷售記錄并存入結(jié)構(gòu)數(shù)組sell中。請(qǐng)編

制函數(shù)SortDat,其功能要求:按金額從大到小進(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)行解

題。

例如:sell[i]=temp;

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

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

fInclude<stdio.h>

IInclude<strlng.h>

3■include<stdlib.h>

4■defineMAX100

5typedefstruct

6

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

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

9intdj;/?單價(jià)?/

10intsi;/?a*?/

longje;[,金■?/

12}PRO:

13PROsell[MAX);

14voidReadDat();

ISvoidWriteDat();

16voidSortDat()

17

18

19

20voidmain()?

21(

22nmiaset(sellt0,sizcof(sell));

23ReadDat();

24SortDat();

25WritoDat();

26)

27voidReadDat()

28I

29FILE#fp;

30charstr(80)9ch[111;

31int1;

32fp?fopen("in.dat"r"L”

33ford?0;1<100;£??)

34(

35fgets<str?80?fp);

36memcpy(sell[1]str.4);

37rootncpy(sell[l).me,str?4,10);

38metnepy(ch#atr*14,4);ch(4]-0;

39sell(1).dj-atol(cb);

40tnemepy(ch^str*18,5);ch⑸?0;

41sell(1).si?atol(ch);

42sell|1).je?(long)sell[i].dj。sell(1).al;

43

44fclose(fp);

45)

46voidwritoDat()

47(

48FILE*fp;

49int1;

50tp■£open("out.dat","w*>;

51ford?0;1<100;…)

52(

53fprlntf(fp,"%sIs%4d^Sdll01d\n*/3011(1].dm,5ell[i].me,sell(1j?djrsell[1].si,

sell(1).je);

54)

55fclose(fp);

56

35.程序test.c的功能是:將大于整數(shù)m且緊靠m的k個(gè)素?cái)?shù)存入數(shù)組

XXo請(qǐng)考生編寫函數(shù)num(intm,intk,intxx口)實(shí)現(xiàn)程序的要求,最后調(diào)

用函數(shù)readwriteDATO把結(jié)果輸出到Out.dat文件中。

例如,若輸入17,5,則應(yīng)輸出:19,23,29,31,37O

注意:苒分源程序存在te$Lc文件中.

清”改動(dòng)數(shù)據(jù)文件n&it中的任何數(shù)據(jù)以及1函數(shù)main()和輸出函數(shù)readwriteDATO的內(nèi)容.

1?Iinclude<stdio.h>〃mcludc調(diào)句說明魯程序中包公中的標(biāo)準(zhǔn)■人■出嘩前數(shù)sugh

2!voidreadwriteDATO;,/南效reidunxeDATOift明語句

3intisP(intm)〃熊故曰川新面是否為素敬,如累是K數(shù)則返回1,否則說向0

4|

5Int1;〃定義交量&

6for(i-2;i<m;1??)〃殳■1從2依次&堀到施

7if(m%1-0)return0;〃如果m儉被i?除.返回o

8return1;〃否財(cái)城回1

9)

10voidnum(intm,intk,intxx(])

11

12

13

14roain()

15(

16intm,n,xxflOOO);〃定義丈量m,r)和畋趾

17printf(w\nPleaseentertwointegers:w);

H

18scanfCtdr%dr&n);//從讀入兩個(gè)我M紛受侵m,n

19num(m,n,xx);〃調(diào)用嫉數(shù)nurEintE,tmk.mtu[D筌鹿將大于Utm且索森m的k個(gè)虐效存入數(shù)創(chuàng)u

20for(m-0;m<n;mi)〃變量d從0依次逢增?nT

21prmtf("Id..xx(m]);〃?曲象蛆兀虞

22prlntf("\nw);〃■出一個(gè)包車換行將

23readwriteDAT<H//m用的畋ZwnsDATor錯(cuò)累■出刊由修文仲中

24)

25voidreadwriteDATO〃咱數(shù)rgdwrtteMTC的定義講句

26<

27inte,n.xx(1000)/i;〃定義整型變■Q.C,*卬敏嫻xx[100。]

28FILETfr*wf;〃定義文件指桿套wf

29rf-fopen(win.daf,HrM);〃以只接的方式的〃開文件上n.daj并用r指向這個(gè)文件

HHM

30wf-fopenCout.datrw);〃以只寫的方式的打開文件。叱,daj并用wf指向這個(gè)文件

31for(i?0;i<10;〃修百變量1從0依次展用到9

32(

w

33fscanf(rft%dacT,Gm,&n);〃從文件in.&tM入兩個(gè)數(shù){ft*給m.n

34DUffi(mrn.xx);〃調(diào)用,收洪Ctnum(tn?k?u[]■現(xiàn)將大十整數(shù)mtn的k個(gè)腐敏存入敏tflxx

35for(m-0;ra<n;rn*+)〃俯環(huán)土■■從。依次遢增川n-l

36fprintf(wfrfd-,xx[m]);〃把數(shù)他元Itxx[m]耳入到文科out.dat中

H

37fprintf(wfr*\n);〃妃因*挨打籽寫人到文件ouc.dat中

38}

39fclose(rf);〃關(guān)閉?入文件in.dat

40fclose(wf);〃關(guān)閉■出文件out.ch匕

41

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

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

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

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

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

個(gè)字符的ASCH值,f(p)是計(jì)算后的無符號(hào)整型值C主意:中間變量定義

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

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

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

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

進(jìn)行處理。

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

1?include<stdio.h>

2?include<string.h>

3?include<ctype.h>

4unsignedcharxx[50][80];

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

6intReadDat(void);

7voidWriteDat(void);

8voidencryptChar()

9I

10unsignedintval;

11

12

13voidmain()

14(

15if(ReadDatO)

16(

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

18return;

19)

20encryptChar();

21WriteDat();

22I

,?從文付mdal中口:取一■莢文文??存人父字符中數(shù)mu中?/

intReadDat(void)

24

25FILE*fp;

26inti-0;

27unsignedchar*p;

28if((fp-fopen(-in.datH,)-NULL)

29return1;

30while(fgets(xx(1),80,fp)-NULL)

31I

32p=strehr(xx(i)#*\n*);

33if(p)*p-0;

34If

35

36maxline-i;

37fclose(fp);

38return0;

39>

/????u■出到文件outdai中?/

40voidWriteDat(void)

41

42FILE*fp;

43inti;

44fp■fopenfout.dat**,W

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

46(

47printf("laXn",xx{iB;

48fprintf(fprFs\n",xx(i]);

49

50fclose(fp);

51

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

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

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

量。函數(shù)ReadDat讀取這100個(gè)銷售記錄并存入結(jié)構(gòu)數(shù)組sell中。請(qǐng)編

制函數(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)品名稱比較請(qǐng)用函數(shù)strcrnp進(jìn)行解題。例如:sell[i]=temp;

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

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

?include<3tdio.h>

2?include<string.h>

3*include<stdllb.h>

A?defineMAX100

5typedefstruct

6

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

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

9intdji/,?單價(jià)?/

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);

37?nemcpy(sell(1).me,str?4,10):

38:memcpy(cht>tr^l4r4);ch[4]?0;

39isell(i)?dj?atol.(ch);

40jmemepy(chr5);ch[5]-0;

41\sell|1|.si-atol(ch);

42;solltl)??(long)sell(i),dj?sell(1).81;

43II

44jfclose(fp);

45j)

46jvoidWriteDat(>

47j<

48!FILE*fp;

49jinti;

50;fp■fop?n(*out.dat"r

51!ford-0;1<100;

52\I

53;fprlntf(fp,%s14d15dH0Ld\n**.sell(11.dm?.mcrsell(1|.dj,aellfil?slr

IselllU.je);

54iJ

55■fclostt(fp);

561)

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

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

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

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

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

所求的結(jié)果輸出到Out.dat文件中。

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

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

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

?finclude<3tdlo?h>

2IIdefineMAXNUM200

3!intxx[MAXNUM];

4jinttotNum-0;〃文件\n.dat中共科學(xué)少個(gè)正整數(shù)

5;inttotCnt-0;〃符合條件的正■敷的個(gè)數(shù)

6?doubletotPjz-0.0;〃平均依

7?intReadDat(void);

8!voidWriteDat(void);

9?voidCalValue(void)

13-voidmain0

H!(

15!inti;

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

17;xx(ij-0;

18?if(ReadDat())

19;1

20:printf「數(shù)據(jù)文件ln.dat不能打開!\00八n。);

21jreturn;

22\J

23!CalValueO;

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

25;printf("符合條件的正整數(shù)的個(gè)個(gè)totCnt);

26!printf("平均值7,21f\n-,totPjz);

27\WriteDatO;

28;)

?/?讀取這若干個(gè)正整改并存入敷詡u中?/

29?intReadDat(void)

30!(

31;FILE”p;

32\inti-0;

33?if((fp-fopen("in?dat”,Rr”>)??NULL)

34;return1;

35!whiledfeof(fp>)

36?(

37;fscant(fptFd.".;

385J

39ifclose(fp);

40jreturn0;

41!!

I/計(jì)算站果存入文件。ut.At.中?/

42voidWriteDat(void)

43

44FILE-fp;

45fp■fopen(*out.dat*/Www);

w

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

47fclose(fp);

48

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

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

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

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

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

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

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

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

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

請(qǐng)勿改動(dòng)數(shù)據(jù)文件in.dat中的任何數(shù)據(jù)、:函數(shù)mam()、讀函數(shù)re*dDat()和寫徜敏writeDatO的內(nèi)容.

1*include<stdio.h>

2?defineMAX200

3inta(MAX),b[MAXlrent

4voidwriteDat();

5voidjsVaK)

6

7

8

9voidreadDat()

10

inti;

FILE*fp;

fp-fopen("in.dat","rw);

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

fscant(fp/rd”.&a{1});

16fclose(fp);

18voidmam()

19

20int1;

21readDat();

22jsVal();

23;printf("滿足條件的數(shù)?Ad\n",ent);

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

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

26printf(w\n");

27wrlteDatO:

28

29voidwriteDat()

30

31FILEefp;

32inti;

33fp匚fopen(wout.daWwo);

34fprintf(fp,"Qd'n".ent);

35for(i=0;1<ent;

36ifprintf(fp,Fd\n”.b(i]);

37;fclose(fp);

38!)

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

始進(jìn)行1到m的報(bào)數(shù),報(bào)數(shù)到第m個(gè)人,此人出圈,再?gòu)乃南乱粋€(gè)

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

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

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

件out.dat中。

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

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

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

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

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

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

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

<include<stdio.h>

上defineN100

IdefineS1

?defineM10

5intp(100),n,s.m;

6voidWriteDat(void);

voidJosegh(void)

8

9

10

11voidmain0

12

13m■M;

14N;

15

16Joseqh();

17WriteDat();

18

,?把鉆果p?出到文件outdat中?/

19voidWriteDat(void)

20

21int1;

22FILE*fp;。

23fp■fopen("out.dat*,Rw");

“以虔■的方式.以10個(gè)畋界為一Ifl把■出利解罪和文件out.dm中?/

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

25

26printf("%4d”,p{il);

27fprintf(fp,”S4d**,p(i]);

28if(i110-0)〃如果i?被10■除.射■出一個(gè)回東換行符

29(

30printf(w\nw);

31fprintf(fp#"\n*);

32}

331

34fclose(fp);

35

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

41.在SQLServer2008中,設(shè)有教師表(教師號(hào),姓名,所在部門號(hào),

職稱)和部門表(部門號(hào),部門名,高級(jí)職稱人數(shù))。請(qǐng)編寫滿足下列要

求的后觸發(fā)型觸發(fā)器(設(shè)觸發(fā)器名字為tri_zc)o每當(dāng)在教師表中插入一

名具有高級(jí)職稱(“教授”或“副教授”)的教師時(shí),或者將非高級(jí)職稱教

師的職稱更改為高級(jí)職稱時(shí),均修改部門表中相應(yīng)部門的高級(jí)職稱人數(shù)。

(假設(shè)一次操作只插入或更改一名教師的職稱)(1。分)

42.設(shè)有某商業(yè)單位需要建立商務(wù)數(shù)據(jù)庫用以處理銷售記賬,它記錄的數(shù)

據(jù)包括:顧客姓名,所在單位及電話號(hào)碼;商品名稱,型號(hào),產(chǎn)地及單

價(jià);某顧客購(gòu)買某商品的數(shù)量及日期。假定無同名顧客,無同型號(hào)商品,

由話公用靦客可存不同日期買同一商品。(1)請(qǐng)畫出該單位的商務(wù)ER

圖模型并優(yōu)化。(6分)(2)將ER模型換成關(guān)系模型并規(guī)范化到3NF。

(4分)

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

43.有如下的索引文件:

指針號(hào)

1B-3011

1B-2003

指針號(hào)

1X-100700

西服

2X-0021500

洗衣機(jī)

3J-0992300

彩電

則該索引文件稱為()。

A.稀疏索引B.聚集索引C.稠密索引D.非聚集索引

44.下列有關(guān)三級(jí)模式結(jié)構(gòu)和數(shù)據(jù)獨(dú)立性的說法,正確的是()。

A.在一個(gè)數(shù)據(jù)庫中可以定義多個(gè)內(nèi)模式,可利用不同的內(nèi)模式來描述特

定用戶對(duì)數(shù)據(jù)的物理存儲(chǔ)需求

B.外模式是用戶與數(shù)據(jù)庫系統(tǒng)的接口,用戶可通過外模式來訪問數(shù)據(jù),

在一個(gè)數(shù)據(jù)庫中只能定義一個(gè)外模式

C.三級(jí)模式結(jié)構(gòu)提供了數(shù)據(jù)獨(dú)立性,即當(dāng)數(shù)據(jù)的邏輯結(jié)構(gòu)和存儲(chǔ)結(jié)構(gòu)發(fā)

生變化時(shí),應(yīng)用程序不受影響

D.數(shù)據(jù)獨(dú)立性使得數(shù)據(jù)的定義和描述與應(yīng)用程序相分離,簡(jiǎn)化了數(shù)據(jù)庫

應(yīng)用程序的開發(fā),但增加了用戶維護(hù)數(shù)據(jù)的代價(jià)

參考答案

1.B解析:應(yīng)用層屬于最上層,位于DBMS核心之外,處理的對(duì)象是各

種各樣的數(shù)據(jù)庫應(yīng)用,包括應(yīng)用程序和終端用戶的事務(wù)請(qǐng)求和查詢要求

等。

2.C解析:關(guān)系數(shù)據(jù)模型由關(guān)系數(shù)據(jù)結(jié)構(gòu)、關(guān)系操作集合和關(guān)系完整性

約束組成。掌握關(guān)系數(shù)據(jù)模型的概念以及和E-R模型的區(qū)別。

3.D解析:模式也稱邏輯模式或概念模式,它是數(shù)據(jù)庫中全體數(shù)據(jù)的邏

輯結(jié)構(gòu)和特征的描述,是所有用戶的公共數(shù)據(jù)視圖,是數(shù)據(jù)庫系統(tǒng)模式

結(jié)構(gòu)的中間層,既不涉及數(shù)據(jù)的物理存儲(chǔ)細(xì)節(jié)和硬件環(huán)境,也與具體的

應(yīng)用程序及其使用的開發(fā)工具和高級(jí)語言無關(guān)。

4.D解析:SC關(guān)系中沒有外鍵,判斷能否插入元組主要是考慮實(shí)體完整

性規(guī)則和用戶完整性規(guī)則,A、B、C三選項(xiàng)對(duì)應(yīng)的元組,主鍵非空且與

SC中已存在的元組無重復(fù),符合實(shí)體完整性規(guī)則:其數(shù)據(jù)類型與用戶

定義的符合也符合用戶完整性規(guī)則。選項(xiàng)D對(duì)應(yīng)的元組,其關(guān)鍵字的值

關(guān)系SC中已存在,按照實(shí)體完整性規(guī)則,不能插入。

5.C解析:數(shù)據(jù)庫運(yùn)行管理程序模塊主要包括:系統(tǒng)初啟程序,初始化

DBMS,建立DBMS的系統(tǒng)緩沖區(qū),系統(tǒng)工作區(qū),打開數(shù)據(jù)字典等。

6.C

7.C解析:設(shè)關(guān)系R和關(guān)系S具有相同的目n(即兩個(gè)關(guān)系都有n個(gè)屬

性),且相應(yīng)的屬性取自同一個(gè)域,則關(guān)系R與關(guān)系S的交集由既屬于

R又屬于S的元組組成。其結(jié)果仍為n目關(guān)系。記作:RAS={t|teRAt

WS}。

8.A解析:進(jìn)程調(diào)度中使用優(yōu)先級(jí)調(diào)度法時(shí)又可把算法分為兩種方式:

可剝奪方式和不可剝奪方式。使用可剝奪方式時(shí),系統(tǒng)把處理機(jī)分配給

優(yōu)先級(jí)最高的進(jìn)程。一旦系統(tǒng)中出現(xiàn)了另一個(gè)優(yōu)先級(jí)更高的進(jìn)程,調(diào)度

程序?qū)⑼V拐谶\(yùn)行的進(jìn)程,把處理機(jī)CPU分配給新出現(xiàn)的優(yōu)先級(jí)更

高的進(jìn)程。

9.D解析:本題主要考查了在計(jì)算機(jī)網(wǎng)絡(luò)基礎(chǔ)中,TCP/IP協(xié)議的特點(diǎn)。

TCP/IP協(xié)議的特點(diǎn)有:開放的協(xié)議標(biāo)準(zhǔn),獨(dú)立于特定的計(jì)算機(jī)硬件與操作

系統(tǒng)??梢赃\(yùn)行在局域網(wǎng)、廣域網(wǎng),更適用于互聯(lián)網(wǎng)。整個(gè)TCP/IP設(shè)備

在網(wǎng)絡(luò)中具有惟一的IP地址??梢蕴峁┒喾N可靠的用戶服務(wù)。

10.C解析:進(jìn)程控制是通過原語來實(shí)現(xiàn)的,一個(gè)進(jìn)程可以使用創(chuàng)建原語

創(chuàng)建一個(gè)新的進(jìn)程,前者稱為父進(jìn)程,后者稱為子進(jìn)程。創(chuàng)建一個(gè)進(jìn)程

的主要任務(wù)是建立進(jìn)程控制塊,撤銷進(jìn)程的實(shí)質(zhì)是撤銷PCB。注意:創(chuàng)

建一個(gè)進(jìn)程的主要任務(wù)是建立進(jìn)程控制塊,而不是建立原語,故C)選項(xiàng)

敘述錯(cuò)誤。掌握進(jìn)程控制塊的概念和作用。

11.BCNF

12.

56次

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

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

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

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

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

14.關(guān)系(或表)關(guān)系(或表)

15.屬性沖突當(dāng)將局部E-R圖集成為全局E-R圖時(shí),可能存在3種沖突:

屬性沖突,結(jié)構(gòu)沖突,命名沖突。屬性沖突包括類型,取值范圍和取值

單位的沖突

16.DCBA棧是一種先進(jìn)后出的線性表,所以其出棧順序?yàn)镈CBA.

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

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

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

18.誤碼率【解析】描述通信系統(tǒng)的基本技術(shù)參數(shù)是數(shù)據(jù)傳輸速率和誤

碼率。

19.二叉樹二叉樹的概念,二叉樹是每個(gè)結(jié)點(diǎn)最多有兩個(gè)子樹的有序樹。

通常子樹的根被稱作"左子樹"(leftsubtree)和“右子樹”(rightsubtree)

20.不可靠【解析】互聯(lián)網(wǎng)應(yīng)該屏蔽低層網(wǎng)絡(luò)的差異,為用戶提供通用

的服務(wù)。具體地講,運(yùn)行IP協(xié)議的互聯(lián)層可以為其高層用戶提供如F3

種服務(wù):(1)不可靠的數(shù)據(jù)投遞服務(wù);(2)面向無連接的傳輸服務(wù);(3)盡

最大努力投遞服務(wù)。

21.A解析:自然連接是一種特殊的等值連接,它要求兩個(gè)關(guān)系中進(jìn)行比

較的分量必須是相同的屬性組,并且要在結(jié)果中把重復(fù)的屬性去掉。一

般的連接操作是從行的角度進(jìn)行運(yùn)算,但自然連接還需要取消重復(fù)列,

所以是同時(shí)從行和列的角度進(jìn)行運(yùn)算。

22.A

23.A解析:數(shù)據(jù)庫管理系統(tǒng)提供數(shù)據(jù)定義語言(DDL)來描述邏輯模式,

嚴(yán)格定義數(shù)據(jù)的名稱、特征、相互關(guān)系、約束等。DML是實(shí)現(xiàn)對(duì)數(shù)據(jù)庫

數(shù)據(jù)檢索、插入、更新與刪除操作的數(shù)據(jù)庫操縱語言。

24.C

25.B

26.B

27.D解析:概念模型的表示方法很多,其中最為著名和常用的是

P.P.S.Chen提出的實(shí)體一聯(lián)系方法。該方法用E-R圖來描述現(xiàn)實(shí)世界的

概念模型。

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

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

29.C

30.C

31.\n【審題關(guān)鍵句】千位+百位等于十位十個(gè)位,且千位+百位等于個(gè)

位.千位的10倍。計(jì)算并輸出這些四位自然數(shù)的個(gè)數(shù)ent以及這些數(shù)的

和。

\n【解題思路】

\n①首先定義一個(gè)循環(huán)變量i,以及分別用來存放四位數(shù)分解之后各位

數(shù)的變量qw(千位)、bw(百位)、SW(十位)和gw(個(gè)位)。

\n②通過for循環(huán)依次對(duì)數(shù)組中的每個(gè)四位數(shù)進(jìn)行分解,循環(huán)初值為

1000,終值為5000,每循環(huán)一次,循環(huán)變量i的值加1。每分解一個(gè)四

位數(shù),根據(jù)題目要求,判斷其“千位十百位=十位+個(gè)位”的條件是否滿足,

同時(shí)判斷“(千位+百位)=(個(gè)位-于位)*10"的條件是否滿足,兩個(gè)條件之間

用運(yùn)算符進(jìn)行連接。當(dāng)同時(shí)滿足以上兩個(gè)判斷條件時(shí),計(jì)數(shù)變量ent的

值加1,同時(shí)將該四位數(shù)累加到求和變量sum中,最終得到滿足條件的

四位自然數(shù)個(gè)數(shù)ent及它們的和sumo

\n本題中ent和sum變量在源程序中已經(jīng)定義,在該子程序中就不需要

再重新定義了。

\n【參考答案】

\n

\n

32.\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

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

減結(jié)果大于等于。小于等于10,從大到小排序。

\n【解題思路】

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

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

位);兩個(gè)用來存放重新組合數(shù)字的變量newVI和newV2o

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

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

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

成一個(gè)十位數(shù),并將兩個(gè)新的十位數(shù)分別賦給變量newVl和newV2。

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

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

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

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

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

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

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

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

序,排序過程中,可用newVl或newV2作為數(shù)據(jù)交換的中間變量。

\n【參考答案】

\n

\n

34.\n【審題關(guān)鍵句】計(jì)算金額,按金額從大到小進(jìn)行排列,相同的則按

產(chǎn)品代碼從大到小排列,結(jié)果存入結(jié)構(gòu)數(shù)組。

\n【解題思路】

\n本題類似第57套試題,通過審題可以發(fā)現(xiàn)主要是排序條件的設(shè)置要

求有所不同,參考答案的第8行進(jìn)行修改即可。

\n【參考答案】

\n

\n

\n

35.【審題關(guān)鍵句】將大于整數(shù)m且緊靠m的k個(gè)素?cái)?shù)存入數(shù)組。

\n

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論