一、選擇題(每小題1分,共40分)
(1)下列關(guān)于棧敘述正確的是( )。
A.棧頂元素先能被刪除
B.棧頂元素后才能被刪除
C.棧底元素永遠(yuǎn)不能被刪除
D.棧底元素先被刪除
(2)下列敘述中正確的是( )。
A.在棧中,棧中元素隨棧底指針與棧頂指針的變化而動態(tài)變化
B.在棧中,棧頂指針不變,棧中元素隨棧底指針的變化而動態(tài)變化
C.在棧中,棧底指針不變,棧中元素隨棧頂指針的變化而動態(tài)變化
D.以上說法都不正確
某二叉樹共有7個結(jié)點,其中葉子結(jié)點只有l(wèi)個,則該二叉樹的深度為(假設(shè)根結(jié)點在第1層)( )。
A.3
B.4
C.6
D.7
軟件按功能可以分為應(yīng)用軟件、系統(tǒng)軟件和支撐軟件(或工具軟件)。下面屬于應(yīng)用軟件的是( ):
A.學(xué)生成績管理系統(tǒng)
B.c語言編譯程序
C.UNIX操作系統(tǒng)
D.數(shù)據(jù)庫管理系統(tǒng)
(5)結(jié)構(gòu)化程序所要求的基本結(jié)構(gòu)不包括( )。
A.順序結(jié)構(gòu)
B.GOT0跳轉(zhuǎn)
C.選擇(分支)結(jié)構(gòu)
D.重復(fù)(循環(huán))結(jié)構(gòu)
(6)下面描述中錯誤的是( )。
A.系統(tǒng)總體結(jié)構(gòu)圖支持軟件系統(tǒng)的詳細(xì)設(shè)計
B.軟件設(shè)計是將軟件需求轉(zhuǎn)換為軟件表示的過程
C.數(shù)據(jù)結(jié)構(gòu)與數(shù)據(jù)庫設(shè)計是軟件設(shè)計的任務(wù)之一
D.PAD圖是軟件詳細(xì)設(shè)計的表示工具
(7)負(fù)責(zé)數(shù)據(jù)庫中查詢操作的數(shù)據(jù)庫語言是( )。
A.數(shù)據(jù)定義語言
B.數(shù)據(jù)管理語言
C.數(shù)據(jù)操縱語言
D.數(shù)據(jù)控制語言
一個教師可講授多門課程,一門課程可由多個教師講授。則實體教師和課程間的聯(lián)系是( )。
A.1:1聯(lián)系
B.1:m聯(lián)系
C.m:1聯(lián)系
D.m:n聯(lián)系
(9)有三個關(guān)系R、S和T如下:

則由關(guān)系R和s得到關(guān)系T的操作是( )。
A.自然連接
B.并
C.交
D.差
(10)定義無符號整數(shù)類為UInt,下面可以作為類uInt實例化值的是( )。
A.-369
B.369
C.0.369
D.整數(shù)集合{1,2,3,4,5}(11)以下敘述中錯誤的是( )。
C程序在運行過程中所有計算都以二進(jìn)制方式進(jìn)行
B.c程序在運行過程中所有計算都以十進(jìn)制方式進(jìn)行
C.所有c程序都需要編譯鏈接無誤后才能運行
D.c程序中字符變量存放的是字符的ASCIl碼值
(12)以下關(guān)于c語言的敘述中正確的是( )。
A.C語言的數(shù)值常量中夾帶空格不影響常量值的正確表示
B.C語言中的變量可以在使用之前的任何位置進(jìn)行定義
C.在C語言算術(shù)表達(dá)式的書寫中,運算符兩側(cè)的運算數(shù)類型必須一致\
D.C語言中的注釋不可以夾在變量名或關(guān)鍵字的中間
(13)以下不合法的字符常量是( )。
A."、、"
B.’\”’
C.’\018’
D.\xcc"
(14)以下選項中正確的定義語句是( )。
A.double,a,b;
B.double a=b=7;
C.double a;b;
D.double a=7,b=7;
(15)若有定義語句:int a=3,b=2,c=1;以下選項中錯誤的賦值表達(dá)式是( )。
A.a=(b=4)=3;
B.a=b=c+1;
C.a=(b=4)+c;
D.a=1+(b=c=4);
(16)若有定義:int a,h;通過語句:scanf(”%d;%d”,&a,&B.;,能把整數(shù)3賦給變量a,5賦給變量b的輸入數(shù)據(jù)是( )。
A.3 5
B.3,5
C.3;5
D.35
(17)已知大寫字母A的ASCIl碼值是65,小寫字母a的ASCIl碼值是97。以下不能將變量C中的大寫字母轉(zhuǎn)換為對應(yīng)小寫字母的語句是( )。
A.C=(。A’+C.%26一"a"
B.c=c+32
C.c=c一"A"+"a"
D.c=(c一’A")%26+-a"
(18)在以下給出的表達(dá)式中,與while(E)中的(E)不等價的表達(dá)式是( )。

(19)以下程序段中,與語句:k=a>b?(b>c?1:O):0;功能相同的是( )。

(20)有以下程序:

程序運行后的輸出結(jié)果是( )。
A.9,18
B.8,11
C.7,11
D.10,14
(23)以下敘述中錯誤的是( )。。
A.C程序必須由一個或一個以上的函數(shù)組成
B.函數(shù)調(diào)用可以作為一個獨立的語句存在
C.NN數(shù)NNN值,必須通過return語句返回
D.函數(shù)形參的值也可以傳回給對應(yīng)的實參
(26)若有定義語句:int a[21[3],* P[3];則以下語句中正確的是( )。
A.p:a;
B.p[0]=a;
C.p[O]=&a[1][2];
D.1a[1]=&a;
一、選擇題
(1)A【解析】棧是先進(jìn)后出的數(shù)據(jù)結(jié)構(gòu),所以棧頂元素后入棧卻先被刪除。棧底元素先入棧卻旨除。所以選擇A。。
(2)C【解析】棧是先進(jìn)后出的數(shù)據(jù)結(jié)構(gòu),在整個過程中,棧底指針不變,入棧與出棧操作均由棧頂指針的變化來操作,所以選擇C。
(3)D【解析】根據(jù)二叉樹的基本性質(zhì)3:在任意一*二叉樹中,多為0的葉子結(jié)點總比度為2的結(jié)點多一個.所以本題中度為2的結(jié)點為1—1=0個,所以可以知道本題目中的二叉樹的每一個結(jié)點都有一個分支,所以共7個結(jié)點共7層,即度為7。
(4)A【懈析】軟件按功能可以分為:應(yīng)用軟件、系統(tǒng)軟件、支撐軟件。操作系統(tǒng)、編譯程序、匯編程序、網(wǎng)絡(luò)軟件、數(shù)據(jù)庫管理系統(tǒng)都屬于系統(tǒng)軟件。所以B、C、D都是系統(tǒng)軟件,只有A是應(yīng)用軟件。
(5)B【解析】1966年Boehm和Jaeopini證明了程序設(shè)計語言僅僅使用順序、選擇和重復(fù)三種基本控制結(jié)構(gòu)就足以表達(dá)出各種其他形式結(jié)構(gòu)的程序設(shè)計方法。
(6)A【解析】詳細(xì)設(shè)計的任務(wù)是為軟件結(jié)構(gòu)圖中而非總體結(jié)構(gòu)圖中的每一個模塊確定實現(xiàn)算法和局部數(shù)據(jù)結(jié)構(gòu),用某種選定的表達(dá)工具表示算法和數(shù)據(jù)結(jié)構(gòu)的細(xì)節(jié),所以A錯誤。
(7)C【解析】數(shù)據(jù)定義語言:負(fù)責(zé)數(shù)據(jù)的模式定義與數(shù)據(jù)的物理存取構(gòu)建;數(shù)據(jù)操縱語言:負(fù)責(zé)數(shù)據(jù)的操縱。包括查詢及增、刪、改等操作;數(shù)據(jù)控制語言:負(fù)責(zé)數(shù)據(jù)完整性、安全性的定義與檢查以及并發(fā)控制、故障恢復(fù)等功能。
(8)D【解析】因為一個教師可講授多門課程,而一門課程又能由多個老師講授所以他們之間是多對多的關(guān)系,可以表示為m:n。
(9)D【解析】關(guān)系T中的元組是關(guān)系R中有面關(guān)系s中沒有的元組的集合,即從關(guān)系R中除去與關(guān)系s中相同元組后得到的關(guān)系T。所以做的是差運算。
(10)B【解析】只有B選項369可以用無符號整敦來表示和存儲。A選項一369有負(fù)號,選項C 0.369是小數(shù)都不能用無符號整數(shù)類存儲。選項D是一個整數(shù)集合得用致組來存儲。
(11)B【解析】C程序在運行過程中的所有計算都以二進(jìn)制方式進(jìn)行,所以B選項錯誤。
(12)D【解析】C語言的數(shù)值常量中不能夾帶空格,所以A錯誤。C語言中的變量都必須先定義再使用,對變量的定義通常放在函數(shù)體內(nèi)的前部,但也可以放在函數(shù)外部或復(fù)合語句的開頭。不能隨便放置,所以8錯誤。在C語言中運算符兩側(cè)的運算數(shù)據(jù)類型可以不一致,且結(jié)果與精度較高的保持一致,所以C錯誤。
(13)C【解析】轉(zhuǎn)義字符中,八進(jìn)制的表示形式為\ddd,
但是八進(jìn)制中不能包含數(shù)字8,所以c選項不合法。
(14)D【解析】A選項中變量類型符doub1e后面不能有逗號。B選項中變量b不能先使用再定義,應(yīng)該寫成選項D中的格式。C選項中變量a后面應(yīng)該是逗號而不是分號。
(15)A【解析】不能將變量或常量賦給一個表達(dá)式,所以A選項中(b=4)=3是錯誤的。
(16)C【解析】輸入數(shù)據(jù)的格式必須與seanf()的格式控制串完全匹配,所以輸入時必須在3和5之間輸入“;”。
(17)A【解析】根據(jù)題意可知,小寫字母比與之對應(yīng)的大寫字母的ASCⅡ碼大32。A選項中字符A加上c表示的大寫字符再對字母個數(shù)26取余,本身這個表達(dá)式?jīng)]有任何含義,所以選擇A選項。
(18)B【解析】whi1e語句中條件表達(dá)式E的值不為0即為真,認(rèn)為滿足條件,所以與B選項中表達(dá)式的含義正好相反,選擇B選項。
(19)B【解析】條件表達(dá)式的含義是,如果表達(dá)式1成立,結(jié)果為表達(dá)式2的值,如果不成立為表達(dá)式3的值。所以題干中k的值這樣取值:如果a>b且b>c,k值結(jié)果為1,如果a>b,且bb與b>c中只要有一個條件不成立,k的值就為0,所以選擇B選項。
(20)D【解析】第循環(huán)a的值為1,滿足條件,執(zhí)行b+=a,與a+=2,則b的值變?yōu)?,a的值變?yōu)?。執(zhí)行8++,a的值為4,滿足條件進(jìn)入第二次循環(huán),執(zhí)行完循環(huán)體后b的值為7,a的值為6。執(zhí)行a++,a的值為7,滿足條件進(jìn)入第三次循環(huán),執(zhí)行完循環(huán)體后b的值為14,a的值為9。執(zhí)行a++,a的值變?yōu)?0,不滿足條件,循環(huán)結(jié)束。所以選擇D選項?!?BR>