2021年吉林省長(zhǎng)春市全國(guó)計(jì)算機(jī)等級(jí)考試數(shù)據(jù)庫(kù)技術(shù)真題(含答案)_第1頁(yè)
2021年吉林省長(zhǎng)春市全國(guó)計(jì)算機(jī)等級(jí)考試數(shù)據(jù)庫(kù)技術(shù)真題(含答案)_第2頁(yè)
2021年吉林省長(zhǎng)春市全國(guó)計(jì)算機(jī)等級(jí)考試數(shù)據(jù)庫(kù)技術(shù)真題(含答案)_第3頁(yè)
2021年吉林省長(zhǎng)春市全國(guó)計(jì)算機(jī)等級(jí)考試數(shù)據(jù)庫(kù)技術(shù)真題(含答案)_第4頁(yè)
2021年吉林省長(zhǎng)春市全國(guó)計(jì)算機(jī)等級(jí)考試數(shù)據(jù)庫(kù)技術(shù)真題(含答案)_第5頁(yè)
已閱讀5頁(yè),還剩33頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

2021年吉林省長(zhǎng)春市全國(guó)計(jì)算機(jī)等級(jí)考試

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

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

一、1.選擇題(10題)

1.在多道批處理系統(tǒng)中,為充分利用各種資源,運(yùn)行的程序應(yīng)具備的條

件是()o

A.適應(yīng)于內(nèi)存分配的B.計(jì)算量大的C.I/O量大的D.計(jì)算型和I/O型均

衡的

2.在中斷處理中,輸入輸出中斷是指

A.設(shè)備出錯(cuò)B.數(shù)據(jù)傳輸結(jié)束C.設(shè)備出錯(cuò)和數(shù)據(jù)傳輸結(jié)束D.都不是

3.要與Internet上的計(jì)算機(jī)進(jìn)行通信必須使用來(lái)建立連接。

A.建立主頁(yè)B.指定一個(gè)IP地址C.使用WWW服務(wù)D.發(fā)送電子郵件

4.下列哪一個(gè)是輸出設(shè)備?()

A.鼠標(biāo)B.鍵盤(pán)C.數(shù)/模轉(zhuǎn)換器D.模/數(shù)轉(zhuǎn)換器

5.設(shè)有關(guān)鍵碼序列(14,12,5,6,8,10,15,19,47,11,2,9),要

按關(guān)鍵碼值遞增的次序排序,采用直接選擇排序法,一趟掃描后的結(jié)果

A.(2,5,12,14,6,8,10,15,19,47,11,9)

B.(2,12,5,6,8,10,15,19,47,11,14,9)

C.(14,12,5,6,8,10,15,19,47,11,2,9)

D.(5,6,8,10,15,19,47,11,2,9,14,12)

6.下列關(guān)于Delphi的敘述中,是不正確的。

A.Delphi屬于第四代語(yǔ)言

B.Delphi基于面向?qū)ο缶幊谭椒ǎ且环N可視化開(kāi)發(fā)工具

C.Delphi提供了數(shù)據(jù)遷移工具(DataPump),可以實(shí)現(xiàn)數(shù)據(jù)從一個(gè)數(shù)據(jù)庫(kù)

到另一個(gè)數(shù)據(jù)庫(kù)的遷移

D.Delphi可以方便地支持?jǐn)?shù)據(jù)倉(cāng)庫(kù)的創(chuàng)建

7.下面有關(guān)模式分解的敘述中,不正確的是

A.若要求分解保持函數(shù)依賴,那么模式分解可以達(dá)到3NF

B.若一個(gè)模式分解保持函數(shù)依賴,則該分解一定具有無(wú)損連接性

C.若要求分解既具有無(wú)損連接,又保持函數(shù)依賴,則模式分解可以達(dá)到

3NF,但不一定能達(dá)到BCNF

D.若只有要求分解具有無(wú)損連接性,那么模式分解一定可以達(dá)到BCNF

8.在一棵二叉樹(shù)上,度為零的節(jié)點(diǎn)的個(gè)數(shù)為n0,度為2的節(jié)點(diǎn)的個(gè)數(shù)

為n2,則nO的值為

A.n2+1B.n2-1C.n2D.n2/2

9.InforMixOnLine動(dòng)態(tài)服務(wù)器的共享內(nèi)存分為三個(gè)區(qū),以下哪一項(xiàng)不

是?()

A.可駐留區(qū)B.虛擬區(qū)C.交換區(qū)D.消息區(qū)

10.當(dāng)局部E-R圖合并成全局E-R圖時(shí),可能出現(xiàn)沖突,下面屬于這一

類沖突的是

A.命名沖突B.元組沖突C.語(yǔ)法沖突D.數(shù)據(jù)沖突

二、填空題(10題)

n.監(jiān)控分析按照實(shí)現(xiàn)方法的不同分為兩種,一種是由數(shù)據(jù)庫(kù)建立自動(dòng)監(jiān)

控機(jī)制,另—種是__________O

12.設(shè)有關(guān)系R(A,B,C)和S(A,D,E,F),若將關(guān)系代數(shù)表達(dá)式:

用SQL語(yǔ)言的查詢語(yǔ)句表示,則有:SELECTR.A,B,D,

FFROMR,SWHERE。

13.在關(guān)系模式R(A,B,C,D)中,存在函數(shù)依賴關(guān)系{A-B,A—C,

A-D,(B,C)一A},則候選碼為」]

14.計(jì)算機(jī)采用的是[]工作原理

15.從目前的發(fā)展情況來(lái)看,局域網(wǎng)產(chǎn)品可以分為共享介質(zhì)局域網(wǎng)和

______兩類。

16.設(shè)有關(guān)系R(A,B,C)和s(A,D,E,F),若將關(guān)系代數(shù)表達(dá)式:兀R.A,

R.B,S.D,S.F(RooS)用SQL語(yǔ)言的查詢語(yǔ)句表示,貝I]有:SELECTR.A,

B,D,FFROMR,SWHEREo

17.系統(tǒng)表所有頁(yè)均分配在主文件組中。系統(tǒng)默認(rèn)是主文件組().

18.

用數(shù)組AU-nJ敷睡存儲(chǔ)完全-iLM的各結(jié)點(diǎn).則hi>0.且i<-_____時(shí),

博點(diǎn)A[i]的4■女Jtifi點(diǎn)A分剜結(jié)點(diǎn)A[i]沒(méi)有&f女.

19.如果關(guān)系模式R的屬性之間不存在非平凡且非函數(shù)依賴的多值依賴,

則R的規(guī)范化程序達(dá)到了o

20.操作系統(tǒng)之所以能夠找到磁盤(pán)上的文件,是因?yàn)橛写疟P(pán)上的文件名與

存儲(chǔ)位置的記錄。在DOS中,它叫做___________o

三、單選題(10題)

21.下面關(guān)于關(guān)系的性質(zhì)描述正確的是

A.每列中的分量可以來(lái)自不同的域

B.一個(gè)關(guān)系中可以有相同的元組

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

D.不同列的分量必須來(lái)自相同的域

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

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

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

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)和動(dòng)態(tài)結(jié)構(gòu)

23.在需求分析階段中,業(yè)務(wù)流程的分析結(jié)果一般用()

A.E-R圖表示B.程序流程圖表示C.數(shù)據(jù)流圖表示D.數(shù)據(jù)結(jié)構(gòu)圖表示

24.如果兩個(gè)實(shí)體之間的聯(lián)系是M:N,則在轉(zhuǎn)換成關(guān)系模型時(shí),()引入

第三個(gè)交叉關(guān)系。

A.需要B.不需要C.無(wú)所謂D.將兩個(gè)實(shí)體合并

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

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

A.SELECT

B.SELECT和INSERT

C.INSERT,UPDATE和DELETE

D.SELECT,INSERT,UPDATE和DELETE

26.一個(gè)公司有若干名兼職人員,而每個(gè)兼職人員有可能在多家公司打

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

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

27.為了實(shí)現(xiàn)數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)設(shè)計(jì)和物理結(jié)構(gòu)設(shè)計(jì)結(jié)果,必須使用具體

的DBMS提供的數(shù)據(jù)定義語(yǔ)言建立實(shí)際的數(shù)據(jù)庫(kù),此項(xiàng)操作又稱為

A.定義數(shù)據(jù)結(jié)構(gòu)B.數(shù)據(jù)裝載C.數(shù)據(jù)庫(kù)運(yùn)行D.數(shù)據(jù)庫(kù)的試運(yùn)行

28.用戶對(duì)SQL數(shù)據(jù)庫(kù)的訪問(wèn)權(quán)限中,如果只允許刪除基本表中的元組,

應(yīng)授予哪一種權(quán)限?

A.DROPB.DELETEC.ALTERD.UPDATE

29.若讓元素1,2,3依次進(jìn)棧,則出棧次序不可能出現(xiàn)哪一種情況?

A.3,2,1B.2,1,3C,3,1,2D.1,3,2

30.下列計(jì)算機(jī)表示的信息中,不能稱為“數(shù)據(jù)”的是()

A.人的姓名B.圖形符號(hào)C.計(jì)算機(jī)程序D.文件名

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

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

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

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

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

這些正整數(shù)的算術(shù)平均值totPjzo最后main函數(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ù)WriteDat的內(nèi)容。

linclude<8tdio.h>

2?defineMAXNUM200

3intxx(MAXNUM];

4inttotNum■0;〃文件xn.dat中共有多少個(gè)lEQBt

5inttotCnt-0;〃符2條件的數(shù)的個(gè)數(shù)

6doubletotPjz-0.0;〃平均值

7intReadDat(void);

8voidWriteDat(void);

9voidCalValue(void)

10

11

12

13voidmain()

14(

15inti;

16ford?0;i<MAXNUM;[?+)

17xx(i]-0;

18if(ReadDat())

19

20printf據(jù)文件in.dat不能打開(kāi)!\007\n");

21return;

22?

23CalValue();

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

25printf("符合條件的正整數(shù)的個(gè)數(shù)?qd個(gè)\n”,totCnt);

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

27WriteDat():

28

/?讀取這若干個(gè)正祭散并存入敷蛆M中〃

29intReadDat(void)

30(

31FILEefp;

32inti■0;

Hww

33if((fp-fopen("in.datrr))-NULL)

34return1;

35while(!feof(fp))

36(

37fscanf(fp#rd,".

381

39fclose{fp);

40return0;

41)

/?把計(jì)算姑聚存入文件。4匕?&匕中?/

42voidWriteDat(void)

43(

44FILEefp;

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

46fprlntf(fp,"%d\nid\n%.21f\n"匕otNum,totCnt,totPjz);

47fclose(fp);

48

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

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

中依次取出一個(gè)四位數(shù),對(duì)每一個(gè)四位數(shù)作如下處理:把個(gè)位數(shù)字和千

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

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

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

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

新組成數(shù):一個(gè)是奇數(shù),另一個(gè)為偶數(shù),并且至少有一個(gè)數(shù)能被17整

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

數(shù)組b中,并計(jì)算滿足上述條件的四位數(shù)的個(gè)數(shù)ent,而后對(duì)數(shù)組b進(jìn)

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

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

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

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

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

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

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

請(qǐng)勿改動(dòng)數(shù)據(jù)文件in.cUt中的任何數(shù)據(jù),主必?cái)?shù)num()>由數(shù)rcadDatO和寫(xiě)函數(shù)writeDat()的內(nèi)容.

1!linclude<stdio.h>

2jtdefineMAX200

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

4!voidwriteDat();

5tvoidjsVal()

6”

7j

8;}

9IvoidrcadDat()〃從1n?da匕文件中考取20。個(gè)網(wǎng)位攻〃入敏Ma中

10;(

11;int1;

12FILE*fp;

13fp-fopen("in.dat**,*rw

14for(i-0;i<MAX;

15fscanf(7d”,&a[i)

16fclose?fp);

17

18voidmain()

19

20Inti;

21readDat();

22jsValO;〃?用嫉敗,sVLo,實(shí)現(xiàn)?目要求的功底

23printf「清I足條件的數(shù)7d\n”,ent);

24for(i*0;1<ent;

25printf(*%dIb(i]);

26printf;

27writeDat();

28

29voidwriteDat()〃把計(jì)算皓果entllAtttHb中符合條件的四位數(shù)七出到皿⑶u文件中

30

31

32int1;

33fp-fopen(wout.datR;

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

35for(iw0;i<ent;“?)

ww

36fprintf(fpr%d\nrb[1]);

37fclose(fp>;

38

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

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

其功能要求:

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é)果輸出到文件out.dat

中。

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

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

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

*include<stdlo?h>

IdefineMAXNUM200

3intxxlMAXNUM];

4inttotNum■0;〃文件Ln.dat:中技有多少個(gè)正整數(shù)

5inttotCnt?0;〃符合條件的正整數(shù)的個(gè)數(shù)

6doubletotPjz,0.0;〃平均值

7intReadDat(void);

8voidWriteDat(void);

9voidCalValue(void)

10

13voidmain0

14(

15int1;

16ford-0;i<MAXNUM;…)

17xxti]-0;

18if(ReadDat())

19(

20printf("數(shù)據(jù)文件in.ddt不能打開(kāi)!\007\n");

21return;

22

23CalValue();

24print門(mén)??文件in.dat中共有正整數(shù)個(gè)\n",totNum);

25printfL符合條件的正整數(shù)的個(gè)數(shù)7d個(gè)\ntotCnt);

26printf("平均.21f\n?,totPjz);

27WriteDat();

28)

/?it取這若干個(gè)正整數(shù)并存入itlfiu中?/

29IntReadDat(void)

30(

31FILE*fp;

32inti?0;

H

33iff(fp-fopen(ln.dat**#*r**))==NULL)

34return1;

35while(!feof(fp))

36(

37fscanf(fp/”dj.&xx;

38)

39fclose(fp);

40return0;

41]

/?把計(jì)算姑果存入文件iut.dat中?/

42voidWriteDat(void)

434

44FILE*fp;

45fp■fopen(wout.dat",;

ww

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

47fcloae(fp);

48

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

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

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

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

出到文件Out.dat中。

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

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

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

位置上。

例如,位置012345678

源字符串ibcdhgfe

123498765

則處理后字符串hgfedcba

876594321

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

請(qǐng)勿改動(dòng)數(shù)據(jù)文件in.dat中的任何數(shù)據(jù)、主函數(shù)main()、讀函數(shù)n?dD叫)和寫(xiě)函數(shù)wntcDatO的內(nèi)容.

1Jlinclude<stdio.h>

2jfinclude<string.h>

3;charxx[20](801;

4voidreadDat();

5voidwriteDat();

6voidjsSort()

7

8

9

10voidmain()

11;(

12readDatO;

13jsSort();

14;writeDatO;

15;)

j/?從文件mdil中虢取20打敗宛存放到字符小數(shù)蛆xx中?/

16;voidreadDat()

17J

18?FILEein;

19;inti-0;

20!char*p;

ww

21\in?fopen(in.dat#"L);

22|whiled<20“fget3(xx(i]t80,in)!-NULL)

23

24p-strchr(xxfijf*\n*);

25if(p)*p?0;

26o

27;)

28:fclose(in);

29

j/?紀(jì)站*XX*出到文件gtdm中?/

30!voidwriteDat()

31;I

32FILEeout;

33int1;

34jout-fopenwwM);

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

36?i

w

37printf(0%s\n/xx[i));

wr

38fprintf(outr%a\n*rxxij);

39;)

40?fclose(out);

41

35.設(shè)有n個(gè)人圍坐一圈并按順時(shí)針?lè)较驈?到n編號(hào),從第s個(gè)人開(kāi)

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

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

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

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

件out.dat中o

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

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

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

來(lái)第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)容。

1?linclude<stdio.h>

2;IdefineN100

3j?defineS1

4;*defineM10

5!intp(100]9nrsrm;

6;voidWriteDat(void);

voidJoscgh(void)

8

9

10

11voidmain()

12

13m?M;

14nN;

15S;

16Josegh();

17WriteDat();

18

/*忙姑里p?出到文件gutat中?/

voidWriteDat(void)

int1;

FILEefp;

fp?fopen("out.dat*rRww);

,?以地?的方式,以個(gè)獨(dú)界為-?祖把也由川口■出利解幕匍文件。ut.dm中?/

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

25

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

27ifprintf(fp,"Md",pfl]);

28if(i%10-0)〃如果1■被10整除.射■出一個(gè)回東換行檢

29(

30printf("\nM);

31fprintf(fp/"\n*);

32}

33)

34fclose(fp);

35

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

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

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

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

二個(gè)字符的ASCII值加第三個(gè)字符的ASCII值,得到第二個(gè)新的值,存

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

字符的ASCII值加原第一個(gè)字符的ASCII宜得到最后一個(gè)新的值,存

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

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

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

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

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

test.c文件中。

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

的內(nèi)容。

I?flnclucle<stdio.h>

21iinclude<string.h>

3;unsignedcharxx[50)(80];

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

5;intReadDat(void);

6'voidWriteDat(void);

7ivoidChA(void)

ei(

9:

10;}

11{voidmain()

13if(ReadDatO)

14(

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

16return;

17}

18ChA();

19WriteDat();

20]

/?從文件m.dM中康我一編英文丈量存入》無(wú)符號(hào)字辨申數(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

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

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

上的數(shù)減百位數(shù)上的數(shù)減十位數(shù)上的數(shù)減個(gè)位數(shù)上的數(shù)大于零的個(gè)數(shù)

ent,再把所有滿足此條件的四位數(shù)依次存入數(shù)組b中,然后對(duì)數(shù)組b的

四位數(shù)按從小到大的順序進(jìn)行排序。最后main函數(shù)調(diào)用寫(xiě)函數(shù)writeDat

把數(shù)組b中的數(shù)輸出到文件Out.dat中。

例如?9!23.9-1-2-3>0.剜讀數(shù)滿足條件存入敷組b中.且個(gè)數(shù)cnfcm+l.

9812.9-8-1-20,則該數(shù)不滿足條件忽略.

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

程序中已定義1![組:[300],b[300).已定義變cm

it勿改動(dòng)數(shù)據(jù)文件in.dal中的任何數(shù)據(jù).主函數(shù)mainO、讀函數(shù)rcadDaH)和寫(xiě)函數(shù)writeD?O的內(nèi)容.

1:linclude<stdio.h>

2!inta(300],b(3001,cnt-0;〃定義■型數(shù)蛆a[3g],b【3g】和qftent,并且5匕的初值為o

3?voidwriteDat();

4?voidreadDat();

5?voidJsValueO

6

7

8

9?main()

10!(

j

11jinti;

12readDat();

13?isValue();

14?writeDat();

w

15!printf("cnt"%d\nrent);

16ifor(i?0;i<ent;

w

17-printf(b(tdj-td\n"/i.

18?1

19;voidreadDat()

20!(

21?FILE#fp;

22jinti;

HRw

23!fp-fopen(in.datr*r);

24jfor(i-0;1<300;

25?fscanf(fp,Fd,”,&a(l)

26jfclose(fp);

27i)

28!voidwriteDAt()

29;{

30;FILE*fp;

31!int1;

32;fp=fopen(**out.datw,"w")

33jR

fprintf(fpr"%d\nrent);

34?for(1-0;1<ent;£??)

35;fprintf(fprFd\n",b[i

36:fclose(fp);

37;)

38,已知數(shù)據(jù)文件INI.DAT和IN2.DAT中分別存有100個(gè)兩位十進(jìn)

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

中,請(qǐng)考生編制一個(gè)函數(shù)jsVal,實(shí)現(xiàn)的功能是依次對(duì)數(shù)組a和b中的數(shù)

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

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

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

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

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

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

例如,?(123124152115

b,3245172718IS

ct345112751155

播序后g113512753451

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

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

請(qǐng)勿改動(dòng)敷據(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ù)的個(gè)我?/

5?voidjsVdl()

IN1.DATIDN2.DAT中的100個(gè)眄粒十班.我存入也址,和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

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

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

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

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

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

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

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

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

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

請(qǐng)勿改動(dòng)數(shù)據(jù)文件indat中的任何數(shù)據(jù)、主函數(shù)讀函數(shù)readDat()和寫(xiě)函?twriteDatO的內(nèi)容。

1j?include<stdio.h>

2\IdefineMAX200

3jinta[MAX],b[MAXJ.ent

4!voidwriteDat();

5?voidjsVal()

9;voidreadout()

12!FILE*fp;

13jfp?fopen(win.datw,nrn);

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

15!fscanf(fp,(i));

16jfclose(fp);

n\>

18!voidmain()

19;I

20;inti;

21!readDat();

22;jsVal();

23;prlntf("滿足條件的數(shù)=0d\n。.ent):

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

25\printf(0%d-,bli]);

26!printf(M\nw);

275writeDat();

28?)

29!voidwriteDat()

30;(

31?FILE?fp;

32?inti;

33ifp-fopen("out.daf*,nw'*);

n

34?fprintf(fp?*,%cl\nfent);

351for(1-0;i<ent;ix)

36:fprintf(fp,"%d\nw,b(x]);

37jfclose(fp);

38i}

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

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

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

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

四位數(shù)平均值pjz2o最后main函數(shù)調(diào)用寫(xiě)函數(shù)writeDat把結(jié)果ent,

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

例如,7153.7+1-5+3,則讀數(shù)滿足條件計(jì)算平均值pjzl,且個(gè)數(shù)cnzm+I.

8129,8*1!-2+9.則讀數(shù)不“1足條件計(jì)年平均值pjz2.

注盤(pán),部分潭程序存在teste文件中.

程序中已定義數(shù)姐:*[300]-已定義變量rcm.pjzl.nil

請(qǐng)勿改動(dòng)數(shù)第文件indac中的任何數(shù)燃,主嗡效淀喻數(shù)readDH)和寫(xiě)或數(shù)wriieDM)的內(nèi)容.

tinclude<stdio.h>

inta[300],cnt-0;

doublepjzl?0.0,pjz2?0.0;

voidreadDat()i

voidwriteDat();

voidjsValuo()

voidmain()

readDat();

jsValueO;

writeDat();

printf(*cnt*%d\n滿足條件的平均值pzjl-t7.21f\n不涓足條件的平均值pz32-V

cntrp)zl,pjz2);

167

17;voidreadDat()

181(

19iFILE-fp;

20-inti;

21!卬=fopen(Hin.datM,Rr°);

22ifor(i-0;i<300;if+)

23!fscanf(fpr7d「,&a(i]);

24?fclose(fp);

25;}

26!voidwriteDatO

27;(

28?FILEefp;

29!fp■fopen(wout**ww);

30;fprintf(fp,**%d\n%7.21f\n%7.2Lf\n"rent.pjzltpji2);

31.fclose(fp);

32J)

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

41.某教務(wù)管理系統(tǒng)使用SQLServer2008數(shù)據(jù)庫(kù)管理系統(tǒng),數(shù)據(jù)庫(kù)軟硬

件配置信息如下:I.數(shù)據(jù)庫(kù)運(yùn)行在兩路IntelXeonE5-26092.4GHz

CPU(每路CPU4核心),128GB內(nèi)存、2塊300GB15000轉(zhuǎn)SAS硬盤(pán)

(RAID1)的服務(wù)器上;II.服務(wù)器操作系統(tǒng)為Windows200332位企

業(yè)版安裝SP2補(bǔ)丁;m.數(shù)據(jù)庫(kù)為SQLServer2008Enterprise(32位),

數(shù)據(jù)庫(kù)中總數(shù)據(jù)量近130GB。近一個(gè)學(xué)期以來(lái),用戶反映系統(tǒng)運(yùn)行緩慢,

經(jīng)程序員定位,確定為數(shù)據(jù)庫(kù)服務(wù)器響應(yīng)緩慢,需要進(jìn)行調(diào)優(yōu)。(10分)

42.設(shè)有商品表(商品號(hào),商品名,單價(jià))和銷售表(銷售單據(jù)號(hào),商品

號(hào),銷售時(shí)間,銷售數(shù)量,銷售單價(jià))。其中,商品號(hào)代表一類商品,商

品號(hào)、單價(jià)、銷售數(shù)量和銷售單價(jià)均為整型。請(qǐng)編寫(xiě)查詢某年某商品的

銷售總毛利的存儲(chǔ)過(guò)程,毛利=銷售數(shù)量x(銷售單價(jià)一單價(jià))。要求商

品號(hào)和年份為輸入?yún)?shù),總毛利用輸出參數(shù)返回。(10分)

六、單選題[1分](2題)

43.以下關(guān)于關(guān)系表和元組敘述錯(cuò)誤的是()o

A.關(guān)系表在邏輯上由一系列元組組成

B.每個(gè)元組由多個(gè)屬性組成

C.每個(gè)元組可以用數(shù)據(jù)庫(kù)磁盤(pán)文件中的一個(gè)邏輯記錄來(lái)存儲(chǔ)

D.元組的每個(gè)屬性對(duì)應(yīng)于一條記錄

44.SQLServer2008提供了方便的數(shù)據(jù)導(dǎo)入/導(dǎo)出向?qū)?,現(xiàn)利用該向?qū)?/p>

將S1服務(wù)器上某數(shù)據(jù)庫(kù)中T1表的數(shù)據(jù)導(dǎo)人到S2服務(wù)器某數(shù)據(jù)庫(kù)中已

有的T2表中。在數(shù)據(jù)源上的操作由用戶U1完成,在目的服務(wù)器上的

操作由用戶U2完成。則U1和U2需要具有的權(quán)限是()。

A.ul需要T1表的查詢權(quán)限和T2表的插入權(quán)限,U2無(wú)需任何權(quán)限

B.U2需要T1表的查詢權(quán)限和T2表的插入權(quán)限,U1無(wú)需任何權(quán)限

C.U1需要T1表的查詢權(quán)限,U2需要T2表的插入權(quán)限

D.U1需要T1表的查詢權(quán)限和S2服務(wù)器的登錄權(quán)限,U2需要T2表的

插入權(quán)限和S1服務(wù)器的登錄權(quán)限

參考答案

1.D解析:在多道批處理系統(tǒng)中,運(yùn)行的程序應(yīng)具備計(jì)算型與I/O型均

衡這一條件,才能充分利用各種資源。

2.C輸入輸出中斷:它是當(dāng)外部設(shè)備或通道操作正常結(jié)束或發(fā)生錯(cuò)誤時(shí)

所發(fā)生的中斷。例如:打印機(jī)打印完成、缺紙,讀磁盤(pán)時(shí)相應(yīng)驅(qū)動(dòng)器中

沒(méi)有磁盤(pán)等。

3.B解析:接入Internet的某臺(tái)計(jì)算機(jī)要和另一臺(tái)計(jì)算機(jī)通信就必須確

切地知道其IP地址。

4.C解析:以存儲(chǔ)程序原理為基礎(chǔ)的馮?諾依曼結(jié)構(gòu)的計(jì)算機(jī),一般由五

大功能部件組成,它們是:運(yùn)算器、控制器、存儲(chǔ)器、輸入設(shè)備和輸出

設(shè)備。其中輸出設(shè)備的功能是將計(jì)算機(jī)內(nèi)部的二進(jìn)制形式的信息轉(zhuǎn)化成

人們所需要的或其他設(shè)備能接受和識(shí)別的信息形式,常見(jiàn)的輸出設(shè)備有

打印機(jī)、顯示器、繪圖儀、數(shù)/模轉(zhuǎn)換器、聲音合成輸出等。因此本題4

個(gè)選項(xiàng)中的數(shù)/模轉(zhuǎn)換器屬于輸出設(shè)備,正確答案為C。

5.B解析:直接選擇排序是對(duì)文件進(jìn)行n-1趟掃描,第i趟掃描從剩下

的n-i+1個(gè)記錄中選出關(guān)鍵碼值最小的紀(jì)錄與第i個(gè)記錄進(jìn)行交換,直

到全部排完。按照這一思想,對(duì)關(guān)鍵碼序列(14,12,5,6,8,10,15,

19,47,11,2,9)進(jìn)行第二趟排序。首先選出關(guān)鍵碼值最小的為2,然

后將2與第一個(gè)關(guān)鍵碼值14進(jìn)行交換位置,關(guān)鍵碼值序列一變?yōu)?2,

12,5,6,8,10,15,19,47,11,14,9)o對(duì)照原題中的四個(gè)選項(xiàng)可

知,選項(xiàng)B是正確的。

6.D解析:Delphi屬于第四代語(yǔ)言,是一種可視化開(kāi)發(fā)工具和面向?qū)ο?/p>

的編程,而且可以實(shí)現(xiàn)數(shù)據(jù)從一個(gè)數(shù)據(jù)庫(kù)到另一個(gè)數(shù)據(jù)庫(kù)的遷移,具有

強(qiáng)大的數(shù)據(jù)庫(kù)支持。

7.B解析:若要求分解具有無(wú)損連接性,那么模式分解一定可以達(dá)到

BCNF;若要求分解保持函數(shù)依賴,那么模式分解可以達(dá)到3NF,但不

一定能達(dá)到BCNF;若要求分解既具有無(wú)損連接,又保持函數(shù)依賴,則

模式分解可以達(dá)到3NF,但不一定能達(dá)到BCNFO分析題目中的四個(gè)選

項(xiàng)可知,正確答案為選項(xiàng)B。

8.A解析:度為零的節(jié)點(diǎn)即為二叉樹(shù)的葉子,所以根據(jù)二叉樹(shù)的基本性

質(zhì)3(設(shè)二叉樹(shù)葉子數(shù)為nO,度為2的節(jié)點(diǎn)數(shù)為n0=n2+l),可知n0=n2+l。

9.C

10.A解析:當(dāng)局部E-R圖合并成全局E-R圖時(shí),可能出現(xiàn)命名沖突、

結(jié)構(gòu)沖突和屬性沖突。命名沖突主要包括實(shí)體類型名、聯(lián)系類型名之間

異名同義或異義同名等的命名沖突;結(jié)構(gòu)沖突包括作為實(shí)體有聯(lián)系或?qū)?/p>

性,同一實(shí)體其屬性成分不同的沖突;屬性沖突包括類型、取值范圍和

取值單位的沖突。

H.由管理員手動(dòng)實(shí)施的監(jiān)控

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

要求兩個(gè)關(guān)系中進(jìn)行比較的分量必須是相同的屬性組,并且要在結(jié)果中

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

=R.AO

13.A,(B,C)A—>B,A—'C,A―D,A可以作為關(guān)系的候選碼,因?yàn)椋˙,

C)-A,所以同樣(B,C)可以作為候選碼。

14.存儲(chǔ)程序計(jì)算機(jī)組成原理的知識(shí)。是馮諾伊曼提出來(lái)的計(jì)算機(jī)結(jié)構(gòu),

一般包括5個(gè)功能結(jié)構(gòu),運(yùn)算器,控制器,存儲(chǔ)器,輸入和輸出設(shè)備

15.交換局域網(wǎng)從目前的發(fā)展情況來(lái)看,局域網(wǎng)產(chǎn)品可以分為共享介質(zhì)

局域網(wǎng)和交換式局域兩類。

16.R.A=S.A或S.A=R.AR.A=S.A或S.A=R.A解析:自然連接是一種特

殊的等值連接,它要求兩個(gè)關(guān)系中進(jìn)行比較的分量必須是相同的屬性組,

并且要在結(jié)果中把重復(fù)的屬性去掉。本題是自然連接,所以本題答案為

R.A=S.A或S.A=R.AO

17.PRIMARY

18.[(n-l)/2]【解析】完全二叉樹(shù)中除最下面一層外,各層都被結(jié)點(diǎn)充滿

了,每一層結(jié)點(diǎn)個(gè)數(shù)恰是上一層結(jié)點(diǎn)個(gè)數(shù)的2倍。因此,從一個(gè)結(jié)點(diǎn)的

編號(hào)就可以推知它的雙親及左、右子女結(jié)點(diǎn)的編號(hào)。當(dāng)i<n/2時(shí),結(jié)點(diǎn)

i的左子女是結(jié)點(diǎn)2i,否則結(jié)點(diǎn)i沒(méi)有左子女;當(dāng)i<(n-1)/2時(shí),結(jié)點(diǎn)i

的右子女是結(jié)點(diǎn)2i+l,否則結(jié)點(diǎn)i沒(méi)有右子女;當(dāng)詳1時(shí),結(jié)點(diǎn)i的雙

親是結(jié)點(diǎn)”2]。

19.4NF4NF解析:若關(guān)系模式RE1NF,且對(duì)于每一個(gè)非平凡的多值依

賴X-Y(Y不屬于X),都有X包含碼,貝IJRE4NF。4NF就是限制關(guān)

系模式的屬性之間不允許有非平凡且非函數(shù)依賴的多值依賴。

20.FAT【解析】操作系統(tǒng)之所以能夠找到磁盤(pán)上的文件,是因?yàn)橛写疟P(pán)

上的文件名與存儲(chǔ)位置的記錄。在DOS里,它稱為文件表(FAT);在

Windows里,稱為虛擬文件表(VFAT);在mM的操作系統(tǒng)OS/2里,稱

為高性能文件系統(tǒng)(HPFS)。

2LC解析:關(guān)系的性質(zhì)1、每列中的分量來(lái)自同一個(gè)域;2、不同列的分

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

交換;4、行的順序可以交換;5、一個(gè)關(guān)系中不能有相同的元組;6、每

一個(gè)分量必須是不可分的數(shù)據(jù)項(xiàng)。

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

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

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

23.C

24.A

25.C

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

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

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

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

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

每一個(gè)實(shí)體,實(shí)體集B中有n個(gè)實(shí)體與之聯(lián)系;對(duì)于實(shí)體集B中的每一個(gè)

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

27.A

28.B解析:允許刪除基本表中的元組的權(quán)限是DELETEo

29.C解析:棧是限制僅在表的一端進(jìn)行插入和刪除運(yùn)算的線性表,通常

稱插入、刪除的這一端為棧頂(Top),另一端稱為棧底(Bottom)。當(dāng)表中

沒(méi)有元素時(shí)稱為空棧。

根據(jù)上述定義,每次刪除(退棧)的總是當(dāng)前棧中“最新”的元素,即最后

插入(進(jìn)棧)的元素,而最先插入的是被放在棧的底部,要到最后才能刪

除。根據(jù)上述原理,C)3,1,2,既然先出棧的是3,說(shuō)明1,2已經(jīng)進(jìn)棧,

那么1不可能在2之前出棧。

30.C

31.\n【審題關(guān)鍵句】讀取正數(shù),統(tǒng)計(jì)個(gè)數(shù),各位數(shù)字之和為偶數(shù)的數(shù)的

個(gè)數(shù)及平均值。

\n【解題思路]\n\田定義整型循環(huán)變量i、j,表示各位數(shù)字之和的長(zhǎng)整

型變量he以及存儲(chǔ)一個(gè)四位數(shù)的字符數(shù)組num[5]o

\n②循環(huán)變量i從0開(kāi)始,依次遞增到4,對(duì)字符數(shù)組num[5]的每個(gè)元

素賦初值0o

\n③循環(huán)變量i從0開(kāi)始,依次遞增到MAXNUM.1,對(duì)每個(gè)數(shù)組元素

xx[i]進(jìn)行判斷,如果xx用的值非零,則變量totNum加1,退出循環(huán)時(shí),

totNm的值就是文件in.dat中存有的四位正整數(shù)的個(gè)數(shù)。

\n④循環(huán)變量i從0開(kāi)始,依次遞增到totNum-1,對(duì)于每個(gè)數(shù)組元素xx[i]

調(diào)用庫(kù)函數(shù)sprintf以4個(gè)字符寬度形式輸出到字符數(shù)組num中,用字

符數(shù)組num中的每個(gè)元素減去0的ASCII碼48,就分別得到XX[i]這

個(gè)四位數(shù)每位上的數(shù)字,并把這四個(gè)數(shù)字相加賦給變量j。再對(duì)變量j對(duì)

2求余數(shù)進(jìn)行判斷其值是否等于0,如果等于0,則說(shuō)明j是偶數(shù),變量

totCnt加1,并把xx[i]的值累加到變量he。

\n⑤退出循環(huán)后,把變量he的類型轉(zhuǎn)換成雙精度型再除以totCnt得到

符合條件的數(shù)的算術(shù)平均值totPjzo

\n【參考答案】

\n

\n

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

到小排序。

\n【解題思路】

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

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

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

位數(shù)的奇偶性判斷

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論