十套模擬試題詳細答案及解析_第1頁
十套模擬試題詳細答案及解析_第2頁
十套模擬試題詳細答案及解析_第3頁
免費預覽已結束,剩余8頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、第十一套模擬試題參考答案及解析1. 算法的設計可以避開具體的計算機程序設計語言, 但算法的實現(xiàn)必須借助程序設計語 言中提供的數(shù)據(jù)類型及其算法。 數(shù)據(jù)結構和算法是計算機科學的兩個重要支柱。 它們是一個 不可分割的整體。 算法在運行過程中需輔助存儲空間的大小稱為算法的空間復雜度。 算法的 有窮性是指一個算法必須在執(zhí)行有限的步驟以后結束。本題答案為 C。2. 所謂完全二叉樹是指除最后一層外, 每一層上的結點數(shù)均達到最大值; 在最后一層上 只缺少右邊的若干結點。具有 n 個結點的完全二叉樹,其父結點數(shù)為 int(n/2) ,而葉子結點數(shù)等于總結點數(shù)減去父結點數(shù)。本題n=699,故父結點數(shù)等于int(6

2、99/2)=349,葉子結點數(shù)等于 699-349=350。本題答案是 B。3. 要形成良好的程序設計風格, 主要應注重和考慮下述一些因素: 符號名的命名應具有 一定的實際含義, 以便于對程序功能的理解; 正確的注釋能夠幫助讀者理解程序; 程序編寫 應優(yōu)先考慮清晰性,除非對效率有特殊要求,程序編寫要做到清晰第一,效率第二。本題答案為 A。4. 關系數(shù)據(jù)庫管理系統(tǒng)能實現(xiàn)的專門關系運算,包括選擇運算、投影運算、連接運算。 本題答案為 B。5. 確認測試的任務是驗證軟件的功能和性能及其他特性是否滿足了需求規(guī)格說明中的 確定的各種需求,以及軟件配置是否完全、正確。本題答案為 A。6. 數(shù)據(jù)庫概念設計的

3、過程中,視圖設計一般有三種設計次序,它們是:1 、自頂向下。這種方法是先從抽象級別高且普遍性強的對象開始逐步細化、具體化與 特殊化。2 、由底向上。這種設計方法是先從具體的對象開始,逐步抽象,普遍化與一般化,最 后形成一個完整的視圖設計。3 、由內(nèi)向外。這種設計方法是先從最基本與最明顯的對象著手逐步擴充至非基本、不 明顯的其它對象。本題答案為 D。7. 數(shù)據(jù)流相當于一條管道,并有一級數(shù)據(jù)(信息)流經(jīng)它。在數(shù)據(jù)流圖中,用標有名字 的箭頭表示數(shù)據(jù)流。 數(shù)據(jù)流可以從加工流向加工, 也可以從加工流向文件或從文件流向加工, 并且可以從外部實體流向系統(tǒng)或從系統(tǒng)流向外部實體。本題答案為 C。8. 軟件設計包

4、括軟件結構設計、 數(shù)據(jù)設計、 接口設計和過程設計。 其中結構設計是定義 軟件系統(tǒng)各主要部件之間的關系;數(shù)據(jù)設計是將分析時創(chuàng)建的模型轉(zhuǎn)化為數(shù)據(jù)結構的定義; 接口設計是描述軟件內(nèi)部、 軟件和操作系統(tǒng)之間及軟件與人之間如何通信; 過程設計則是把 系統(tǒng)結構部件轉(zhuǎn)換成軟件的過程性描述。本題答案為 B。9. 當數(shù)據(jù)表A中每個元素距其最終位置不遠,說明數(shù)據(jù)表A按關鍵字值基本有序,在待排序序列基本有序的情況下,采用插入排序所用時間最少。本題答案為 B。10.在文件系統(tǒng)中, 相互獨立的記錄其內(nèi)部結構的最簡單形式是等長同格式記錄的集合, 易造成存儲空間大量浪費,不方便使用。 而在數(shù)據(jù)庫系統(tǒng)中, 數(shù)據(jù)是結構化的,這

5、種結構化 要求在描述數(shù)據(jù)時不僅描述數(shù)據(jù)本身, 還要描述數(shù)據(jù)間的關系, 這正是通過采用特定的數(shù)據(jù) 模型來實現(xiàn)的。本題答案為 D。11. 本題的考查點是 C 語言的特點。C 語言主要有如下一些特點:1 、語言簡潔、緊湊,使用方便、靈活;2 、運算符豐富;3 、數(shù)據(jù)結構豐富,具有現(xiàn)代化語言的各種數(shù)據(jù)結構;4 、具有結構化的控制語句;5 、語法限制不太嚴格,程序設計自由度大;6 、C語言允許直接訪問物理地址,能進行位操作,能實現(xiàn)匯編語言的大部分功能,可 以直接對硬件進行操作。7 、生成目標代碼質(zhì)量高,程序執(zhí)行效率高;8 、用C語言寫的程序可移植性好。但是所有的語言都不可能沒有任何缺點,C語言也不例外,

6、C語言是高級語言,需要通過編譯才能被計算機識別。本題答案為 C。12. 本題的考查點是程序的基本結構。 結構化程序由若干個基本結構組成。 每一個基本結構可以包含一個或若干個語句。 有三 種基本結構:1 、順序結構,先執(zhí)行 A操作,再執(zhí)行B操作,兩者是順序執(zhí)行的關系;2 、選擇結構,P代表一個條件,當 P條件成立時執(zhí)行 A,否則執(zhí)行B。只能執(zhí)行A或B 之一。3 、循環(huán)結構,有兩種循環(huán)結構:(1) 當型循環(huán)結構,當 P條件成立("真”)時,反復執(zhí)行 A操作。直到P為”假"時才 停止循環(huán)。(2) 直到型循環(huán)結構,先執(zhí)行 A操作,再判斷P是否為”假",若P為"假

7、”,再執(zhí)行A, 如此反復,直到 P為"真"為止。故本題答案為 A。13. 本題的考查點是 main 函數(shù)。一個C程序中必須有且只能有一個用"main"命名的主函數(shù),其它函數(shù)由用戶自行命名。main 函數(shù)可以在任何地方出現(xiàn)。故本題答案為 B。14. 本題的考查點是C語言中的基本數(shù)據(jù)類型。程序設計中可以利數(shù)據(jù)類型是所允許的數(shù)據(jù)及其操作的集合, 是高級語言的重要特征。 用數(shù)據(jù)類型發(fā)現(xiàn)程序中的某些錯誤。C 語言提供了三大類數(shù)據(jù)類型,即基本類型、復合類型和地址類型1 、基本類型只代表單個數(shù)據(jù);2 、復合類型由基本類型組合而成,可代表一批數(shù)據(jù);3 、地址類型可直接表

8、示內(nèi)存中的地址。C 語言支持的五種基本數(shù)據(jù)類型:字符型:表示單個字符; 整型:表示整數(shù),包括基本整型、短整型、長整型和無符號整型; 浮點型:表示實數(shù),精度為 6-7 位有效數(shù)字; 雙精度型:表示實數(shù),精度為 15-16 位有效數(shù)字; 無值類型:表示無返回值的函數(shù)或無定向指針。故本題答案為 D。15. 本題的考查點是 C 語言中的標識符。標識符是 C 語言中用來表示變量名、數(shù)組名、函數(shù)名、指針名、結構名、聯(lián)合名、枚舉 常數(shù)名、用戶定義的數(shù)據(jù)類型名、語句標號等用途的字符序列。標識符可以由字母、數(shù)字和 下劃線組成,字母和下劃線可以出現(xiàn)在用戶標識符的開頭,數(shù)字不可以。故本題答案為 B。16. 本題的考

9、查點是不同類型數(shù)據(jù)的輸入輸出。printf() 函數(shù)的一般格式如下所示:printf(" 格式控制字符串 ", 輸出項清單 )格式控制字符串中包括:1 、格式轉(zhuǎn)換說明符: 以 "%"開頭后跟一個格式字符, 它用于輸出數(shù)據(jù)格式的轉(zhuǎn)換與控制;2 、轉(zhuǎn)義字符:以 "" 開頭, 后跟一個字符,用于輸出某些特殊意義的字符和不可顯示字 符;3 、其他字符:用于照原樣顯示的字符。printf() 格式轉(zhuǎn)換說明符:"%d"按實際位數(shù)輸出十進制整數(shù); "%o"按實際位數(shù)輸出八進制整數(shù)。本題中,因為m定義為整數(shù),即

10、默認的十進制數(shù),n定義為八進制數(shù),所以照原樣輸出。 故本題答案為 A。17. 本題的考查點是自增、自減運算符。自增、自減運算符的作用是使變量的值增 1 或減 1,只能用于變量,包括 char 型變量、 int 型變量和 float 型變量,而不能用于常量或表達式。故本題答案為 D。18. 本題的考查點是不同類型數(shù)據(jù)的輸入輸出。printf() 函數(shù)的一般格式如下所示:printf("格式控制字符串 ", 輸出項清單 )格式控制字符串中包括:1 、格式轉(zhuǎn)換說明符: 以"%"開頭后跟一個格式字符,它用于輸出數(shù)據(jù)格式的轉(zhuǎn)換與控制;2 、轉(zhuǎn)義字符: 以"

11、;" 開頭后跟一個字符, 用于輸出某些特殊意義的字符和不可顯示字符;3 、其他字符:用于照原樣顯示的字符。printf() 格式轉(zhuǎn)換說明符:"%X"按實際位數(shù)輸出十六進制整數(shù)。本題因為 m, n都定義為十六進制整數(shù),且 m-=n;的意思是將 m與n的差 值重新賦給m,所以m為0。故本題答案為 C。19. 本題主要考查格式輸入輸出函數(shù) scanf() 和 printf() 。格式控制字符4用來輸入/輸出十進制整數(shù),%c用來輸入/輸出單個字符,在給出的程 序中,整型變量 m和n初始化為0,字符變量c初值為字符a,系統(tǒng)按照 m c、n所在的內(nèi) 存地址將輸入的 m c、n

12、的值存進去,即把10賦給m字符變量c重新賦值為A,10賦給n, 所以打印結果是 10,A,10 。故本題答案為 A。20. 本題的考查點是 switch 語句。switch 語句在執(zhí)行時先計算表達式 i 的值, 當表達式 i 的值與某一個 case 中的常量表 達式的值相等時, 就執(zhí)行該 case 后面的語句系列, 接著再執(zhí)行后面各個 case 中的語句序列, 一直到執(zhí)行完 default 后面的語句序列,然后結束 switch 。如果所有 case 中的常量表達式 的值都沒有與表達式 i 的值相匹配, 就只執(zhí)行 default 后面的語句序列。 break 語句與 switch 語句配合使用

13、,可以強行控制程序流程退出 switch 。由于本題沒有與 break 語句配合使用,因此在執(zhí)行完 "case 1" 以后,還要繼續(xù)執(zhí)行 "case2" 和 "defult" 。當 i=0 時,執(zhí)行 defult 語句,輸出 0 ;當 i=1 時,執(zhí)行 case 1 語句,輸出 1 ,因為沒有 break 控制程序流程退出,所以繼續(xù)執(zhí)行 下面的語句,輸出 11,以此類推。故本題答案為 A。21. 本題的考查點是邏輯表達式。形如 ( 表達式 1)&&( 表達式 2)&&. 的邏輯表達式在計算時,先計算表達

14、式1,如果其值是邏輯 "真"或非 0,就接著計算表達式 2,直至計算到第一個為邏輯"假" 的表達式時,就可判定整個邏輯表達式為邏輯"假" ,其后的表達式將不再計算。形如 ( 表達式 1)|( 表達式 2)|.的邏輯表達式在計算時,先計算表達式1,如果其值是邏輯 "假 "或 0,就接著計算表達式 2,直到計算到第一個為邏輯"真"的表達式時,就可判定整個邏輯表達式為邏輯" 真",其后的表達式將不再計算。根據(jù)以上的描述可知,本題中j+值為2,為真,k+不被計算,然后計算i+為2,所

15、以 i=2,j=2,k=2。故本題答案為 C。22. 本題的考查點是關系表達式和邏輯表達式。關系表達式用來進行兩個數(shù)據(jù)的比較,比較的結果為邏輯"真"或邏輯”假"。C語言不提供邏輯型數(shù)據(jù), 而是用整數(shù) 0表示邏輯 "假",即比較不成立; 用整數(shù) 1表示邏輯 "真",即比 較成立。和關系表達式一樣,邏輯表達式的值也是用整數(shù) 1 表示邏輯 "真",用整數(shù) 0表示邏輯 " 假"。本題中"a>b>c"即相當于"(a>b)>c",因為

16、a>b成立,所以其值為1,然后比較1與c的 大小, 1>c 不成立, 所以不執(zhí)行 printf 語句,然后判斷 "(c-1>=d)=1" 成立,此時執(zhí)行 printf 語句,打印 d+1=3。故本題答案為 B。23. 本題的考查點是 while 循環(huán)語句。while 語句是先判斷后執(zhí)行。i=0 時, i<7 為真, p0%2=11%2=1 為真, k=k+p0=11 ;i=1 時, i<7 為真, p1%2=13%2=1 為真, k=k+p1=11+13=24 ;i=2時,i<7為真,p2%2=14%2=0為假,結束循環(huán)。 所以打印輸出

17、24。故本題答案為 D。24. 本題的考查點是 do-while 循環(huán)語句。 do-while 的一般格式如下所示: do 語句;while( 測試表達式 );do-while 語句是先執(zhí)行后判斷,其執(zhí)行流程是:1 、執(zhí)行循環(huán)體;2 、計算測試表達式,若為非0,轉(zhuǎn)向執(zhí)行do,否則執(zhí)行while下面的一條語句;3 、執(zhí)行 do-while 后面的語句,即退出 do-while 循環(huán)。本題中,當i=0時,i%2=0,為假不執(zhí)行i+;continue;,接著往下執(zhí)行i+,此時i=1, s=s+i=1 ,因為 i=1 符合條件 i<7 繼續(xù)循環(huán)執(zhí)行, i=1 時以此類推,直到 i>=7 時

18、結束循環(huán)。 最后得出 s=16。故本題答案為 A。25. 本題的考查點是自增、自減運算。作用是使變量的值增 1 或減 1,如:+i,-i(在使用 i 之前,先使 i 的值加(減) 1)i+,i-(在使用 i 之后,使 i 的值加(減) 1)故本題答案為 B。26. 本題的考查點是字符常量。C 中的字符常量是用單引號(即撇號)括起來的一個字符。如 'a' 、 'x' 、 'D' 、 '?' 、 '$' 等都是字符常量。除了以上形式的字符常量外, C 還允許用一種特殊形式的字符常量,就是 以一個 ""

19、; 開頭的字符序列。 'ddd' 表示 1到 3位 8進制數(shù)所代表的字符,不足 3位就在前 面加 0; 'xhh' 表示 1 到2位16進制數(shù)所代表的字符。而 a='' 和 c='0xab' 是不正確 的。故本題答案為 D。27. 本題的考查點是條件運算符。條件運算符要求有三個操作對象,稱三目 (元) 運算符,它是 C 語言中唯一的一個三目 運算符。條件表達式的一般形式為表達式 1?表達式 2: 表達式 3條件運算符的執(zhí)行順序:先求解表達式1 ,若為非 0(真)則求解表達式 2,此時表達式 2 的值就作為整個條件表達式的值。若表達

20、式 1 的值為 0 (假),則求解表達式 3,表達 式 3 的值就是整個條件表達式的值。本題答案為 C。28. 本題的考查點是值的傳遞。在 main 函數(shù)中用 "f(a,b);" ,在函數(shù)調(diào)用開始時, a 的值傳送給 x, b 的值傳送給 y。 執(zhí)行完 f 函數(shù)后,如果 x<y ,則 x 和 y 的值互換,否則不進行交換,也就是始終保持 x 的值 大于 y 的值。但 main 函數(shù)中的 a 和 b 并未互換,所以此時 x,y 值的改變并不影響主調(diào)函數(shù) 參數(shù) a,b 的值,即 "值傳遞 " 方式,形參值的改變無法傳給實參。故本題答案為 D。29. 本

21、題的考查點是指針變量的引用。由于指針變量q賦值為NULL,即空地址,如果給空地址所指向的存儲空間賦值的話, 系統(tǒng)會出錯,提示為: Null point assignment! 。故本題答案為 A。30. 本題的考查點是指針變量作為函數(shù)參數(shù)。f 是用戶定義的函數(shù),它的作用是返回變量值小的那個。 f 函數(shù)的兩個形參 x,y 是指針 變量。程序開始執(zhí)行時,先初始化a和b的值,然后將a,b的地址分別賦給指針變量p和q,使p指向a, q指向b。接著執(zhí)行f函數(shù),注意p和q是指針變量,在函數(shù)調(diào)用開始時, 實參變量將它的值傳送給形參變量。采取的依然是 " 地址傳遞 "方式。因此虛實結合后形

22、參x的值為&a,y的值為&b。這時x和p都指向變量a,y和q都指向b。接著執(zhí)行f函數(shù)的函數(shù) 體,輸出*x和*y小的那個值。函數(shù)調(diào)用結束后,x和y不復存在,最后在 main函數(shù)中輸出的*r的值,即a和b小的那個值7賦給指針變量r所指向的存儲單元,但主函數(shù)中輸出的 *p , *q 的值未變。故本題答案為 B。31. 本題的考查點是通過指針引用數(shù)組元素。p=s1; 是指p的初始值為&s1 ,C規(guī)定p+1指向數(shù)組的下一個元素(而不是將 p值簡 單地加 1),*(p+1) 為 s1 中的第 2個元素,即為 w;s0 指 s 數(shù)組中的第 0 個元素,即為 one。故本題答案為 C。

23、32. 本題的考查點是通過指針引用數(shù)組元素。s=x+3;是使s的初始值為&x3 , s數(shù)組為5,0,0,所以s2為0。故本題答案為 B。33. 本題的考查點是二維數(shù)組的初始化。可以用下面方法對二維數(shù)組初始化:1 、分行給二維數(shù)組賦初值。如static int a34=1,2,3,4,5,6,7,8,9,10,11,12;這種賦初值方法比較直觀,把第一個花括弧內(nèi)的數(shù)據(jù)賦給第一行的元素, 第二個花括弧內(nèi)的數(shù)據(jù)賦給第二行的元 素,即按行賦初值。2 、可以將所有數(shù)據(jù)寫在一個花括弧內(nèi),按數(shù)組排列的順序?qū)Ω髟刭x初值。3 、可以對部分元素賦初值。static int a34=1,5,9;它的作用是

24、只對各行第 1 列的元素賦初值,其余元素自動為0。也可以對各行中的某一元素賦初值: static inta34=1,0,6,0,0,11;也可以只對某幾行元素賦初值: static int a34=1,5,6;4 、如果對全部元素都賦初值,則定義數(shù)組時對第一維的長度可以不指定,但第二維的 長度不能省。選項 A 定義了數(shù)組但是沒有賦值;選項B定義的是一行兩列,賦值卻是兩行一列;選項C在二維數(shù)組定義中,行可以不指定,但是列是要指定的。故本題答案為 D。34. 本題的考查點是二維數(shù)組的應用。m3即為定義的一個3行3列的二維數(shù)組,因為 k=2,所以輸出的為第二行的數(shù)組元素,即 m20 , m21 ,

25、m22 ,即 3 6 9 。故本題答案為 C。35. 本題的考查點是不同類型數(shù)據(jù)的輸入輸出。使用 scanf() 函數(shù)可以輸入任何類型的多個數(shù)據(jù),一般形式為: scanf( 格式控制,地址 表列)。C語言規(guī)定,數(shù)組名代表數(shù)組的首地址,也就是第一個元素的地址,由于該題要求 對數(shù)組中所有元素賦值,所以應該包含一個循環(huán)變量自加的過程,選項A、B明顯不正確;對于選項D, +i是先自加后使用i,因此x0沒有賦值,選項 D也不符合題目要求。故本題答案為 C。36. 本題的考查點是字符和轉(zhuǎn)義字符的判斷。函數(shù) strlen() 用于計算字符串的長度,所給的字符串 s 中, 'n' 是轉(zhuǎn)義字符,

26、代表一 個”換行”符,''表示一個反斜杠字符'',所以字符串s的長度為5 ; sizeof()函數(shù)是用 來計算字符數(shù)組所占內(nèi)存的字節(jié)數(shù),5個字符在內(nèi)存中占5個字節(jié),由于C規(guī)定,在每一個字符串末尾加一個字符結束標志 '0' 以便系統(tǒng)判斷字符串是否結束, 所以該字符串 s 所占內(nèi) 存的字節(jié)數(shù)為 6,最終打印輸出 5,6 。故本題答案為 C。37. 本題的考查點是字符串的比較。字符串的比較規(guī)則是對兩個字符串自左至右逐個字符相比(按ASCII 碼值大小比較),直到出現(xiàn)不同的字符或遇到 '0' 為止,若全部字符相同, 則認為相等; 若出現(xiàn)不

27、相同的字符, 則以第一個不相同的字符的比較結果為準,該函數(shù)就實現(xiàn)了此功能。故本題答案為 C。38. 本題的考查點是全局變量和局部變量。在函數(shù)內(nèi)定義的變量是局部變量, 而在函數(shù)之外定義的變量稱為外部變量, 外部變量是 全局變量。它的有效范圍為:從定義變量的位置開始到該源文件結束。選項 A 說法不正確, 全局變量的作用域還跟定義變量的位置有關; 選項 C 也不正確, 函數(shù)的形參是局部變量, 其 它函數(shù)不能調(diào)用;若在定義局部變量不賦初值,則對 static 變量來說,編譯時自動賦初值 0(對數(shù)值型變量)或空字符(對字符變量);而對auto 變量來說,如果不賦初值則它的值是一個不確定的值,所以選項D說

28、法不正確。故本題答案為 B。39. 本題的考查點是類型定義 typedef 的使用。該題定義了一個新結構體類型STD,包含三個結構體成員:整型變量n字符型變量c、雙精度型變量x。用STD來定義變量或數(shù)組的使用方法是新結構體類型名加上變量名或數(shù)組 名,因此選項C、D不正確;字符常量是由一對單引號括起來的單個字符,而字符串常量是 一對雙引號括起來的字符序列,所以選項B不正確。故本題答案為 A。40. 本題的考查點是共用體類型數(shù)據(jù)的特點。共用體類型數(shù)據(jù)的結構特點是幾個不同的變量共占同一段內(nèi)存,即共用體變量的地址和它的各成員的地址都是同一地址, 共用體變量中起作用的成員是最后一次存放的成員, 在存 入

29、一個新的成員后原有的成員就失去作用。所以該程序中有效的賦值語句是ul.c='A' ,最終打印出來的是字符 A。故本題答案為 C。41. 本題的考查點是指向字符串的指針變量。程序定義了一個字符指針變量ps,并把字符串的首地址賦給它,要注意的是該指針變量只能指向一個字符變量或其它字符類型數(shù)據(jù),不能同時指向多個字符數(shù)據(jù)。程序執(zhí)行 while 循環(huán)后, ps 指向字符串 "xyz" 的結束字符 '0' ,接著執(zhí)行 for 循環(huán),在循環(huán)變量賦初 值時,執(zhí)行ps-,此時ps便指向了字符z,判斷出條件ps-str>=0為真,通過字符串輸出 函數(shù)put

30、s輸出ps,即乙繼續(xù)循環(huán),ps-;,此時ps指向字符y,然后地址減1,判斷出條 件為真,輸出字符串yz,繼續(xù)循環(huán)判斷,最后輸出字符串xyz。故本題答案為 C。42. 本題的考查點是二維數(shù)組和指針數(shù)組的應用。在所給的程序中,pa指向二維數(shù)組首地址 a,接著執(zhí)行下面的for循環(huán),當i=0或i=1 時,數(shù)組元素 pa1i 的值減 1,當 i=2 時,數(shù)組元素 pa1i 的值為 1,此時得到新的 二維數(shù)組 a3=1,2,3,3,4,1,最終打印結果就是 2+4+1=7。故本題答案為 A。43. 本題的考查點是函數(shù)的遞歸調(diào)用。所謂函數(shù)的遞歸調(diào)用就是在調(diào)用一個函數(shù)的過程中又直接或間接地調(diào)用該函數(shù)本身。程序

31、在執(zhí)行被調(diào)函數(shù)的過程中,先判斷 i<j 為真,交換 ai 和 aj ,再次調(diào)用函數(shù)本身, i 自加1, j自減1,判斷出i<j為真,交換ai和aj,,最終打印輸出 6 5 4 3 2 1。故本題答案為 A。44. 本題的考查點是指針數(shù)組 main函數(shù)的參數(shù)。argc 和argv是main函數(shù)的形參。main函數(shù)是由系統(tǒng)調(diào)用的。 當處于操作命令狀態(tài)下,輸入main所在的文件名(經(jīng)過編譯、鏈接后得到的可執(zhí)行文件名),系統(tǒng)就調(diào)用main函數(shù)。實參是和命令行一起給出的。也就是在一個命令行中包括命令名和需要傳給main 函數(shù)的參數(shù)。命令行的一般形式為:命令名參數(shù)1參數(shù)2參數(shù)n命令名和各參數(shù)之

32、間用空格分隔。argc是指命令行中參數(shù)的個數(shù),該題中有兩個命令行參數(shù) exam和123, while循環(huán)實 際是循環(huán)次數(shù)與第二個參數(shù)的字符個數(shù)相等,函數(shù) fun 使用了靜態(tài)變量,是一個計數(shù)函數(shù),可以判斷3次調(diào)用以后n=3,所以最終n*argc=6 。 故本題答案為 A。45. 本題的考查點是指針變量作為函數(shù)參數(shù)。指針類型的變量作為函數(shù)參數(shù),可以實現(xiàn)”參數(shù)的雙向傳遞”,在C中參數(shù)一般是單向傳遞的,只有利用傳遞指針的地址才是 ”雙向”的,所以首先排除選項 A和D;在main()函數(shù)中 定義一個指向整型變量的指針變量p,它并未指向任何一個整型變量,只是提供一個指針變量,規(guī)定它可以指向整型變量,通過調(diào)

33、用函數(shù)fun,使p指向整型變量s,由于變量s沒有被賦值,所以p沒有明確的地址,選項B不正確。故本題答案為 C。46. 本題的考查點是類型定義 typedef 。C 語言用類型定義把已有的類型標識符定義成新的類型標識符,經(jīng)類型定義后,新的類 型標識符即可當做原標識符使用。它的一般形式為:typedef 原類型標識符 新類型標識符定義一個新的類型名的方法是:1 、先按定義變量(對字符指針類型方法相同)的方法寫出定義體(如:char *s;);2 、將變量名換成新類型名(如:將s 換成 STP);3 、在最前面加上 typedef (如: typedef char *STP; )。故本題答案為 D。

34、47. 本題的考查點是結構體數(shù)組的引用。在C語言中,結構體變量的引用有三種等價方式:1 、結構體變量 . 成員名;2 、( *p). 成員名;3 、 p-> 成員名。其中(*p)表示p指向的結構體變量。結構體數(shù)組的引用方法和結構體變量的引用類似, 根據(jù)格式輸入函數(shù) scanf() 的特點,地址表列是由若干個地址組成的表列。 題目中的 *p=std; 表示p指向結構體數(shù)組std,選項A D正確;C語言中規(guī)定第一個元素的地址即為該數(shù)組的 首地址,所以選項 C也正確。故本題答案為 B。48. 本題主要考查位運算。" 按位異或 "運算的規(guī)則是:參與運算的兩個相應位同號,則結果

35、為 0;異號則為 1。位 運算符中求反運算( )的優(yōu)先級最高,將 3先轉(zhuǎn)化為二進制數(shù) 00000011,則( 3)的值為 11111100;字符型變量x中的值為10100111,則(2+x)的值為:10101001。所以表達式的 值為 01010101 。故本題答案為 D。49. 本題主要考查C文件的基本概念。C 語言把文件看作是一個字符 (字節(jié)) 的序列, 根據(jù)數(shù)據(jù)組織形式可分為 ASCII 文件(又 稱文本文件)和二進制文件,即一個C文件可以看成是一個字節(jié)流或二進制流,對于流式文件,可以進行順序讀寫, 也可以進行隨機讀寫,關鍵在于控制文件的位置指針,由于文本文 件要發(fā)生字符轉(zhuǎn)換, 計算位置

36、時往往會發(fā)生混亂, 訪問速度受到影響, 所以隨機讀寫方式不 使用于文本文件。故本題答案為 D。50. 本題主要考查對文件的操作。在程序開始運行時, 系統(tǒng)自動打開三個標準文件: 標準輸入、 標準輸出和標準出錯輸出。 通常這三個文件都與終端相聯(lián)系的,該文件指針 stdin 、 stdout 和 stderr 都是系統(tǒng)自動定 義的,分別指向終端輸入、終端輸出和標準出錯輸出(也從終端輸出),所以程序中指定要 從 stdin 所指的文件輸入數(shù)據(jù),就是指從終端鍵盤輸入數(shù)據(jù),選項 D 不正確; fopen() 函數(shù) 的格式是 fopen( 文件名,使用文件方式 ) ,例如: fp=fopen("A

37、1","r"); 。故本題答案為 A。51. 模式也稱邏輯模式或概念模式,是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結構和特征的描述,是 所有用戶的公共數(shù)據(jù)視圖。例如數(shù)據(jù)記錄由哪些數(shù)據(jù)項構成, 數(shù)據(jù)項的名字、類型、取值范 圍等。外模式是模式的子集, 所以也稱子模式或用戶模式, 是數(shù)據(jù)庫用戶能夠看見的和使用的、 局部的邏輯結構和特征的描述,是與某一應用有關的數(shù)據(jù)的邏輯表示。內(nèi)模式也稱物理模式或存儲模式。一個數(shù)據(jù)庫只有一個內(nèi)模式,它是數(shù)據(jù)物理結構和存 儲方式的描述, 是數(shù)據(jù)庫內(nèi)部的表示方法。例如, 記錄的存儲方式是順序存儲、索引按照什 么方式組織;數(shù)據(jù)是否壓縮存儲,是否加密等。標準答案

38、為:模式 或 邏輯模式 或 概念模式52. 所謂完全二叉樹是指除最后一層外,每一層上的結點數(shù)均達到最大值;在最后一層 上只缺少右邊的若干結點。具有 n 個結點的完全二叉樹, 其父結點數(shù)為 int(n/2) ,而葉子結點數(shù)等于總結點數(shù)減去父結點數(shù)。本題 n=500,故父結點數(shù)等于 int(500/2)=250 ,葉子結點數(shù)等于 500-250=250。 標準答案為: 25053. 繼承的優(yōu)點:相似的對象可以共享程序代碼和數(shù)據(jù)結構,從而大大減少了程序中的 冗余,提高軟件的可重用性。標準答案為:可重用性或 重用性 或 復用性 或 可復用性54. 結構化分析方法主要包括:面向數(shù)據(jù)流的結構化分析方法(S

39、A-Structuredan alysis ),面向數(shù)據(jù)結構的Jacks on 方法(JSD-Jacks on system developme nt method)禾口面向數(shù)據(jù)結構的結構化數(shù)據(jù)系統(tǒng)開發(fā)方法(DSSD-Data structured system developmentmethod)。標準答案為:數(shù)據(jù)結構55. 數(shù)據(jù)庫設計分為以下 6 個設計階段: 需求分析階段、 概念設計階段、 邏輯設計階段、 物理設計階段、實施階段及數(shù)據(jù)庫運行和維護階段。標準答案為:概念設計階段或 數(shù)據(jù)庫概念設計階段56. 本題的考查點是求模運算。算術運算符中, %只能對整型運算量施加運算。在計算兩個整數(shù)的

40、余數(shù)時,余數(shù)的符號 與被除數(shù)相同。例如, 3%(-2)=1 , -3%2=-1 , 3%2=1, -3%(-2)=-1 。故本題答案為: -3 。57. 本題的考查點是格式輸入函數(shù) scanf() 。格式輸入函數(shù) scanf() 可以用于所有類型的數(shù)據(jù),采用不同的格式轉(zhuǎn)換說明符,將不同 類型的數(shù)據(jù)從標準輸入設備(鍵盤)讀入內(nèi)存。scanf() 函數(shù)的一般格式如下所示: scanf(" 格式控制字符串 ", 輸入項清單 ) 格式控制字符串通常只包含格式轉(zhuǎn)換說明符,其含義與 printf() 類似。 輸入項清單中至少應有一個輸入項,輸入項必須是變量的地址。如果在 "

41、格式控制 "字符串中除了格式說明以外還有其它字符, 則在輸入數(shù)據(jù)時應輸入與 這些字符相同的字符。故本題答案為: i=10,j=20 。58. 本題的考查點是復雜的混合運算。根據(jù)運算符的優(yōu)先級和結合性, 關系運算的優(yōu)先級比賦值運算的高, 而且結合方向都是 自右至左,所以p=a!=O'中先運算a!=0',因為a=5,所以a!=0'成立,為真,值為 1,再 將1賦給p,即p=1。故本題答案為: 1。59. 本題的考查點是 if 語句。if 語句中的分支語句可以是單語句,也可以是復合語句。復合語句一定要用花括號括 住,或者用逗號表達式構成的語句代替,否則會引起邏輯錯誤

42、。例如,在下列兩個程序段 if(a>b)t=a;a=b;b=t;printf("a=%d,b=%d",a,b);和if(a>b)t=a;a=b;b=t;printf("a=%d,b=%d",a,b); 中,當條件成立時,執(zhí)行流程沒有區(qū)別;條件不成立時,執(zhí)行結果就不同。本題中, 'a<b' 不成立, 不執(zhí)行 t=a; 但是會接著往下執(zhí)行 a=b;b=t; 些時 a=3, b=0, c=5。 'a<c' 成立,執(zhí)行 t=a;a=c;c=t; 之后 a=5,b=0,c=3 。故本題答案為: 5 0 3 。

43、60. 本題的考查點是在循環(huán)語句中使用 break , continue 語句。break 語句有兩個用途:一是用在 switch 中,強行控制立即退出 switch ;二是用在循 環(huán)中,強行控制立即退出循環(huán)。continue 語句只能用在循環(huán)中,它的作用是跳過其后面的語句,直接將控制轉(zhuǎn)移到下 一輪循環(huán)條件的測試。本題是計算二維數(shù)組中的正整數(shù)的和,結果為 58。故本題答案為: 58。61. 本題的考查點是字符數(shù)據(jù)在內(nèi)存中的存儲形式。將一個字符常量放到一個字符變量中,實際上并不是把該字符本身放到內(nèi)存單元中去, 而是將該字符相應的 ASCII 代碼放到存儲單元中,由此可以看出字符數(shù)據(jù)在內(nèi)存中是以

44、ASCII 碼存儲的。字符 'A' 的 ASCII 碼值為 65, 'H' 的 ASCII 碼值為 72, '0' 是一個 ASCII 碼值為 0 的字符, 其作用是實現(xiàn)整型和字符型的轉(zhuǎn)換。 "%c" 是用于輸出字符的格式符, 所以 最后打印輸出 7。故本題答案為: 7。62. 本題的考查點是函數(shù)的遞歸調(diào)用。所謂函數(shù)的遞歸調(diào)用, 是在調(diào)用一個函數(shù)的過程中, 又出現(xiàn)直接或間接的調(diào)用該函數(shù)本 身。主函數(shù) main()中,定義了 4個整型變量a、b、c、d,并分別給a、b、c賦初值3、4 和5,然后調(diào)用函數(shù)f(f(3,4),f(3,

45、5)并將返回值賦給變量 d,對于被調(diào)函數(shù)的執(zhí)行過程,我們可以分解進行, 先計算出 f(3,4) 的返回值是 3,再計算出 f(3,5) 的返回值是 6,最后計 算出 f(3,6) 的返回值是 9,即為最終函數(shù)的返回值。故本題答案為: 9。63. 本題的考查點是二維數(shù)組的應用。根據(jù)楊輝三角形的數(shù)據(jù)排列的規(guī)律可以看出,規(guī)律( 1)第 0列元素和主對角線元素均 為 1,程序中是這樣處理的: 先初始化 x00=1; ,再通過 for 循環(huán)將第 0列元素賦初值 1, 即: xi0=1 ,由于主對角線上的元素的下標和其所在的行號是相同的,所以第一空應該 填寫 xii ,這就實現(xiàn)了將主對角線上的元素賦初值 1。再看規(guī)律( 2)其余元素為其左上

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論