



版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、一、選擇題 (1) (10) 每小題 2 分,(11) (50) 每小題 1 分,共 60 分 )下列各題 A) 、B)、C)、D) 四個(gè)選項(xiàng)中,只有一個(gè)選項(xiàng)是正確的,請(qǐng)將正確的選項(xiàng)涂寫在答題卡相應(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)線性結(jié)構(gòu)和非線性結(jié)構(gòu)D) 內(nèi)部結(jié)構(gòu)和外部結(jié)構(gòu)答案: C評(píng)析:邏輯結(jié)構(gòu)反映數(shù)據(jù)元素之間的邏輯關(guān)系,線性結(jié)構(gòu)表示數(shù)據(jù)元素之間一對(duì)一的關(guān)系,非線性結(jié)構(gòu)表示數(shù)據(jù)元素之間一對(duì)多或多對(duì)一的關(guān)系。(2) 若進(jìn)棧序列為l,2 ,3,4,進(jìn)棧過程中可以出棧,則下列不可能的一個(gè)出棧序列是。A)1
2、,4,3,2B)2, 3,4 , lC)3,1, 4, 2D)3 ,4, 2,1答案:C評(píng)析:棧是一種后進(jìn)先出表,選項(xiàng)c 中,先出棧的是3 ,說明此時(shí)棧內(nèi)必然有先于 2 進(jìn)棧,所以l 不可能在2 之前出棧,故選項(xiàng)C 這種出棧序列是不可能的。1,2,由于l(3) 排序方法中,將整個(gè)無序序列分割成若干小的子序列并分別進(jìn)行插入排序的方法,稱為。A)希爾排序B)冒泡排序C)插入排序D)選擇排序答案: A評(píng)析:希爾排序法的基本思想是:將整個(gè)無序序列分割成若干小的子序列分別進(jìn)行插入排序。(4) 在順序表 (3,6 ,8 ,10,12, 15 ,16,18, 21,25,30) 中,用二分法查找關(guān)鍵碼值11
3、,所需的關(guān)鍵碼比較次數(shù)為。A)2B)3C)4D)5答案:C評(píng)析:二分法查找是用關(guān)鍵碼與線性表的中間元素比較, 然后根據(jù)比較結(jié)果來判斷是結(jié)束查找,還是在左邊或者右邊子表按相同的方法繼續(xù)查找。本題中,與 ll 比較的關(guān)鍵碼分別為15, 8, 10 ,12 四個(gè)。(5) 對(duì)于 n 個(gè)結(jié)點(diǎn)的單向鏈表(無表頭結(jié)點(diǎn) ),需要指針單元的個(gè)數(shù)至少為。A)n-1B)nC)n+lD)2n答案: C評(píng)析:在 n 個(gè)結(jié)點(diǎn)的單向鏈表 (無表頭結(jié)點(diǎn) )中,每個(gè)結(jié)點(diǎn)都有一個(gè)指針單元 (即指針域 ),加上頭指針,至少需要 n+1 個(gè)指針單元。(6) 在軟件開發(fā)過程中,軟件結(jié)構(gòu)設(shè)計(jì)是描述。A)數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)B)軟件體系結(jié)構(gòu)C)軟
4、件結(jié)構(gòu)測(cè)試D)軟件控制過程答案:B評(píng)析:從工程管理角度來看,軟件設(shè)計(jì)分兩步完成:概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)。概要設(shè)計(jì) (又稱結(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 類內(nèi)聚中,具有最強(qiáng)內(nèi)聚的一類是。A)順序性內(nèi)聚B)過程性內(nèi)聚C)邏輯性內(nèi)聚D)功能性內(nèi)聚答案:D評(píng)析:內(nèi)聚性是一個(gè)模塊內(nèi)部各元素間彼此結(jié)合的緊密程度的度量。內(nèi)聚共有 7 類,它們之間的內(nèi)聚性由弱到強(qiáng)排列順序?yàn)椋?偶然內(nèi)聚、 邏輯內(nèi)聚、 時(shí)間內(nèi)聚、 過程內(nèi)聚、 通信內(nèi)聚、順序內(nèi)聚和功能內(nèi)聚。(8) 數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)流都是,僅僅是所處的
5、狀態(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)算的集
6、合。 它的基本操作是并、交、差、笛卡爾積,另外還包垂直分割 (投影 )、水平分割 (選擇 )、關(guān)系的結(jié)合 (連接 )等。(11)能將高級(jí)語(yǔ)言程序轉(zhuǎn)換成目標(biāo)語(yǔ)言程序的是。A)調(diào)試程序B)解釋程序C)編譯程序D)編輯程序答案:C評(píng)析:用高級(jí)語(yǔ)言編寫的程序稱為“源程序 ”,而計(jì)算機(jī)只能識(shí)別和執(zhí)行由0 和 l 組成的二進(jìn)制指令,所以高級(jí)語(yǔ)言必須先用一種稱為“編譯程序 ”的軟件,把源程序翻譯成二進(jìn)制形式的“目標(biāo)程序 ”。(12) _是構(gòu)成 c 語(yǔ)言程序的基本單位。A)函數(shù)B)過程C)子程序D)子例程答案: A評(píng)析:c 程序是由函數(shù)構(gòu)成的。 一個(gè)函數(shù)和若干個(gè)其他函數(shù),因此,函數(shù)是c 源程序至少包含一個(gè)c
7、程序的基本單位。main函數(shù),也可以包含一個(gè)main(13)可以在C 語(yǔ)言中用做用戶標(biāo)識(shí)符的是。A)voidB)as_b3C)forD)2cdefine_123-abcDoWORDIfcasSIG答案:B評(píng)析: c 語(yǔ)言規(guī)定,標(biāo)識(shí)符只能由字母、數(shù)字和下劃線三種符號(hào)組成,而且第一個(gè)字符必須是字母或下劃線。 另外還需要注意的是關(guān)鍵字不能作標(biāo)識(shí)符。 選項(xiàng) A 中 void ,C 中關(guān)鍵字, D 中 2c 以字母開頭。for都為(14)若有以下類型說明語(yǔ)句:char w ; int x ; float y , z;則表達(dá)式w*x+z-y的結(jié)果為類型。A)floatB)charC)intD)double
8、答案:A評(píng)析: 在進(jìn)行運(yùn)算時(shí),不同類型的數(shù)據(jù)參加運(yùn)算,需要先將其轉(zhuǎn)換成同一類型的數(shù)據(jù),然后再進(jìn)行運(yùn)算。轉(zhuǎn)換的順序由低到高為:char , short int unsigned long double float ,故結(jié)果為 float 型。(15)main()float x=123A56;printf( -5“n ” ,x);以上程序輸出的結(jié)果是。A)123 4B)123 5C)123 45D)123 46答案: D評(píng)析: f 格式符,用來輸出實(shí)數(shù),以小數(shù)形式輸出。 “ -m nf ”的含義是:輸出數(shù)據(jù)共占 m 列,其中 n 位小數(shù),如果輸出位數(shù)小于 m 。則右端補(bǔ)空格。如果總長(zhǎng)度大于列數(shù),則
9、按實(shí)際情況四舍五入輸出。(16)下面語(yǔ)句的輸出結(jié)果是。Printf( d“ n ” ,strlen( t ”“ 065 xff n ”;)A)14B)8C)5D)輸出項(xiàng)不合法,無正常輸出答案: C評(píng)析:在 c 語(yǔ)言中,以 “ ”開頭的字符均為轉(zhuǎn)義字符,其中 “ ”后可跟 l 3 位八進(jìn)制數(shù)或在“ ”后跟字母 x 及 l 2 位十六進(jìn)制數(shù),以此來代表一個(gè)特定的字符。(17)下列程序的輸出結(jié)果是。main()int a=0 , b=0 , c=0 ;if(+a0lI+b0)+c;printf(na=“ d , b= d, c= d ”, a,b , C);A)a=0,b=0, c=0B)a=l ,
10、 b=l,c=1C)a=l,b=O, c=ID)a=0, b=1 c=1答案:C評(píng)析:“ ”是或運(yùn)算,它有個(gè) “短路 ”的特點(diǎn)需特別注意,當(dāng) “ ”運(yùn)算符左邊的表達(dá)式的值為真時(shí),則程序就不再對(duì) “ ”右邊的表達(dá)式的值進(jìn)行運(yùn)算, 而是使得整個(gè)表達(dá)式的值直接為真。(18)下列程序的輸出結(jié)果是。Main()int i ;for(i=1 ; i+l ; i+) if(i4)printlf( d ”,i+)”; break ;printf( d“”,i+) ;A)55B)56C)程序錯(cuò)誤,沒有輸出D)循環(huán)條件永遠(yuǎn)為真,死循環(huán)答案: B評(píng)析:本程序中有個(gè) for 循環(huán),但注意到 for 循環(huán)的條件是 “i
11、+l,”也就是只要 i+l 的值為真 (非零值均為真 ),就執(zhí)行循環(huán)。當(dāng) i=l 的時(shí), i+l 的值為真,判斷 if 條件不成立,執(zhí)行 i+ ,輸出 i 的值為 5。(19)下列程序的輸出結(jié)果是。#define A 100main()int i=O,sum=O;doif(I=(i 2)*2)continue ;sum+=i ;while(+iA);printf(d“n ” ,sum);A)2500B)2050C)4D)O答案: A評(píng)析:本題程序的功能是求 1 到_99 之問 (包括 1 和 99) 所有奇數(shù)之和。程序中的 while 循環(huán)的終止條件為 +i=100 ,在 while 循環(huán)體內(nèi)
12、,如果 i 是偶數(shù),則執(zhí)行 continue ,跳過這一次循環(huán),執(zhí)行下一次循環(huán),否則求和。最后輸出的值是1 到 99 之間 (包括 l 和 99) 所有奇數(shù)之和(1+99)*50 2=2500 。(20)下列程序的輸出結(jié)果是。main()int I=3 ;switch(i) case 1 :case 2 : printf( d”, i) ;case 3 :case 4 : break ;default : printf(”;OK”)A)0B)3C)OKD)沒有任何輸出答案: D評(píng)析:在題中, i 的值為 3,由于 “case :3”后面沒有 break 語(yǔ)句,所以繼續(xù)向下執(zhí)行 “case :4
13、”后面的語(yǔ)句,由于 “case 4:”后面的語(yǔ)句為 break 強(qiáng)行退出 switch 語(yǔ)句,所以,本題沒有任何輸出。(21)下列程序執(zhí)行后的輸出結(jié)果是。main()int m3=1,4,7,2,5,8,3,6,9;int i , k=2 :for(I=0 ; i3 ; i+)printf( d”,mki) ; A)456B)258C)369D)789答案:C評(píng)析:根據(jù)二維數(shù)組的定義得出:m12=8 ,m20=3 ,m2l=6mOO=1 ,m22=9,mO1=4 ,mO2=7 ,m10=2 ,rail1=5,所以本題的輸出是第3 行的值 m20 ,m21,m22,即369。(22)設(shè)已定義洱口
14、k 為 int 類型變量,則以下for 循環(huán)語(yǔ)句。for(i=0 ; k=-1 , k=1 ; i+ , k+)printf(”*n”);A)判斷循環(huán)結(jié)束的條件不合法B)是無限循環(huán)C)循環(huán)一次也不執(zhí)行D) 循環(huán)只執(zhí)行一次答案: B評(píng)析:本題定義了一個(gè) for 循環(huán),循環(huán)變量是 i,但由于本題并沒有設(shè)置循環(huán)條件,所以循環(huán)的條件永遠(yuǎn)默認(rèn)為真,即無限次執(zhí)行循環(huán)。(23)下面程序的輸出結(jié)果是。unsigned fun(unsigned num) unsigned k=1 ;dok*=num lO ;num =lO ;while(num) ;return(k) ;main()unsigned n 。 2
15、6 ;printf(d”n ” ,fun(n);A)0B)4C)12D)無限次循環(huán)答案: C評(píng)析:本題定義了一個(gè)fun 函數(shù),用于num 求和,具體執(zhí)行過程如下: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 lO=O ;num=O :while 條件不成立,所以返回k 的值 12(24)已知字母A 的 ASCII 碼值是 65 ,字母 a 的 ASCII 碼值是 97,以下程序。main()char a=; Aint b=20 ;pri
16、ntf(d“, o ”,(a=a+a,a+b,b),a+ -a,Ab);A)表達(dá)式非法,輸出零或不確定值B)因輸出項(xiàng)過多,無輸出或輸出不確定值C)輸出結(jié)果為20,141D)輸出結(jié)果為20,141,20答案: C評(píng)析:本題中首先輸出逗號(hào)表達(dá)式“a=a+a,a+b , b”的值,即20。然后以八進(jìn)制的形式輸出 a+a-的A值為 97 對(duì)應(yīng)的八進(jìn)制數(shù)141 ,由于最后一個(gè)表達(dá)式b 沒有對(duì)應(yīng)輸出格式的輸出項(xiàng)表列就不會(huì)輸出。(25)C 語(yǔ)言函數(shù)返回值的類型是由決定的。A)return語(yǔ)句中的表達(dá)式類型B)調(diào)用函數(shù)的主調(diào)函數(shù)類型C)調(diào)用函數(shù)時(shí)臨時(shí)D) 定義函數(shù)時(shí)所指定的函數(shù)類型答案: D評(píng)析:函數(shù)值的類型
17、應(yīng)當(dāng)是在定義函數(shù)時(shí)指定的。 在定義函數(shù)時(shí)對(duì)函數(shù)值說明的類型一般應(yīng)該和 return 語(yǔ)句中的表達(dá)式類型一致,如果不 _致,則以函數(shù)類型為準(zhǔn),即函數(shù)類型決定返回值的類型。(26)下列程序執(zhí)行后輸出的結(jié)果是。int d=l :fun(int p)int d 。 5;d+=p+;printf(d”, ”, d) ;main()int a=3 ;fun(a) ;d+=a+:printf(d”n ”, d) ;A)8 , 12B)9, 13C)8,4D)9,5答案: C評(píng)析:本題執(zhí)行過程如下:首先調(diào)用fun 函數(shù),使得實(shí)參a 的值 3 傳遞給形參p ,得到局部變量 d=8 ,打印出局部變量 d 的值 8
18、;返回主函數(shù)執(zhí)行 “d+=a+”,此處的 d 為全局變量,所以 d=1+3=4( 由于本題是值傳遞, 所以在函數(shù) fun 中對(duì) p 值的改變并不能引起 a 的改變 ),故本題的輸出是8,4。(27)已知下面的程序段,正確的判斷是。#define A 3#define B(A)(_A+1) a)int a=3 :X=3*(A+B(7) ;A)程序錯(cuò)誤,不允許嵌套定義B)X=93C)X=8lD) 程序錯(cuò)誤,宏定義不允許有參數(shù)答案: C評(píng)析:本題的宏定義是合法的,宏定義展開為3*(3+(A+1)*a)=3*(3+(7+1)*3)=81。(28)定義 int*swap() 指的是。A)一個(gè)返回整型值的
19、函數(shù)swap()B)一個(gè)返回指向整型值指針的函數(shù)swap()C)一個(gè)指向函數(shù)swap() 的指針,函數(shù)返回一個(gè)整型值D)以上說法均錯(cuò)答案: B評(píng)析:一個(gè)函數(shù)可以帶回一個(gè)整型值、字符值、實(shí)型值等,但也可以帶回指針型數(shù)據(jù),即地址。本題的定義中, 包括括號(hào)和 號(hào),由于 f) 優(yōu)先級(jí)高于t。故它是一個(gè)返回整型指針的函數(shù)。(29)以下程序段的輸出結(jié)果是。main() char s110 , s210 ,s310 ;scanf( ”s”,s1); gets(s2) ; gets(s3) ;puts(s 1) ;puts(s2) ; puts(s3) ;輸入數(shù)據(jù)如下:(此處代表回車符)aaabbbA)aaa
20、B)aaaC)aaa 0bbb 0D)aaabbbbbbbbb答案: B評(píng)析: scanf 是標(biāo)準(zhǔn)輸入函數(shù), 在輸入字符串 aaa 時(shí),實(shí)際的內(nèi)容為 “aaa0”,“ 0”是由系統(tǒng)自動(dòng)加入的; gets 的功能是從終端讀入一行字符,即一直讀到換行符為止,并由系統(tǒng)自動(dòng)以“ 0”代替換行符。(30)下述函數(shù)功能是。Int fun(char*x)char*y=x ;while(*y+);return y-x-l ;A)求字符串的長(zhǎng)度B) 求字符串存放的位置C)比較兩個(gè)字符串的大小D) 將字符串 x 連接到字符串y 后面答案: A評(píng)析:在函數(shù)體內(nèi)定義一字符型指針并指向形參,然后遍歷其中各字符直到NUL
21、L ,最后返回字符串首尾地址的差值,即字符串的長(zhǎng)度。(31)以下程序的輸出結(jié)果是。main() char str12= s ;, t , r , i , n , g printf(d”n ” ,strlen(str);A)6B)7C)llD)12答案: A評(píng)析:在c 語(yǔ)言中,字符串的長(zhǎng)度是其首字符到NULL( 不含 )字符的總字符個(gè)數(shù)。本題定義字符數(shù)組str 的同時(shí),對(duì)第7 個(gè)元素,由系統(tǒng)自動(dòng)添加上“ 0”,故字符串的長(zhǎng)度為6。(32)請(qǐng)讀程序段:char str=” ABCD”; ,*p=strprintf(d”n ”, *(p+4) ;程序段的輸出結(jié)果是。A)68B)0C)字符 的D地址D
22、)不確定的值答案: B評(píng)析:在對(duì)字符數(shù)組賦字符串值時(shí),系統(tǒng)會(huì)自動(dòng)在字符串的末尾加上一個(gè)字符串結(jié)束標(biāo)志“0 ”,故指向字符數(shù)組的指針 p 的 +(p+4) 的值為 “ 0 ”。由于 “0 ”的編碼值就是 0 ,所以本題輸出為 0。(33)若有定義: int a410 ;,則以下選項(xiàng)中對(duì)數(shù)組元素aij 引用錯(cuò)誤的是。(0=i4 , 0=js2 ,則返回個(gè)正數(shù);如果 sls2,所以函數(shù)的值為正數(shù)。(36)下面程序的輸出是。char s=” ;ABcD ”main()char*p ;for(p=s ;ps+4 ; p+)printf( s” n ”, p) ;A)ABCDB)AC)DD)ABCDBCD
23、BCABCCDCBABDDAA答案: A評(píng)析:在第一次執(zhí)行for 循環(huán)時(shí),字符數(shù)組的首地址賦給了指針變量p,使得指針變量p 指向了 s 的首地址,輸出p 所指向的字符串;第二次執(zhí)行for 循環(huán)時(shí), p 值增加 1 ,p 指向了s 的第二個(gè)元素輸出 BCD;第三次輸出 CD;第四次輸出 D;直到 p 指向字符串的結(jié)束字符 “ 0 ”, for 循環(huán)終止執(zhí)行。(37)以下程序輸出的結(jié)果為。main()char* alpha6=“, EFGHABCD”, ” IJKL, ”MNOP,” QRST,” UVwX;”char*p ;int i :p=alpha ;for(I=0 ; i=0 ; i,i)
24、printf(c“” ,*pi);printf(n”;)A)SOB)SPC)SPOPKD)SHOB答案: A評(píng)析: p0 存放的是 “BOOL 0”的首地址; p1 存放的是 “OPK 0”的首址等。在 printf 語(yǔ)句中輸出的么輸出的第一個(gè)字符為+pI 表示 pi 字符串的第一個(gè)字符。在“s,”接著兩次i,則輸出的值為+p1for 循環(huán)中, i 的初值為3,那,即字符 “0,”所以本題的輸出為 SO。(39)以下程序的輸出結(jié)果是。#includevoid prt(int*x,int*y,int*z)printf( d”, d, d n ”, +*x , +*y*(z+); int a=10
25、,b=40,c=20;main()prt(&a , &b&C);prt(&a ,&b , &C) ;A)ll,42,3lB)ll,41,20C)1l,21,40D)11,41 , 2l12,22,4112,42,2011,2l,4112,42,22答案: B評(píng)析: 由于實(shí)參傳送的是變量的地址,所以對(duì)形參指針?biāo)赶虻膯卧獌?nèi)容的改變,即對(duì)實(shí)參內(nèi)容的改變。(40)若一個(gè)外部變量的定義形式為static int x ;,那么,其中static 的作用應(yīng)該是。A)將變量存儲(chǔ)在靜態(tài)存儲(chǔ)區(qū)B)使變量 x 可以由系統(tǒng)自動(dòng)初始化C)使 x 只能在本文件內(nèi)引用D)使 x 的值可以永久保留答案: C評(píng)析:事實(shí)上,無
26、論有無 static 修飾,外部變量都具有 A、B 和 c 三種特性。作為一種修飾, static 僅是限制此類型外部變量的引用范圍:只能在定義它的文件范圍內(nèi)使用。(41)以下程序的輸出結(jié)果是。#include#define SQR(x)x*xmain()int a ,k=3 ;a=+SQR(k+1);pri ntf( ”d n ”, a);A)8B)9C)17D)20答案: B評(píng)析:本題宏替換中遇到形參x 以實(shí)參 k+l 代替,其它字符不變。 sQR(k+1) 展開后應(yīng)為字符串 k+l*k+l 。(42)下面是對(duì)宏定義的描述,不正確的是。A)宏不存在類型問題,宏名無類型,它的參數(shù)也無類型B)
27、宏替換不占用運(yùn)行時(shí)間C)宏替換時(shí)先求出實(shí)參表達(dá)式的值,然后代入形參運(yùn)算求值D)宏替換只不過是字符替代而已答案: C評(píng)析:宏替換實(shí)質(zhì)上就是字符替代,它不可能進(jìn)行計(jì)算,故 c 錯(cuò)誤。帶參數(shù)的宏與函數(shù)相比,宏在程序編譯之前已經(jīng)將代碼替換到程序內(nèi),執(zhí)行時(shí)不會(huì)產(chǎn)生類似于函數(shù)調(diào)用的問題,可以說不占用運(yùn)行時(shí)間。(43)以下程序 (程序左邊的數(shù)字為附加的行號(hào))。1#include2#include3main()4char s=”;string”5 puts(s) ;6 strcpy(s,”;hello ”)7 printf( 3s” n ”,s);A)沒有錯(cuò)B) 第 l 行有錯(cuò)C)第 6 行有錯(cuò)D)第 7 行
28、有錯(cuò)答案: B評(píng)析:字符串復(fù)制函數(shù)strcpy 包含在頭文件string h 中,因此,程序中的第l 行文件包含命令是錯(cuò)誤的。(44)若有如下說明,則的敘述是正確的。struct stint a ;int b2l ;a;A)結(jié)構(gòu)體變量a 與結(jié)構(gòu)體成員a 同名,定義是非法的B)程序只在執(zhí)行到該定義時(shí)才為結(jié)構(gòu)體st 分配存儲(chǔ)單元C)程序運(yùn)行時(shí)為結(jié)構(gòu)體st 分配 6 個(gè)字節(jié)存儲(chǔ)單元D)類型名 struct st可以通過 extern 關(guān)鍵字提前引用(即引用在前,說明在后)答案: D評(píng)析:結(jié)構(gòu)體變量a 與結(jié)構(gòu)體成員a 同名是合法的定義,引用成員a 的方法是aa,變量a 處于不同的 “層次 ”上,系統(tǒng)完
29、全能夠分清。st 是一個(gè)結(jié)構(gòu)體名,不會(huì)為結(jié)構(gòu)體名分配存儲(chǔ)空間, 應(yīng)該是在運(yùn)行時(shí)為結(jié)構(gòu)體變量a 分配 6 個(gè)字節(jié)的存儲(chǔ)單元,故選項(xiàng) B 和選項(xiàng) C 錯(cuò)誤。(45)若有以下結(jié)構(gòu)體定義,則是正確的引用或定義。struct exampleint x ;int y ;v1;A)example x=10B)example v2 x=10C)struct v2 ; v2x=lOD)struct example v2=10;答案:D評(píng)析:在定義結(jié)構(gòu)體變量時(shí),不能只用結(jié)構(gòu)體名example 或關(guān)鍵字要用結(jié)構(gòu)體類型名struct example定義,在引用結(jié)構(gòu)體成員變量時(shí),行引用,所以選D。strum 進(jìn)行定義,
30、必需需要用結(jié)構(gòu)體變量名進(jìn)(46)下列程序的執(zhí)行結(jié)果是。#includeunion unint i ;char c21 ;void main() union un x ;x c0=10 :x c1=1 :printf(n“ d ”,xi);A)266B)llC)265D)138答案:A評(píng)析:由于本題定義的是共用體,存儲(chǔ)單元,且此存儲(chǔ)單元為2的值為 266 。所以成員表列中的整型變量 x 與字符數(shù)組 c 共占用同一個(gè)個(gè)字節(jié),通常 cO 位于低字節(jié), c1 位于高字節(jié),所以 x i(47)已知形成鏈表的存儲(chǔ)結(jié)構(gòu)如下圖所示,則下述類型描述中的空白處應(yīng)填。struct linkDatanextchar
31、data ;_node ;A)struct link nextB)link*nextC)struct next linkD)struct link*next答案: D評(píng)析: 在單向鏈表中, 由于每個(gè)結(jié)點(diǎn)需要存儲(chǔ)下一個(gè)結(jié)點(diǎn)的地址,且下一個(gè)結(jié)點(diǎn)的數(shù)據(jù)類型與前一個(gè)結(jié)點(diǎn)的數(shù)據(jù)類型完全相同,故應(yīng)為struct link*next。(48)已知小寫字母a 的 ASCII 碼為 97,大寫字母A 的 ASCII碼為 65,以下程序的結(jié)果是。main()unsigned int a=32,b=66;printf(c“ n ” ,atb);A)66B)98C)bD)B答案: C評(píng)析:位運(yùn)算符“的l”作用是按位或
32、,即兩個(gè)二進(jìn)制數(shù)的相應(yīng)位中只要有一個(gè)為1,該位的結(jié)果值為 l。最后以字符型輸出,98 對(duì)應(yīng)的字符 “b?!?49)C 語(yǔ)言庫(kù)函數(shù)龜ets(str,n,fp) 的功能是。A)從 fp 指向的文件中讀取長(zhǎng)度n 的字符串存入str 指向的內(nèi)存B)從 fp 指向的文件中讀取長(zhǎng)度不超過n-l 的字符串存入str 指向的內(nèi)存C)從 fp 指向的文件中讀取n 個(gè)字符串存 Xstr 指向的內(nèi)存D)從 str 讀取至多n 個(gè)字符到文件fp答案: B評(píng)析: fgets 函數(shù)的作用是從指定的文件讀入一個(gè)字符串。fgets(str,n,fp) ;中的n 為要求得到的字符的個(gè)數(shù),但只從 fb 指向的文件輸入 n-1 個(gè)
33、字符,然后在最后加一個(gè) O字符,因此得到的字符串共有 n 個(gè)字符。(50)下述程序向文件輸出的結(jié)果是。#includevoid main()FILE*fp=fopen(“ TEST;” , ” wb ”)fprintf(fp, d 5” 0f c d ” ,58,76273 0, -,2278) ;fclose(fp) ;A)58 76273-2278B)5876273 。 000000-2278C)5876273-2278D) 因文件為二進(jìn)制文件而不可讀答案: C評(píng)析: fprintf函數(shù)工作時(shí),多個(gè)數(shù)據(jù)間不會(huì)自動(dòng)加分隔符,選項(xiàng)A 錯(cuò)誤;浮點(diǎn)數(shù)的輸出格式是 “ 5 0f ”表明其小數(shù)部分輸出
34、O 位,即沒有輸出,所以選項(xiàng)B 也是錯(cuò)誤的。二、填空題 (每空 2 分,共 40 分 )請(qǐng)將每空的正確答案寫在【l】至【 20】序號(hào)的橫線上,答在試卷上不得分。(1) 對(duì)于長(zhǎng)度為n 的順序存儲(chǔ)的線性表, 當(dāng)隨機(jī)插入和刪除一個(gè)元素時(shí),需平均移動(dòng)元素的個(gè)數(shù)為【l】。答案:【 1】 n 2評(píng)析:刪除一個(gè)元素,平均移動(dòng)的元素個(gè)數(shù)為(n-l+n- 2+0)n=(n -1) 2;插入一個(gè)元素,平均移動(dòng)元素個(gè)數(shù)為(n+n-l+n-2+1)n=(n+1) 2;所以總體平均移動(dòng)元素個(gè)數(shù)為n2 。(2) 注釋說明了程序的功能,它分為 【 2】 注釋和功能性注釋。答案:【 2】序言性評(píng)析:注釋一般分為序言性注釋和功
35、能性注釋。(3) 軟件測(cè)試中路徑覆蓋測(cè)試是整個(gè)測(cè)試的基礎(chǔ),它是對(duì)軟件【 3 】進(jìn)行測(cè)試。答案:【 3】結(jié)構(gòu)評(píng)析: 路徑測(cè)試是白盒測(cè)試方法中的一種,它要求對(duì)程序中的每條路徑最少檢查一次,目的是對(duì)軟件的結(jié)構(gòu)進(jìn)行測(cè)試。(4) 數(shù)據(jù)庫(kù)技術(shù)的主要特點(diǎn)為數(shù)據(jù)的集成性、數(shù)據(jù)的高【 4 】和低冗余性、數(shù)據(jù)獨(dú)立性和數(shù)據(jù)統(tǒng)一管理與控制。答案:【 4】共享性評(píng)析:數(shù)據(jù)庫(kù)技術(shù)的主要特點(diǎn)有以下幾個(gè)方面: 數(shù)據(jù)的集成性, 數(shù)據(jù)的高共享性與低冗余性,數(shù)據(jù)韻獨(dú)立性,數(shù)據(jù)統(tǒng)一管理與控制。(5) 數(shù)據(jù)元素之間 【 5】 的整體稱為邏輯結(jié)構(gòu)。答案:【 5】邏輯關(guān)系評(píng)析:數(shù)據(jù)元素之間邏輯關(guān)系的整體稱為邏輯結(jié)構(gòu)。數(shù)據(jù)的邏輯結(jié)構(gòu)就是數(shù)據(jù)
36、的組織形式。(6) 若有定義int m=5,y=2,則執(zhí)行表達(dá)式y(tǒng)+=y-=m*=y后, y 的值為【 6】。答案:【 6】 16評(píng)析:將賦值運(yùn)算符右側(cè)的 “表達(dá)式 ”的值賦給左側(cè)的變量,并且賦值運(yùn)算符按照 “白右而左 ” 的 結(jié) 合 順 序 , 本 題 表達(dá) 式 應(yīng) 先 算 m 的 值 為 10 , 再 運(yùn) 算 y 的 值 為 8 , 最 后 計(jì) 算 y=y+(-8)=-8+(-8)=-16 。(7) 若 x 和 y 都是 double 型變量, ix 的初值為 3 0, y 的初值為 2 0,則表達(dá)式 pow(y ,fabs(x) 的值為【 7】。答案:【 7】 8 000000評(píng)析:fa
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度離職員工保密協(xié)議及競(jìng)業(yè)限制合同簽訂流程規(guī)范
- 二零二五年度知識(shí)產(chǎn)權(quán)保護(hù)合伙人合作協(xié)議范本
- 法律實(shí)務(wù)案例分析題及法律理論應(yīng)用題卷
- 共享平臺(tái)合作協(xié)議知識(shí)產(chǎn)權(quán)合作開發(fā)協(xié)議
- 高峰會(huì)議交流與合作備忘錄
- 油漆勞務(wù)合同油漆工用工合同
- 基于大數(shù)據(jù)的農(nóng)業(yè)現(xiàn)代化種植管理系統(tǒng)開發(fā)實(shí)踐
- 企業(yè)形象策劃及活動(dòng)推廣合作協(xié)議
- 精紡織品采購(gòu)合同
- 高一英語(yǔ)動(dòng)詞時(shí)態(tài)對(duì)照分析教案
- 2024水利五大員知識(shí)題庫(kù)及答案
- TCARM 002-2023 康復(fù)醫(yī)院建設(shè)標(biāo)準(zhǔn)
- 部編版一年級(jí)語(yǔ)文下冊(cè)全冊(cè)教案表格(教學(xué)反思二次備課)
- 智能制造概論(高職)全套教學(xué)課件
- 點(diǎn)亮生命-大學(xué)生職業(yè)生涯發(fā)展與就業(yè)指導(dǎo)全套教學(xué)課件
- 特殊作業(yè)現(xiàn)場(chǎng)監(jiān)護(hù)人安全培訓(xùn)課件
- 《會(huì)計(jì)發(fā)展史》課件
- 無人駕駛系統(tǒng)與智能車輛應(yīng)用技術(shù)實(shí)訓(xùn)教程
- 幼兒同伴關(guān)系對(duì)幼兒社會(huì)性發(fā)展的研究開題報(bào)告
- 學(xué)校食堂膳食營(yíng)養(yǎng)培訓(xùn)課件
- 環(huán)境修復(fù)原理與技術(shù)-第5章-污染環(huán)境的植物修復(fù)原理
評(píng)論
0/150
提交評(píng)論