計(jì)算機(jī)二級(jí)試題_第1頁(yè)
計(jì)算機(jī)二級(jí)試題_第2頁(yè)
計(jì)算機(jī)二級(jí)試題_第3頁(yè)
計(jì)算機(jī)二級(jí)試題_第4頁(yè)
計(jì)算機(jī)二級(jí)試題_第5頁(yè)
已閱讀5頁(yè),還剩95頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

計(jì)算機(jī)二級(jí)試題

一、選擇題⑴?(10)每小題2分,(11)-(50)每小題1分,共

60分)

下列各題A)、B)、C)、D)四個(gè)選項(xiàng)中,只有一個(gè)選項(xiàng)是正

確的,請(qǐng)將正確選項(xiàng)涂寫(xiě)在答題卡相應(yīng)位置上,答在試卷上不得

分。

(1)算法能正確地實(shí)現(xiàn)預(yù)定功能的特性稱(chēng)為算法的

A)確定性B)易讀性C)健壯性D)高效性

答案:A

評(píng)析:算法的確定性是指算法中的每一個(gè)步驟都必須是有明

確定義的,不允許有摸棱兩可的解釋?zhuān)膊辉试S有多義性,即每

個(gè)步驟都是預(yù)先定義好的。

(2)數(shù)據(jù)在計(jì)算機(jī)存儲(chǔ)器內(nèi)表示時(shí),物理地址與邏輯地址相

同并且是連續(xù)的,稱(chēng)之為。

A)存儲(chǔ)結(jié)構(gòu)B)邏輯結(jié)構(gòu)

C)順序存儲(chǔ)結(jié)構(gòu)D)鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)

答案:C

評(píng)析:如果數(shù)據(jù)之間在邏輯上有相鄰關(guān)系時(shí),能夠在物理位

置上體現(xiàn)出來(lái),則這種存儲(chǔ)結(jié)構(gòu)稱(chēng)為順序存儲(chǔ)結(jié)構(gòu)。如果數(shù)據(jù)之

間的邏輯相鄰關(guān)系在存儲(chǔ)時(shí)是靠存儲(chǔ)地址的指針來(lái)體現(xiàn)的,則稱(chēng)

為鏈?zhǔn)酱鎯?chǔ)結(jié)構(gòu)。

(3)從未排序序列中依次取出一個(gè)元素與已排序序列中的元

素依次進(jìn)行比較,然后將其放在已排序序列的合適位置,該

排序方法稱(chēng)為。

A)希爾排序B)冒泡排序C)插入排序D)選擇排

答案:C

評(píng)析:最基本的排序方法有三大類(lèi),即選擇排序、交換排序

和插入排序。

(4)對(duì)線(xiàn)性表進(jìn)行折半查找時(shí),要求線(xiàn)性表必須o

A)以順序方式存儲(chǔ)

B)以鏈接方式存儲(chǔ)

C)以順序方式存儲(chǔ),且結(jié)點(diǎn)按關(guān)鍵字有序排列

D)以鏈接方式存儲(chǔ),且結(jié)點(diǎn)按關(guān)鍵字有序排列

答案:C

評(píng)析:折半查找算法要求被查找的對(duì)象必須采用順序的存儲(chǔ)

結(jié)構(gòu),并且關(guān)鍵字有序排列。

(5)鏈表不具備的特點(diǎn)是o

A)可隨機(jī)訪問(wèn)任意一個(gè)結(jié)點(diǎn)

B)插入和刪除不需要移動(dòng)任何元素

C)不必事先估計(jì)存儲(chǔ)空間

D)所需空間與其長(zhǎng)度成正比

答案:A

評(píng)析:順序表可以隨機(jī)訪問(wèn)任意一個(gè)結(jié)點(diǎn),而鏈表必須從第

一個(gè)數(shù)據(jù)結(jié)點(diǎn)出發(fā),逐一查找每個(gè)結(jié)點(diǎn)。

(6)下列描述中正確的是o

A)軟件是物理產(chǎn)品

B)程序就是軟件

C)軟件工程由方法、工具和過(guò)程三部分組成

D)軟件工程是一個(gè)機(jī)械工程

答案:B

評(píng)析:軟件是與計(jì)算機(jī)系統(tǒng)操作有關(guān)的程序、規(guī)程、規(guī)則及

任何與之有關(guān)的文檔和數(shù)據(jù)。計(jì)算機(jī)軟件是一種邏輯產(chǎn)品,而不

是物理產(chǎn)品。軟件工程是用工程、科學(xué)和數(shù)學(xué)的原則與方法研制、

維護(hù)計(jì)算機(jī)軟件的有關(guān)技術(shù)及管理方法。軟件工具可以自動(dòng)或半

自動(dòng)的生成軟件文檔。軟件工程過(guò)程是管理者控制軟件開(kāi)發(fā)各環(huán)

節(jié)的基本方法。

(7)軟件測(cè)試是保證軟件質(zhì)量最關(guān)鍵的步驟,下列關(guān)于白盒

測(cè)試技術(shù)描述中不正確的是o

A)保證模塊中每一獨(dú)立的路徑至少執(zhí)行一次

B)保證所有判斷的每一分支至少執(zhí)行一次

C)保證每一循環(huán)都在邊界條件和一般條件下最多執(zhí)行一次

D)驗(yàn)證所有內(nèi)部數(shù)據(jù)結(jié)構(gòu)的有效性

答案:C

評(píng)析:軟件測(cè)試技術(shù)中,白盒測(cè)試技術(shù)和黑盒測(cè)試技術(shù)是兩

種基本的軟件測(cè)試手段。白盒測(cè)試技術(shù)有四個(gè)原則:保證模塊中

每一個(gè)獨(dú)立的路徑至少執(zhí)行一次;保證所有判斷的每一分支至少

執(zhí)行一次;保證每一循環(huán)都在邊界條件和一般條件下至少執(zhí)行一

次;驗(yàn)證所有內(nèi)部數(shù)據(jù)結(jié)構(gòu)的有效性。

(8)客觀世界中任何一個(gè)事物都可以看成一個(gè)對(duì)象。但是從

計(jì)算機(jī)的角度看,一個(gè)對(duì)象應(yīng)該包含兩個(gè)要素:一個(gè)是

,另一個(gè)是需要進(jìn)行的操作。

A)語(yǔ)句B)命令C)算法D)數(shù)據(jù)

答案:D

評(píng)析:在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,從計(jì)算機(jī)的角度看,一

個(gè)對(duì)象應(yīng)該包含兩個(gè)元素:數(shù)據(jù),相當(dāng)于家庭中的成員;操作,

相當(dāng)于家庭成員的活動(dòng)。對(duì)象就是一個(gè)包含數(shù)據(jù)與這些數(shù)據(jù)有關(guān)

的操作的集合。

(9)下列概念中,不是數(shù)據(jù)庫(kù)管理系統(tǒng)必須提供的數(shù)據(jù)控制功能

的是。

A)安全性B)完整性C)移植性D)一致性

答案:C

評(píng)析:數(shù)據(jù)庫(kù)管理系統(tǒng)提供的數(shù)據(jù)控制功能是指在數(shù)據(jù)庫(kù)建

立、運(yùn)行和維護(hù)時(shí),由DBMS統(tǒng)一管理、統(tǒng)一控制,以保證數(shù)據(jù)

的安全性、完整性和一致性。

(10)設(shè)關(guān)系R和關(guān)系S的元數(shù)分別是3和4,關(guān)系T是R和

S的笛卡兒積,即丁二口乂5,則關(guān)系T的元數(shù)是o

A)7B)9C)12D)16

答案:A

評(píng)析:笛卡兒積的定義是設(shè)關(guān)系R和s的元數(shù)分別是r和s,

R和s的笛卡兒積是一個(gè)(r十s)元屬性的集合,每一個(gè)元組的

mr個(gè)分量來(lái)自R的一個(gè)元組,、后s爪分量來(lái)自s的一個(gè)元組。

所以關(guān)系T的屬性元數(shù)是3+4=7o

(11)以下敘述中正確的是。

A)C語(yǔ)言中的全部數(shù)據(jù)類(lèi)型都是基本類(lèi)型

B)C語(yǔ)言中的全部數(shù)據(jù)類(lèi)型都是構(gòu)造類(lèi)型

C)C語(yǔ)言中的數(shù)據(jù)類(lèi)型只有兩種,即基本類(lèi)型和構(gòu)造類(lèi)型

D)以上都不對(duì)

答案:D

評(píng)析:c語(yǔ)言中的數(shù)據(jù)類(lèi)型有四種,即基本類(lèi)型、構(gòu)造類(lèi)型、

指針類(lèi)型和空類(lèi)型。

(12)下列可作為C語(yǔ)言賦值語(yǔ)句的是o

A)x=3,y=5B)a=b=6C)i—;D)y=6

答案:C

評(píng)析:此題實(shí)際上是考查對(duì)c語(yǔ)言中〃語(yǔ)句〃概念的理解。表

達(dá)式后面只有加上分號(hào)才能成為語(yǔ)句,因此,A),B),D)均是表

達(dá)式,只有C)為語(yǔ)句。且利用自減運(yùn)算符使i值減1。

(13)以下可以定義為用戶(hù)標(biāo)識(shí)符的是o

A)printfB)netC)3comD)int

答案:B

評(píng)析:c語(yǔ)言中的標(biāo)識(shí)符分為兩類(lèi)。一類(lèi)是系統(tǒng)標(biāo)識(shí)符,即

系統(tǒng)定義使用的關(guān)鍵字標(biāo)識(shí)符等。另一類(lèi)是用戶(hù)自定義標(biāo)識(shí)符。

兩類(lèi)標(biāo)識(shí)符都只能用字母、數(shù)字和下劃線(xiàn)三種字符組成。且第一

個(gè)字母必須為字母或下劃線(xiàn)。并且用戶(hù)自定義標(biāo)識(shí)符不能使用系

統(tǒng)關(guān)鍵字相同的標(biāo)識(shí)符。

(14)以下選項(xiàng)中,不能作為合法常量的是,o

A)0X2AB)015C).2.8e9D)123.6e0.4

答案:D

評(píng)析:c程序中的基本數(shù)據(jù)類(lèi)型有整型、實(shí)型和字符型。其

中整型常量三種形式,即八進(jìn)制、十進(jìn)制和十六進(jìn)制。而實(shí)型常

量有十進(jìn)制小數(shù)和指數(shù)形式兩種。

(15)有以下程序

main()

]

inta;charc=10:

floatf=-100.0;doublex;

clrscrO;

a=f/=c*=(x=6.5);

printfC%d,%c,%3.1C%3.a,c,Cx);

程序運(yùn)行后的輸出結(jié)果是0

A)l,65,1,6.5B)1,A,1.5,6.501,65,1.5,6.5

D)2,65,1.5,6.5

答案:B

評(píng)析:在賦值語(yǔ)句a=f/=c*=(x=6.5);中,可得x=6.5,

將x的值乘以10賦予c,為65,再將f=100的值除以65,并按

照四舍五入的原則,重新賦給f'得到f=T.50最后將f的值賦

給a,由于a是整型,所以得到a=l。

(16)以下語(yǔ)句序列中錯(cuò)誤的是。

A)intx=l;B)intx=0;C)intx=2.3;D)int

x=l,y=l;

x++;(x+1)++;(x++)+l;

(x++)+(y—);

答案:B

評(píng)析:c語(yǔ)言中的自加、自減運(yùn)算只能用于變量,而不能用

于常量或表達(dá)式。

(17)有定義語(yǔ)句:im.a;charb[10],c;則錯(cuò)誤的輸入

語(yǔ)句是。

A)scanf("%d%s%c”,&a,D,&C);B)scanf("%d%

s%c〃,&a,&b,&C);

C)scanf("%d%s%d”,&a;b,&C);D)scanf("%d%

s"&c,a,%,&C);

答案:D

評(píng)析:在scanf()語(yǔ)句中,在給整型變量和字符型賦值時(shí),

必須要在變量名前加取地址符號(hào)(&),而對(duì)字符型數(shù)組賦值時(shí),

可以不在變量名前不加取地址符號(hào),也可以加取地址符號(hào)。而且

對(duì)于字符型變量既可以賦給整型值,也可以賦給字符型值。

(18)有定義語(yǔ)句:intx,y;,若要通過(guò)scan即x=%d,

y=%n&x,&y);語(yǔ)句使變量x得到數(shù)值11,變量y得到數(shù)值12,

下面四組輸入形式中,正確的是o

A)ll12〈回車(chē)〉B)ll,12〈回車(chē))

C)x=l1,y=12〈回車(chē)〉D)x=ll,〈回車(chē)>12,<回車(chē)〉

答案:C

評(píng)析:在scanf()語(yǔ)句中,對(duì)于變量的賦值必須與數(shù)據(jù)的輸

入格式相一致。特別是一些字符說(shuō)明。

(19)設(shè)有如下程序段:

intx=6,y=4;

printf("%d\n”,(x%y,x&&y));

則以下敘述中正確的是。

A)輸出語(yǔ)句中格式說(shuō)明符的個(gè)數(shù)少于輸出項(xiàng)的個(gè)數(shù),不能正

確輸出

B)運(yùn)行時(shí)產(chǎn)生出錯(cuò)信息

C)輸出值為2

D)輸出值為1

答案:D

評(píng)析:在逗號(hào)表達(dá)式(表達(dá)式1,表達(dá)式2)中,其運(yùn)算方法

是先求表達(dá)式1的值,然后求表達(dá)2的值,整個(gè)逗號(hào)表達(dá)式的值

是表達(dá)式2的值。

(20)有以下程序

main()

]

inti=l.j=2,k=3;

clrscr();

if(i++==j&&k—==j)

printfC%d,%d,%d〃,i++'j,k);

else

printf("%d,%d,%d",++i,++j,k-);

)

程序運(yùn)行后的輸出結(jié)果是O

A)l,2,3B)2,2,3C)2,3,2D)3,3,3

答案:D

評(píng)析:按照運(yùn)算符的優(yōu)先級(jí),最先計(jì)算的是關(guān)系運(yùn)算i++==j,

由于此關(guān)系式不成立,,它的結(jié)果是為〃假〃值,由此可以確定邏

輯與運(yùn)算的結(jié)果必然是〃假〃值,因此參加邏輯與運(yùn)算的另一個(gè)關(guān)

系表達(dá)式〃k—=j〃的值,系統(tǒng)不再對(duì)它進(jìn)行運(yùn)算。此時(shí)變量i的

值自加1變成2,然后執(zhí)行else語(yǔ)句后的printf語(yǔ)句。

(21)有定義語(yǔ)句:inta=l,b=l,c=3,x;,則以下選項(xiàng)中

各程序段執(zhí)行后,x的值不等于3是

A)if(c<a)x=l;B)if(a<3&&b<C)x=3;

elseif(b<aIIb<C)x=3;elseif(a<2)x:2;

C)if(a%b>a)x=3;D)if(a<b+C)x:b;

if(a<2)x=2;if(b&&a<C)x=c=

if(a<l)z=l;if(c<a)x=a;

答案:C

評(píng)析:在各種運(yùn)算符中,運(yùn)算級(jí)別最高的是算術(shù)運(yùn)算,如果

有括號(hào),當(dāng)然先算括號(hào)內(nèi)的表達(dá)式的值。

(22)有以下程序,其輸出結(jié)果是

main()

{floatx=l;inty;

X++:

y=x+l;

printf("x=%d,y=%f”,x,y);

)

A)x=2,y=3B)x=2,y=3.0

C)x=2.0,y=3D)x=0.y=0.000000

答案:D

評(píng)析:一般在對(duì)變量定義為何種類(lèi)型的數(shù)據(jù)時(shí),對(duì)輸出應(yīng)有

完全一致的數(shù)據(jù)類(lèi)型格式。但整型與實(shí)型數(shù)據(jù)在進(jìn)行混合運(yùn)算

時(shí),一般其數(shù)據(jù)類(lèi)型可以自動(dòng)轉(zhuǎn)換。如本題的y=x+l;語(yǔ)句中,

系統(tǒng)自動(dòng)將實(shí)型表達(dá)式x+1的結(jié)果轉(zhuǎn)換為整數(shù)賦給整型變量y,

但整型變量y只能得到實(shí)型數(shù)的整數(shù)部分。

(23)有以下程序

main()

{

inta[6]={5,6,7,8,9,10},s=0,1=0;

clrserO;

do

(

if(a[i]%21-0)

s+=a[I];

}while(++i<5);

primf(〃%d\n〃,s);

程序運(yùn)行后的輸出結(jié)果是。

A)21B)22C)23D)24

答案:A

評(píng)析:引用數(shù)組中的某個(gè)元素時(shí),可以直接使用數(shù)組名加下

標(biāo)的形式。如p[l],就是數(shù)組中下標(biāo)為1的元素,按順序數(shù),

是第2個(gè)元素,因?yàn)閿?shù)組的下標(biāo)是從0開(kāi)始的。本題實(shí)際上是求

數(shù)組中所有奇數(shù)元素的和。

(24)若有如下程序段,

main()

chara[7]=〃123\010\032〃;

inti,j=0;

clrscrO;

for(1=0;Kstrlen(a);i++)

j+=sizeof(a);

printf("%d,%d\n”,I,J);

)

程序運(yùn)行后的輸出結(jié)果是。

A)5,30B)5,35C)5,25D)5,20

答案:B

評(píng)析:數(shù)組的存儲(chǔ)空間是在其定義后就分配的。字符數(shù)組

a[7]="123\010\032〃的存儲(chǔ)空間是7個(gè)單元。即sizeof(a)=7o

而函數(shù)strlenO是求字符串的長(zhǎng)度的。a[7]="123\010\032〃

中,有兩個(gè)轉(zhuǎn)義字符,因此字符串的長(zhǎng)度實(shí)際上是5個(gè)字符。所

以strlen(a)=5。在程序的for循環(huán)中,其循環(huán)的次數(shù)是5次,

j每次加7,所以最后的結(jié)果是35。i的值就是循環(huán)的次數(shù)。

(25)如果在c程序中要用到庫(kù)函數(shù)中的字符串比較函數(shù)

strcmp(),那么在程序前面應(yīng)該添加的頭文件是

______________________________O

A)stdio.hB)string,hC)alloc,hD)math.H

答案:B

評(píng)析:庫(kù)函數(shù)并不是c語(yǔ)言的一部分,它是由人們根據(jù)需要

編制并提供用戶(hù)使用的。在調(diào)用不同類(lèi)別的庫(kù)函數(shù)時(shí),必須在程

序前添加相應(yīng)的頭文件。

(26)若已定義的函數(shù)有返回值,則以下關(guān)于該函數(shù)調(diào)用的敘

述中錯(cuò)誤的是。

A)函數(shù)調(diào)用可以嵌套和遞歸

B)函數(shù)調(diào)用可以作為一個(gè)函數(shù)的實(shí)參

0函數(shù)調(diào)用可以出現(xiàn)在表達(dá)式中

D)函數(shù)調(diào)用可以作為一個(gè)函數(shù)的形參

答案:D

評(píng)析:函數(shù)的調(diào)用有三種方式。一是將函數(shù)調(diào)用作為一個(gè)語(yǔ)

句。二是函數(shù)出現(xiàn)在一個(gè)表達(dá)式中。三是作為一個(gè)函數(shù)的實(shí)參。

但是沒(méi)有函數(shù)調(diào)用作為形參。而且函數(shù)在調(diào)用時(shí)還有嵌套利遞歸

兩種特殊的情形。

(27)下列關(guān)于c語(yǔ)言中字符常量與字符串常量的敘述中,錯(cuò)

誤的是。

A)字符常量是用單撇號(hào)括起來(lái)的一個(gè)字符

B)空格字符也可用作字符常量

0字符串常量是用單撇號(hào)括起來(lái)的一個(gè)字符序列

D)字符串常量是用雙撇號(hào)括起來(lái)的一個(gè)字符序列

答案:C

評(píng)析:c語(yǔ)言中的字符型數(shù)據(jù)常量有兩類(lèi),一類(lèi)是用單撇號(hào)

括起來(lái)的字符常量。字符常量除了常用的字符外,還包括特殊的

空格符和以〃\〃開(kāi)頭的轉(zhuǎn)義字符。字符串常量則是用雙撇號(hào)括起

來(lái)的一個(gè)字符序列。

模擬試題一:

一、選擇題⑴?(10)每小題2分,(11)?(50)每小題1分,

共60分)

下列各題A)、B)、c)、D)四個(gè)選項(xiàng)中,只有一個(gè)選項(xiàng)是正

確的,請(qǐng)將正確的選項(xiàng)涂寫(xiě)在答題卡相應(yīng)位置上,答在試卷上不

得分。

(1)在數(shù)據(jù)結(jié)構(gòu)中,從邏輯上可以把數(shù)據(jù)結(jié)構(gòu)分為。

A)動(dòng)態(tài)結(jié)構(gòu)和靜態(tài)結(jié)構(gòu)B)緊湊結(jié)構(gòu)和非緊湊結(jié)構(gòu)

c)線(xiàn)性結(jié)構(gòu)和非線(xiàn)性結(jié)構(gòu)D)內(nèi)部結(jié)構(gòu)和外部結(jié)構(gòu)

答案:C

評(píng)析:邏輯結(jié)構(gòu)反映數(shù)據(jù)元素之間的邏輯關(guān)系,線(xiàn)性結(jié)構(gòu)表

示數(shù)據(jù)元素之間一對(duì)一的關(guān)系,非線(xiàn)性結(jié)構(gòu)表示數(shù)據(jù)元素之間一

對(duì)多或多對(duì)一的關(guān)系。

(2)若進(jìn)棧序列為1,2,3,4,進(jìn)棧過(guò)程中可以出棧,則下

列不可能的一個(gè)出棧序列是o

A)l,4,3,2B)2,3,4,1

C)3,1,4,2D)3,4,2,1

答案:C

評(píng)析:棧是一種后進(jìn)先出表,選項(xiàng)c中,先出棧的是3,說(shuō)

明此時(shí)棧內(nèi)必然有1,2,由于1先于2進(jìn)棧,所以1不可能在2

之前出棧,故選項(xiàng)C這種出棧序列是不可能的。

(3)排序方法中,將整個(gè)無(wú)序序列分割成若干小的子序列并

分別進(jìn)行插入排序的方法,稱(chēng)為。

A)希爾排序B)冒泡排序c)插入排序D)選擇排

答案:A

評(píng)析:希爾排序法的基本思想是:將整個(gè)無(wú)序序列分割成若

干小的子序列分別進(jìn)行插入排序。

(4)在順序表(3,6,8,10,12,15,16,18,21,25,30)

中,用二分法查找關(guān)鍵碼值11,所需的關(guān)鍵碼比較次數(shù)為

_____________________O

A)2B)3C)4D)5

答案:C

評(píng)析:二分法查找是用關(guān)鍵碼與線(xiàn)性表的中間元素比較,然

后根據(jù)比較結(jié)果來(lái)判斷是結(jié)束查找,還是在左邊或者右邊子表按

相同的方法繼續(xù)查找。本題中,與11比較的關(guān)鍵碼分別為15,

8,10,12四個(gè)。

(5)對(duì)于n個(gè)結(jié)點(diǎn)的單向鏈表(無(wú)表頭結(jié)點(diǎn)),需要指針單元

的個(gè)數(shù)至少為。

A)n-1B)nC)n+1D)2n

答案:C

評(píng)析:在n個(gè)結(jié)點(diǎn)的單向鏈表(無(wú)表頭結(jié)點(diǎn))中,每個(gè)結(jié)點(diǎn)都

有一個(gè)指針單元(即指針域),加上頭指針,至少需要n+1個(gè)指針

單元。

(6)在軟件開(kāi)發(fā)過(guò)程中,軟件結(jié)構(gòu)設(shè)計(jì)是描述。

A)數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)B)軟件體系結(jié)構(gòu)C)軟件結(jié)構(gòu)測(cè)試

D)軟件控制過(guò)程

答案:B

評(píng)析:從工程管理角度來(lái)看,軟件設(shè)計(jì)分兩步完成:概要設(shè)

計(jì)和詳細(xì)設(shè)計(jì)。概要設(shè)計(jì)(又稱(chēng)結(jié)構(gòu)設(shè)計(jì))將軟件需求轉(zhuǎn)化為軟件

體系結(jié)構(gòu)、確定系統(tǒng)級(jí)接口、全局?jǐn)?shù)據(jù)結(jié)構(gòu)或數(shù)據(jù)庫(kù)模式。

(7)模塊本身的內(nèi)聚是模塊獨(dú)立性的重要性度量因素之一。

在7類(lèi)內(nèi)聚中,具有最強(qiáng)內(nèi)聚的一類(lèi)是o

A)順序性?xún)?nèi)聚B)過(guò)程性?xún)?nèi)聚c)邏輯性?xún)?nèi)聚

D)功能性?xún)?nèi)聚

答案:D

評(píng)析:內(nèi)聚性是一個(gè)模塊內(nèi)部各元素間彼此結(jié)合的緊密程度

的度量。內(nèi)聚共有7類(lèi)它們之間的內(nèi)聚性由弱到強(qiáng)排列順序?yàn)?

偶然內(nèi)聚、邏輯內(nèi)聚、時(shí)間內(nèi)聚、過(guò)程內(nèi)聚、通信內(nèi)聚、順序

內(nèi)聚和功能內(nèi)聚。

(8)數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)流都是,僅僅是所處的狀態(tài)不

同。

A)分析結(jié)果B)事件C)動(dòng)作D)數(shù)據(jù)

答案:D

評(píng)析:數(shù)據(jù)流圖有4種成分:源點(diǎn)或終點(diǎn)、處理、數(shù)據(jù)存儲(chǔ)

和數(shù)據(jù)流。數(shù)據(jù)存儲(chǔ)是處于靜止?fàn)顟B(tài)的數(shù)據(jù),數(shù)據(jù)流是處于運(yùn)動(dòng)

中的數(shù)據(jù)。

(9)數(shù)據(jù)的完整性是指數(shù)據(jù)的正確性、有效性和。

A)可維護(hù)性B)獨(dú)立性C)安全性D)相容性

答案:D

評(píng)析:數(shù)據(jù)模型的完整性規(guī)則是給定的數(shù)據(jù)模型中數(shù)據(jù)及其

聯(lián)系所具有的制約和依存規(guī)則,用以限定符合數(shù)據(jù)模型的數(shù)據(jù)庫(kù)

狀態(tài)及其狀態(tài)的變化,以保證數(shù)據(jù)的正確性、有效性和相容性。

(10)關(guān)系代數(shù)運(yùn)算是以為基礎(chǔ)的運(yùn)算。

A)關(guān)系運(yùn)算B)謂詞運(yùn)算c)集合運(yùn)算D)代數(shù)運(yùn)

答案:C

評(píng)析:關(guān)系代數(shù)運(yùn)算是以關(guān)系代數(shù)作為運(yùn)算對(duì)象的一組高級(jí)

運(yùn)算的集合。它的基本操作是并、交、差、笛卡爾積,另外還包

垂直分割(投影)、水平分割(選擇)、關(guān)系的結(jié)合(連接)等。

(11)能將高級(jí)語(yǔ)言程序轉(zhuǎn)換成目標(biāo)語(yǔ)言程序的是。

A)調(diào)試程序B)解釋程序C)編譯程序D)編輯

程序

答案:C

評(píng)析:用高級(jí)語(yǔ)言編寫(xiě)的程序稱(chēng)為〃源程序〃,而計(jì)算機(jī)只能

識(shí)別和執(zhí)行由0和1組成的二進(jìn)制指令,所以高級(jí)語(yǔ)言必須先用

一種稱(chēng)為〃編譯程序〃的軟件,把源程序翻譯成二進(jìn)制形式的〃目

標(biāo)程序

(12)是構(gòu)成c語(yǔ)言程序的基本單位。

A)函數(shù)B)過(guò)程c)子程序D)子例程

答案:A

評(píng)析:c程序是由函數(shù)構(gòu)成的。一個(gè)c源程序至少包含一個(gè)

main函數(shù),也可以包含一個(gè)main函數(shù)和若干個(gè)其他函數(shù),因此,

函數(shù)是c程序的基本單位。

(13)可以在C語(yǔ)言中用做用戶(hù)標(biāo)識(shí)符的是______o

A)voidB)as_b3C)forD)2c

define_123-abcDo

WORDIfcasSIG

答案:B

評(píng)析:C語(yǔ)言規(guī)定,標(biāo)識(shí)符只能由字母、數(shù)字和下劃線(xiàn)三種

符號(hào)組成,而且第一個(gè)字符必須是字母或下劃線(xiàn)。另外還需要注

意的是關(guān)鍵字不能作標(biāo)識(shí)符。選項(xiàng)A中void,C中for都為關(guān)鍵

字,D中2c以字母開(kāi)頭。

(14)若有以下類(lèi)型說(shuō)明語(yǔ)句:

charw;intx;floaty,z;

則表達(dá)式w*x+z-y的結(jié)果為類(lèi)型。

A)floatB)charC)intD)double

答案:A

評(píng)析:在進(jìn)行運(yùn)算時(shí),不同類(lèi)型的數(shù)據(jù)參加運(yùn)算,需要先將

其轉(zhuǎn)換成同一類(lèi)型的數(shù)據(jù),然后再進(jìn)行運(yùn)算。轉(zhuǎn)換的順序由低到

高為:char,short—int-*unsigned-*longfdoubleffloat,

故結(jié)果為float型。

(15)main(()

{floatx=123A56;

printfC%-5.2f\n〃,x);

)

以上程序輸出的結(jié)果是O

A)123.4B)123.5C)123.45D)123.46

答案:D

評(píng)析:f格式符,用來(lái)輸出實(shí)數(shù),以小數(shù)形式輸出。〃%FI.nf〃

的含義是:輸出數(shù)據(jù)共占m歹U,其中n位小數(shù),如果輸出位數(shù)小

于m。則右端補(bǔ)空格。如果總長(zhǎng)度大于列數(shù),則按實(shí)際情況四舍

五入輸出。

(16)下面語(yǔ)句的輸出結(jié)果是o

Printf("%d'n”,strlen("\t\〃\065\xff\n"));

A)14B)8

C)5D)輸出項(xiàng)不合法,無(wú)正常輸出

答案:C

評(píng)析:在c語(yǔ)言中,以〃'〃開(kāi)頭的字符均為轉(zhuǎn)義字符,其中

〃V后可跟1?3位八進(jìn)制數(shù)或在〃\〃后跟字母x及1?2位十六

進(jìn)制數(shù),以此來(lái)代表一個(gè)特定的字符。

(17)下列程序的輸出結(jié)果是o

main()

{inta=0,b=0,c=0;

if(++a>01I++b>0)++c;

printf("\na=%d,b=%d,c=%d”,a,b,c);

)

A)a=0,b=0,c=0B)a=l,b=l,c=l

C)a=l,b=0,c=ID)a=0,b=l.c=l

答案:C

評(píng)析:

〃II〃是或運(yùn)算,它有個(gè)〃短路〃的特點(diǎn)需特別注意,當(dāng)〃I

I〃運(yùn)算符左邊的表達(dá)式的值為真時(shí),則程序就不再對(duì)〃II〃右

邊的表達(dá)式的值進(jìn)行運(yùn)算,而是使得整個(gè)表達(dá)式的值直接為真。

(18)下列程序的輸出結(jié)果是。

Main()

{inti;

for(i=l;i+1;i++)

{if(i>4){printlf("%d”,i++);break;}

}

printf("%d”,i++);

}

A)55B)56

c)程序錯(cuò)誤,沒(méi)有輸出D)循環(huán)條件永遠(yuǎn)為真,死循環(huán)

答案:B

評(píng)析:本程序中有個(gè)for循環(huán),但注意到for循環(huán)的條件是

〃i+l〃,也就是只要i+1的值為真(非零值均為真),就執(zhí)行循環(huán)。

當(dāng)i=L的時(shí),i+1的值為真,判斷if條件不成立,執(zhí)行i++,輸

出i的值為50

(19)下列程序的輸出結(jié)果是。

ttdefineA100

main()

{inti=0,sum=0;

do{if(I==(i/2)*2)continue;

sum+=i;

}while(++i

printf(〃%d\n〃,sum);

}

A)2500B)2050C)4D)0

答案:A

評(píng)析:本題程序的功能是求1至lj_99之問(wèn)(包括1和99)所有

奇數(shù)之和。程序中的while循環(huán)的終止條件為++i=100,在while

循環(huán)體內(nèi),如果i是偶數(shù),則執(zhí)行continue,跳過(guò)這一次循環(huán),

執(zhí)行下一次循環(huán),否則求和。最后輸出的值是1到99之間(包括

1和99)所有奇數(shù)之和(1+99)*50/2=2500o

(20)下列程序的輸出結(jié)果是o

main()

{int1=3;

switch(i)

{case1:

case2:printf("%d〃,i);

case3:

case4:break;

default:printf(“0K〃);

A)0B)3C)OKD)沒(méi)有任何輸出

答案:D

評(píng)析:在題中,i的值為3,由于〃case3:〃后面沒(méi)有break

語(yǔ)句,所以繼續(xù)向下執(zhí)行〃case4:〃后面的語(yǔ)句,由于〃case4:

〃后面的語(yǔ)句為break強(qiáng)行退出switch語(yǔ)句,所以,本題沒(méi)有任

何輸出。

(21)下列程序執(zhí)行后的輸出結(jié)果是。

main()

{intm[][3]={1,4,7,2,5,8,3,6,9);

inti,k=2:

for(1=0;i<3;i++)

{printf("%d",m[k][i]);}

)

A)456B)258C)369D)789

答案:C

評(píng)析:根據(jù)二維數(shù)組的定義得出:m[0][0]=1,m[0][1]=4,

m[0][2]=7,m[l][0]=2,rail][1]=5,m[l][2]=8,m[2][0]=3,

m[2][l]=6,m[2][2]=9,所以本題的輸出是第3行的值m[2][0],

m[2][1],m[2][2],即369。

(22)設(shè)已定義洱口k為int類(lèi)型變量,則以下for循環(huán)語(yǔ)句

for(i=0;k=-l,k=l;i++,k++)

printf("****\n");

A)判斷循環(huán)結(jié)束的條件不合法B)是無(wú)限循環(huán)

0循環(huán)一次也不執(zhí)行D)循環(huán)只執(zhí)行一次

答案:B

評(píng)析:本題定義了一個(gè)for循環(huán),循環(huán)變量是i,但由于本

題并沒(méi)有設(shè)置循環(huán)條件,所以循環(huán)的條件永遠(yuǎn)默認(rèn)為真,即無(wú)限

次執(zhí)行循環(huán)。

(23)下面程序的輸出結(jié)果是e

unsignedfun(unsignednum)

{unsignedk=l;

do{

k*=num%10;

num/=10;

}while(num);

return(k);

main()

{unsignedn。26;

printf(〃%d\n〃,fun(n));

)

A)0B)4c)12D)無(wú)限次循環(huán)

答案:c

評(píng)析:本題定義了一個(gè)fun函數(shù),用于num求和,具體執(zhí)行

過(guò)程如下:

num=26:k=k*(num%10)=1*(26%10),所以k=6,num=num

/10=2;

num=2:k=k*(num%10)=6*(2%10),所以k=12,num=num/

10=0;

num=0:while條件不成立,所以返回k的值12.

(24)已知字母A的ASCII碼值是65,字母a的ASCII碼值

是97,以F程序o

main()

{chara-A';

intb=20;

printfC%d,%o〃,(a=a+a,a+b,b),a+'a',A',b);

)

A)表達(dá)式非法,輸出零或不確定值

B)因輸出項(xiàng)過(guò)多,無(wú)輸出或輸出不確定值

C)輸出結(jié)果為20,141

D)輸出結(jié)果為20,141,20

答案:C

評(píng)析:本題中首先輸出逗號(hào)表達(dá)式"a=a+a,a+b,b”的值,

即20o然后以八進(jìn)制的形式輸出a+‘a(chǎn)'」A'的值為97對(duì)應(yīng)的八

進(jìn)制數(shù)141,由于最后一個(gè)表達(dá)式b沒(méi)有對(duì)應(yīng)輸出格式的輸出項(xiàng)

表列就不會(huì)輸出。

(25)C語(yǔ)言函數(shù)返回值的類(lèi)型是由決定的。

A)return語(yǔ)句中的表達(dá)式類(lèi)型B)調(diào)用函數(shù)的主調(diào)函數(shù)

類(lèi)型

c)調(diào)用函數(shù)時(shí)臨時(shí)D)定義函數(shù)時(shí)所指定的

函數(shù)類(lèi)型

答案:D

評(píng)析:函數(shù)值的類(lèi)型應(yīng)當(dāng)是在定義函數(shù)時(shí)指定的。在定義函

數(shù)時(shí)對(duì)函數(shù)值說(shuō)明的類(lèi)型一般應(yīng)該和return語(yǔ)句中的表達(dá)式類(lèi)

型一致,如果不一致,則以函數(shù)類(lèi)型為準(zhǔn),即函數(shù)類(lèi)型決定返回

值的類(lèi)型。

模擬試題二:

一、選擇題⑴?(10)每小題2分,(11)-(50)每小題1分,共

60分)

下列各題A)、B)、c)、D)四個(gè)選項(xiàng)中,只有一個(gè)選項(xiàng)是正

確的,請(qǐng)將正確選項(xiàng)涂寫(xiě)在答題卡相應(yīng)位置上,答在試卷上不得

分。

(1)下面敘述正確的是O

A)算法的執(zhí)行效率與數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)無(wú)關(guān)

B)算法的空間復(fù)雜度是指算法程序中指令(或語(yǔ)句)的條數(shù)

C)算法的有窮性是指算法必須能在執(zhí)行有限個(gè)步驟之后終

D)算法的時(shí)間復(fù)雜度是指執(zhí)行算法程序所需要的時(shí)間

答案:C

評(píng)析:算法的設(shè)計(jì)可以避開(kāi)具體的計(jì)算機(jī)程序設(shè)計(jì)語(yǔ)言,但

算法的實(shí)現(xiàn)必須借助程序設(shè)計(jì)語(yǔ)言中提供的數(shù)據(jù)類(lèi)型及其算法。

數(shù)據(jù)結(jié)構(gòu)和算法是計(jì)算機(jī)科學(xué)的兩個(gè)重要支柱。

(2)以下數(shù)據(jù)結(jié)構(gòu)屬于非線(xiàn)性數(shù)據(jù)結(jié)構(gòu)的o

A)隊(duì)列B)線(xiàn)性表C)二叉樹(shù)D)棧

答案:C

評(píng)析:線(xiàn)性表、棧和隊(duì)列等數(shù)據(jù)結(jié)構(gòu)所表達(dá)和處理的數(shù)據(jù)以

線(xiàn)性結(jié)構(gòu)為組織形式。棧又稱(chēng)后進(jìn)先出表(LastInFirstOut);

隊(duì)列又稱(chēng)先進(jìn)先出表(First:InFirstOut)o二叉樹(shù)的數(shù)據(jù)結(jié)

構(gòu)是樹(shù)型結(jié)構(gòu),結(jié)構(gòu)中數(shù)據(jù)元素之間存在著一對(duì)多的關(guān)系,因此

它是一種非線(xiàn)性數(shù)據(jù)結(jié)構(gòu)。

(3)在一棵二叉樹(shù)上第8層的結(jié)點(diǎn)數(shù)最多是。

A)8B)160128D)256

答案:C

評(píng)析:根據(jù)二叉樹(shù)的性質(zhì):二叉樹(shù)第i(i2D層上至多有

2i-L個(gè)結(jié)點(diǎn)。得到第8層的結(jié)點(diǎn)數(shù)最多是128。

(4)下面描述中,不符合結(jié)構(gòu)化程序設(shè)計(jì)風(fēng)格的是。

A)使用順序、選擇和重復(fù)(循環(huán))三種基本控制結(jié)構(gòu)表示程序

的控制邏輯

B)自頂向下

C)注重提高程序的執(zhí)行效率

D)限制使用goto語(yǔ)句

答案:C

評(píng)析:結(jié)構(gòu)化程序設(shè)計(jì)方法的四條原則是:1.自項(xiàng)向下;2.逐

步求精;3.模塊化;4.限制使用goto語(yǔ)句。

(5)下面概念中,不屬于面向?qū)ο蠓椒ǖ氖恰?/p>

A)對(duì)象、消息B)繼承、多態(tài)c)類(lèi)、封裝D)過(guò)程

調(diào)用

答案:D

評(píng)析:面向?qū)ο蠓椒ㄊ且环N運(yùn)用對(duì)象、類(lèi)、封裝、繼承、多

態(tài)和消息等概念來(lái)構(gòu)造、測(cè)試、重構(gòu)軟件的方法。面向?qū)ο蠓椒?/p>

從對(duì)象出發(fā),發(fā)展出對(duì)象、類(lèi)、消息、繼承等概念。

(6)在結(jié)構(gòu)化方法中,用數(shù)據(jù)流程圖(DFD)作為描述工具的軟

件開(kāi)發(fā)階段是o

A)可行性分析B)需求分析c)詳細(xì)設(shè)計(jì)D)程序編

答案:B

評(píng)析:軟件開(kāi)發(fā)階段包括需求分析、總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、

編碼和測(cè)試五個(gè)階段。其中需求分析階段常用的工具是數(shù)據(jù)流圖

和數(shù)據(jù)字典。

⑺軟件生命周期中所花費(fèi)用最多的階段是O

A)詳細(xì)設(shè)計(jì)B)軟件編碼c)軟件測(cè)試D)軟件維

護(hù)

答案:D

評(píng)析:軟件生命周期分為軟件定義、軟件開(kāi)發(fā)及軟件運(yùn)行維

護(hù)3個(gè)階段。本題中詳細(xì)設(shè)計(jì)、軟件編碼和軟件測(cè)試都屬于軟件

開(kāi)發(fā)階段;維護(hù)是軟件生命周期的最后一個(gè)階段。

(8)數(shù)據(jù)庫(kù)系統(tǒng)的核心是。

A)數(shù)據(jù)模型B)DBMSC)軟件工具D)數(shù)據(jù)庫(kù)

答案:B

評(píng)析:數(shù)據(jù)庫(kù)管理系統(tǒng)DBMS是數(shù)據(jù)庫(kù)系統(tǒng)的核心。DBMS是

負(fù)責(zé)數(shù)據(jù)庫(kù)的建立、使用和維護(hù)的軟件。DBMS建立在操作系統(tǒng)

之上,實(shí)施對(duì)數(shù)據(jù)庫(kù)的統(tǒng)一管理和控制。用戶(hù)使用的各種數(shù)據(jù)庫(kù)

命令以及應(yīng)用程序的執(zhí)行,最終都必須通過(guò)DBMS。

(9)下列敘述中正確的o

A)數(shù)據(jù)處理是將信息轉(zhuǎn)化為數(shù)據(jù)的過(guò)程

B)數(shù)據(jù)庫(kù)設(shè)計(jì)是指設(shè)計(jì)數(shù)據(jù)庫(kù)管理系統(tǒng)

c)如果一個(gè)關(guān)系中的屬性或?qū)傩越M并非該關(guān)系的關(guān)鍵字,但

它是另一個(gè)關(guān)系的關(guān)鍵字,則稱(chēng)其為本關(guān)系的外關(guān)鍵字

D)關(guān)系中的每列稱(chēng)為元組,一個(gè)元組就是一個(gè)字段

答案:C

評(píng)析:數(shù)據(jù)處理是指將數(shù)據(jù)轉(zhuǎn)換成信息的過(guò)程,故選項(xiàng)A敘

述錯(cuò)誤;設(shè)計(jì)數(shù)據(jù)庫(kù)的目的實(shí)質(zhì)上是設(shè)計(jì)出滿(mǎn)足實(shí)際應(yīng)用需求的

實(shí)際關(guān)系模型;關(guān)系中的行稱(chēng)為元組,對(duì)應(yīng)存儲(chǔ)文件中的記錄,

關(guān)系中的列稱(chēng)為屬性,對(duì)應(yīng)存儲(chǔ)文件中的字段,故D選項(xiàng)敘述錯(cuò)

誤。

(10)下列模式中,是用戶(hù)模式。

A)內(nèi)模式B)外模式C)概念模式D)邏輯模式

答案:B

評(píng)析:數(shù)據(jù)庫(kù)管理系統(tǒng)的三級(jí)模式結(jié)構(gòu)由外模式、模式和內(nèi)

模式組成。外模式,指數(shù)據(jù)庫(kù)用戶(hù)所看到的數(shù)據(jù)結(jié)構(gòu),是用戶(hù)看

到的數(shù)據(jù)視圖。模式,是數(shù)據(jù)庫(kù)中對(duì)全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特性

的描述,是所有用戶(hù)所見(jiàn)到的數(shù)據(jù)視圖的總和。內(nèi)模式是指數(shù)據(jù)

在數(shù)據(jù)庫(kù)系統(tǒng)內(nèi)的存儲(chǔ)介質(zhì)上的表示,即對(duì)數(shù)據(jù)的物理結(jié)構(gòu)和存

取方式的描述。

(11)C語(yǔ)言規(guī)定,程序中各函數(shù)之間O

A)既允許直接遞歸調(diào)用也允許間接遞歸調(diào)用

B)不允許直接遞歸調(diào)用也不允許間接遞歸調(diào)用

0允許直接遞歸調(diào)用不允許間接遞歸調(diào)用

D)不允許直接遞歸調(diào)用允許間接遞歸調(diào)用

答案:A

評(píng)析:C語(yǔ)言規(guī)定,程序中各函數(shù)之間既允許直接遞歸調(diào)用

也允許間接遞歸調(diào)用。

(12)在使用程序流程圖來(lái)表示算法時(shí),菱形用來(lái)表示

________________________O

A)輸入與輸出B)子程序C)判斷分支D)循環(huán)邊界

答案:C

評(píng)析:美國(guó)國(guó)家標(biāo)準(zhǔn)化協(xié)會(huì)ANSI規(guī)定了一些常用的流程圖

符號(hào),其中橢圓框表示起止框,方框表示處理框,菱形框表示判

斷分支,箭頭表示流程線(xiàn)。

(13)C語(yǔ)言中下列敘述正確的是o

A)不能使用do…while語(yǔ)句構(gòu)成的循環(huán)

B)do…while語(yǔ)句構(gòu)成的循環(huán),必須用break語(yǔ)句才能退出

C)do…while語(yǔ)句構(gòu)成的循環(huán),當(dāng)while語(yǔ)句中的表達(dá)式值

為非零時(shí)結(jié)束循環(huán)

D)do…while語(yǔ)句構(gòu)成的循環(huán),當(dāng)while語(yǔ)句中的表達(dá)式值

為零時(shí)結(jié)束循環(huán)

答案:D

評(píng)析:選項(xiàng)A是錯(cuò)誤的,c語(yǔ)言支持dO…while語(yǔ)句;選項(xiàng)

B是錯(cuò)誤的,do...while構(gòu)成的循環(huán),當(dāng)while語(yǔ)句中的表

達(dá)式值為零時(shí)結(jié)束循環(huán),而不是非零;選項(xiàng)c也是錯(cuò)誤的。

(14)以下選項(xiàng)中屬于C語(yǔ)言的數(shù)據(jù)類(lèi)型是o

A)復(fù)數(shù)型B)邏輯型C)雙精度型D)集合型

答案:c

評(píng)析:C語(yǔ)言的數(shù)據(jù)類(lèi)型分為基本類(lèi)型、構(gòu)造類(lèi)型、指針類(lèi)

型、空類(lèi)型四大類(lèi)。其中,基本類(lèi)型分為整型、字符型、實(shí)型三

類(lèi)。實(shí)型又稱(chēng)浮點(diǎn)型,包括單精度型和雙精度型兩種類(lèi)型。

(15)在C語(yǔ)言中,不正確的int類(lèi)型的常數(shù)是o

A)32768B)0C)037D)OxAF

答案:A

評(píng)析:c語(yǔ)言中int類(lèi)型的常數(shù)的范圍是:-32768?32767。

c整常數(shù)可用三種形式表示:十進(jìn)制整數(shù),八進(jìn)制整數(shù),十六進(jìn)

制整數(shù)。選項(xiàng)A超出范圍,不正確。

(16)以下程序輸出的結(jié)果是.

main()

{

inta=65535;

printf("%d%u〃,a,a);

)

A)-l-1B)6553565535C)-l65535D)65535-1

答案:C

評(píng)析:printf函數(shù)中不同類(lèi)型的數(shù)據(jù)用不同的格式字符,

其中%(1是按整型數(shù)據(jù)的實(shí)際長(zhǎng)度輸出十進(jìn)制整數(shù)。變量

a=65535以%(1格式輸出時(shí)溢出輸出值為該數(shù)的補(bǔ)碼值,即.1;%

U用來(lái)輸出unsigned型數(shù)據(jù),無(wú)符號(hào)整型變量的數(shù)值范圍為

0~65535,所以變量a=65535以%u格式輸出的值為65535。

(17)下列描述中不正確的是o

A)字符型數(shù)組中可以存放字符串

B)可以對(duì)字符型數(shù)組進(jìn)行整體輸入、輸出

c)可以對(duì)整型數(shù)組進(jìn)行整體輸入、輸出

D)不能在賦值語(yǔ)句中通過(guò)賦值運(yùn)算符〃=〃對(duì)字符型數(shù)組進(jìn)行

整體賦值

答案:C

評(píng)析:c語(yǔ)言規(guī)定只能逐個(gè)引用數(shù)組元素而不能一次引用整

個(gè)數(shù)組。字符數(shù)組的輸入、輸出可以將整個(gè)字符串一次輸入或輸

出。所以,選項(xiàng)c的說(shuō)法是不正確的。

(18)以下程序的輸出結(jié)果是。

main()

{inti,x[3][3]={9,8,7,6,5,4,3,2,1},*p=&x[l][l];

for(1=0;i<4;i+=2)printf("%d",p[I]);

A)52B)51C)53D)97

答案:C

評(píng)析:題中*p=&x[l][1];是指將數(shù)組x的數(shù)組元素x[l][1]

的地址賦值給指針變量P,使P指向這個(gè)數(shù)組元素,那

么p[0]即為指針變量P當(dāng)前所指向的數(shù)組元素x[l][1]的值。

(19)下列可用于C語(yǔ)言標(biāo)識(shí)符的一組是o

A)voidWORDdefineB)a6$sysFor

C)2asizeofabcD)Intdefinesizeof

答案:D

評(píng)析:c語(yǔ)言規(guī)定標(biāo)識(shí)符只能由字母、數(shù)字和下劃線(xiàn)三種字

符組成,且第一個(gè)字符必須為字母或下劃線(xiàn)。注意,大寫(xiě)字母和

小寫(xiě)字母被認(rèn)為是兩個(gè)不同的字符。C語(yǔ)言中的關(guān)鍵字不能用作

標(biāo)識(shí)符。

(20)以下程序的運(yùn)行結(jié)果是o

ttinclude"stdio.II”

main()

(

inta[]={L2,3,4,5,6,7,8,9,10,11,12};

int*p=a+5,*q=NULL;

*q=*(p十5);

printf("%d%d、n",'p,*q);

A)運(yùn)行后報(bào)錯(cuò)B)66

C)612D)55

答案:A

評(píng)析:題目中沒(méi)有給q分配存儲(chǔ)單元,只是簡(jiǎn)單的給它賦了

?個(gè)值,所以程序的運(yùn)行結(jié)果是611NULLpointer

assignment,也就是運(yùn)行后報(bào)錯(cuò)。

(21)以下說(shuō)法中正確的是。

A)C語(yǔ)言程序總是從第一個(gè)函數(shù)開(kāi)始執(zhí)行

B)在C語(yǔ)言程序中,要調(diào)用函數(shù)必須在main()函數(shù)中定義

c)c語(yǔ)言程序總是從main()函數(shù)開(kāi)始執(zhí)行

D)c語(yǔ)言程序中的main()函數(shù)必須放在程序的開(kāi)始部分

答案:C

評(píng)析:c語(yǔ)言的程序是由主函數(shù)main。開(kāi)始運(yùn)行,由主函數(shù)

來(lái)調(diào)用其他函數(shù),函數(shù)必須是并列的,定義后使用,不能在一個(gè)

函數(shù)中定義其他函數(shù),main()函數(shù)不一定要放在程序的開(kāi)始部

分,故選c。

(22)有如下程序

floatfun(intx,inty){return(x+y);)

main()

]

inta=2,b=5,c=8;

printfC/%3.Of\n,z,fun((int)fun(a+c,b),(a-c)));

)

程序運(yùn)行后的輸出結(jié)果為O

A)編譯出錯(cuò)B)9C)21D)9.0

答案:B

評(píng)析:本題中先執(zhí)行(int)fun(a+c,b)函數(shù)的調(diào)用,值為整

型數(shù)值15;然后再執(zhí)行fun(15,(a-e))函數(shù)調(diào)用,值為單精度

實(shí)型數(shù)值9.000000o輸出為%3.Of,即有效數(shù)長(zhǎng)度為3,沒(méi)有

小數(shù)位數(shù),所以最后結(jié)果為9。

(23)能正確表示a和b同時(shí)為正或同時(shí)為負(fù)的邏輯表達(dá)式是

__________________________O

A)(a>=IIb>=0)&&(a<0||b<0)

B)(a>=0&&b>=0)&&(a<0&&b<0)

C)(a+b>0)&&(a+b<=0)D)a*b〉0

答案:D

評(píng)析:選項(xiàng)A中,表達(dá)式表示的是a,b為異號(hào);選項(xiàng)B中,

表達(dá)式表示的是0,因?yàn)闆](méi)有滿(mǎn)足條件的值;選項(xiàng)c中,表達(dá)式

表示的是0,因?yàn)闆](méi)有滿(mǎn)足條件的值;選項(xiàng)D表示的是a和b為

同號(hào)。

(24)若己定義:inta[9],*p=a;并在以后的語(yǔ)句中未改變

P的值,不能表示a[l]地址的

表達(dá)式是。

A)p+1B)a+1C)a++D)++p

答案:C

評(píng)析:數(shù)組名是指針常量,是個(gè)固定的指針,不能對(duì)數(shù)組名

賦予一個(gè)新的地址值,也不能使這個(gè)指針常量〃移動(dòng)〃,指向數(shù)組

的其它元素。

(25)以下程序的輸出結(jié)果是o

main()

{inta==T,b=l,k;

if((++a<0)&&!(b—<=0))

printfC%d%d\n”,a,b);

else

printf("%d%d\n”,b,a);

)

A)-l1B)O1

C)10D)O0

答案:C

評(píng)析:邏輯運(yùn)算符的優(yōu)先次序如

下:!(非)一&&(與)-II(或),但本題需特別、注意的是短路的

概念。

模擬試題三:

一、選擇題((D?(10)每小題2分,(11)-(50)每小題1分,

共60分)

下列各題A)、B)、c)、D)四個(gè)選項(xiàng)中,只有一個(gè)選項(xiàng)是正

確的,請(qǐng)將正確選項(xiàng)涂寫(xiě)在答題卡相應(yīng)位置上,答在試卷上不得

分。

(1)算法的時(shí)間復(fù)雜度是指。

A)執(zhí)行算法程序所需要的時(shí)間

B)算法程序的長(zhǎng)度

0算法執(zhí)行過(guò)程中所需要的基本運(yùn)算次數(shù)

D)算法程序中的指令條數(shù)

答案:C

評(píng)析:所謂算法的時(shí)間復(fù)雜度,是指執(zhí)行算法所需要的計(jì)算

工作量。

(2)下列敘述中正確的是。

A)線(xiàn)性表是線(xiàn)性結(jié)構(gòu)B)棧與隊(duì)列是非線(xiàn)性結(jié)構(gòu)

C)線(xiàn)性鏈表是非線(xiàn)性結(jié)構(gòu)D)二叉樹(shù)是線(xiàn)性結(jié)構(gòu)

答案:A

評(píng)析:一般將數(shù)據(jù)結(jié)構(gòu)分為兩大類(lèi)型:線(xiàn)性結(jié)構(gòu)與非線(xiàn)性結(jié)

構(gòu)。線(xiàn)性表、棧與隊(duì)列、線(xiàn)性鏈表都是線(xiàn)性結(jié)構(gòu),而二叉樹(shù)是非

線(xiàn)性結(jié)構(gòu)。

(3)下面關(guān)于完全二叉樹(shù)的敘述中,錯(cuò)誤的是位

A)除了最后一層外,每一層上的結(jié)點(diǎn)數(shù)均達(dá)到最大值

B)可能缺少若干個(gè)左右葉子結(jié)點(diǎn)

C)完全二叉樹(shù)一般不是滿(mǎn)二叉樹(shù)

D)具有結(jié)點(diǎn)的完全二叉樹(shù)的深度為[log2n]+l

答案:B

評(píng)析:滿(mǎn)二叉樹(shù)指除最后一層外每一層上所有結(jié)點(diǎn)都有兩個(gè)

子結(jié)點(diǎn)的二叉樹(shù)。完全二叉樹(shù)指除最后一層外,每一層上的結(jié)點(diǎn)

數(shù)均達(dá)到最大值,在最后一層上只缺少右邊的若干子結(jié)點(diǎn)(葉子

結(jié)點(diǎn))的二叉樹(shù)。

(4)結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)的是o

A)程序的規(guī)模B)程序的易讀性

c)程序的執(zhí)行效率D)程序的可移植性

答案:B

評(píng)析:結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)的是結(jié)構(gòu)化程序清晰易讀,

可理解性好,程序員能夠進(jìn)行逐步求精、程序證明和測(cè)試,以保

證程序的正確性。

(5)在軟件生命周期中,能準(zhǔn)確地確定軟件系統(tǒng)必須做什么

和必須具備哪些功能的階段是O

A)概要設(shè)計(jì)B)詳細(xì)設(shè)計(jì)C)可行性分析D)需求分析

答案:D

評(píng)析:需求分析是對(duì)待開(kāi)發(fā)軟件提出的需求進(jìn)行分析并給出

詳細(xì)定義,即準(zhǔn)確地確定軟件系統(tǒng)的功能。編寫(xiě)軟件規(guī)格說(shuō)明書(shū)

及初步的用戶(hù)手冊(cè),提交評(píng)審。

(6)數(shù)據(jù)流圖用于抽象描述一個(gè)軟件的邏輯模型,數(shù)據(jù)流圖

由一些特定的圖符構(gòu)成。下列圖符名標(biāo)識(shí)的圖符不屬于數(shù)據(jù)

流圖合法圖符的是。

A)控制流B)加工C)數(shù)據(jù)存儲(chǔ)D)源和潭

答案:A

評(píng)析:數(shù)據(jù)流圖從數(shù)據(jù)傳遞和加工的角度,來(lái)刻畫(huà)數(shù)據(jù)流從

輸入到輸出的移動(dòng)變換過(guò)程。數(shù)據(jù)流圖中的主要圖形元素有:加

工(轉(zhuǎn)換)、數(shù)據(jù)流、存儲(chǔ)文件(數(shù)據(jù)源)、源和潭。

(7)軟件需求分析一般應(yīng)確定的是用戶(hù)對(duì)軟件的

______________________________O

A)功能需求B)非功能需求C)性能需求D)功能需求

和非功能需求

答案:D

評(píng)析:軟件需求分析中需要構(gòu)造一個(gè)完全的系統(tǒng)邏輯模型,

理解用戶(hù)提出的每一功能與性能要求,是用戶(hù)明確自己的任務(wù)。

因此,需求分析應(yīng)確定用戶(hù)對(duì)軟件的功能需求和非功能需求。

(8)下述關(guān)于數(shù)據(jù)庫(kù)系統(tǒng)的敘述中正確的是。

A)數(shù)據(jù)庫(kù)系統(tǒng)減少了數(shù)據(jù)冗余

B)數(shù)據(jù)庫(kù)系統(tǒng)避免了一切冗余

C)數(shù)據(jù)庫(kù)系統(tǒng)中數(shù)據(jù)的一致性是指數(shù)據(jù)類(lèi)型的一致

D)數(shù)據(jù)庫(kù)系統(tǒng)比文件系統(tǒng)能管理更多的數(shù)據(jù)

答案:A

評(píng)析:由數(shù)據(jù)的共享自身又可極大地減少數(shù)據(jù)冗余性,不僅

減少了不必要的存儲(chǔ)空間,更為重要的是可以避免數(shù)據(jù)的不一致

性。所謂數(shù)據(jù)的一致性是指在系統(tǒng)中同一數(shù)據(jù)的不同出現(xiàn)應(yīng)保持

相同的值。

(9)關(guān)系表中的每一橫行稱(chēng)為一個(gè)。

A)元組B)字段C)屬性D)碼

答案:A

評(píng)析:在關(guān)系數(shù)據(jù)庫(kù)中,關(guān)系模型采用二維表來(lái)表示,簡(jiǎn)稱(chēng)

〃表〃。二維表是由表框架及表元組組成。在表框架中,按行可以

存放數(shù)據(jù),每行數(shù)據(jù)稱(chēng)為元組。

(10)數(shù)據(jù)庫(kù)設(shè)計(jì)包括兩個(gè)方面的設(shè)計(jì)內(nèi)容,它們是

________________________O

A)概念設(shè)計(jì)和邏輯設(shè)計(jì)B)模式設(shè)計(jì)和內(nèi)模式設(shè)計(jì)

C)內(nèi)模式設(shè)計(jì)和物理設(shè)計(jì)D)結(jié)構(gòu)特性設(shè)計(jì)和行為特性

設(shè)計(jì)

答案:A

評(píng)析:數(shù)據(jù)庫(kù)設(shè)計(jì)可分為概念設(shè)計(jì)與邏輯設(shè)計(jì)。概念設(shè)計(jì)的

目的是分析數(shù)據(jù)間內(nèi)在語(yǔ)義關(guān)聯(lián),在此基礎(chǔ)上建立一個(gè)數(shù)據(jù)的抽

象模型。邏輯設(shè)計(jì)的主要工作是將ER圖轉(zhuǎn)換為指定的RDBMS中

的關(guān)系模型。

(11)請(qǐng)讀程序:

#include<stdio.h>

main()

inta;floatb,c;

scanf(〃%2d%3P%4f‘,&a,&b,&c);

printf(,z\na=%d,b=%ec。%f\n”,a,b,c);

)

若運(yùn)行時(shí)從鍵盤(pán)上輸入98765432101,則上面程序的輸出結(jié)

果是。

A)a=98,b=765,c=4321

B)a=l0,b=432,c=8765

C)a=98,b=765.000000,c=4321.000000

D)a=98,b=765.0,c=4321.0

答案:C

評(píng)析:scanf()把用戶(hù)從鍵盤(pán)錄入的數(shù)字的第1、2位存入整

型變量a;把第3、4、5位存入單精度實(shí)型變量b,把第6、7、

8、9位存入單精度實(shí)型變量c,用戶(hù)錄入的第10位被scanf()

遺棄。這時(shí)變量a、b、c的值分別為:98、765.000000.

4321.000000o

(12)一個(gè)良好的算法由下面的基本結(jié)構(gòu)組成,但不包括

_____________________________O

A)順序結(jié)構(gòu)B)選擇結(jié)構(gòu)c)循環(huán)結(jié)構(gòu))跳轉(zhuǎn)結(jié)構(gòu)

答案:D

評(píng)析:1966年,Bohra和Jacopini提出了以下三種基本結(jié)

構(gòu),用這三種基本結(jié)構(gòu)作為表示一個(gè)良好算法的基本單元:1、

順序結(jié)構(gòu);2、選擇結(jié)構(gòu);3、循環(huán)結(jié)構(gòu)。

(13)請(qǐng)選出以下程序的輸出結(jié)果。

#include<stdio.h>

sub(x,y,z)

intx,y,*z:

{*z=y-x;}

main(){

inta,b,c;

sub(10,5,&a);sub(7,a,&b);sub(a,b,&c);

printfC%d,%d,%d\n”,a,b,c);

)

A)5,2,3B)-5,-12,-7C)-5,-12,-17D)5,-2,-7

答案:B

評(píng)析:sub()函數(shù)的作用是將形參y和x的差賦給了z指向

的那個(gè)內(nèi)存地址,所以在sub(10,5,比a/I,10和5屬于值傳遞,

a是屬于地址傳遞,也就是a與z指向了同一個(gè)存儲(chǔ)單元,在執(zhí)

行函數(shù)后,a的值隨*z變化,所以此次函數(shù)被調(diào)用后,a的值為

y-x=-5,同理可知,在sub(7,a,&b)后,b的值發(fā)生變化,其值

為-5-7=-12,在sub(a,b,&c)后,c的值發(fā)生變化,其值為

-12-(-5)=-7o

(14)下面程序在屏幕上的輸出是o

main()

(

printf(z,ab\b\bc");

}

A)ab\b\bcB)acC)abcD)abc

答案:B

評(píng)析:c語(yǔ)言中允許使用一種特殊形式的字符常量,、就是

以一個(gè),,開(kāi)頭的字符序列,這樣的字符稱(chēng)為〃轉(zhuǎn)義字符〃。常用

的轉(zhuǎn)義字符有:\n,換行;\t,水平制表;\b,退格;\r,

回車(chē)。

(15)若x是整型變量,pb是基類(lèi)型為整型的指針變量,則

正確的賦值表達(dá)式是。

A)pb=&x;B)pb=x;C)*pb二&x;D)*pb=*x

答案:A

評(píng)析:選項(xiàng)A將變量x的地址賦給指針變量p

溫馨提示

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

評(píng)論

0/150

提交評(píng)論