二級C語言筆試-482_第1頁
二級C語言筆試-482_第2頁
二級C語言筆試-482_第3頁
免費預(yù)覽已結(jié)束,剩余13頁可下載查看

下載本文檔

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

文檔簡介

1、二級 C 語言筆試 -482( 總分: 92.00 ,做題時間: 90 分鐘 )一、選擇題 (總題數(shù):40,分數(shù): 60.00)1.軟件是指 ( ) 。A.程序B .程序和文檔C.算法加數(shù)據(jù)結(jié)構(gòu) D 程序、數(shù)據(jù)和相關(guān)文檔的集合(分數(shù): 1.00 )A.B.C.D. V解析: 解析 計算機系統(tǒng)由硬件和軟件兩部分組成。其中,計算機軟件包括程序、數(shù)據(jù)與相關(guān)文檔的完整 集合。2. 算法的時間復(fù)雜度是指 ( ) 。A) 執(zhí)行算法程序所需要的時間B) 算法程序的長度C) 算法執(zhí)行過程中所需要的基本運算次數(shù)D) 算法程序中的指令條數(shù)(分數(shù): 2.00 )A.B.C. VD.解析: 解析 所謂的算法的時間復(fù)雜

2、度,是指執(zhí)行算法所需要的工作量,可以用算法在執(zhí)行過程中所需基 本運算的執(zhí)行次數(shù)來度量算法的工作量。3. 數(shù)據(jù)的存儲結(jié)構(gòu)是指 ( ) 。A) 數(shù)據(jù)所占的存儲空間B) 數(shù)據(jù)的邏輯結(jié)構(gòu)在計算機中的存放形式C) 數(shù)據(jù)在計算機中的順序存儲方式D) 存儲在計算機外存中的數(shù)據(jù)(分數(shù): 2.00 )A.B. VC.D.解析: 解析 數(shù)據(jù)的存儲結(jié)構(gòu),又稱為數(shù)據(jù)的物理結(jié)構(gòu),是數(shù)據(jù)的邏輯結(jié)構(gòu)在計算機中的存放形式。數(shù)據(jù) 的存儲結(jié)構(gòu)有順序結(jié)構(gòu)、鏈式結(jié)構(gòu)、散列結(jié)構(gòu)和索引結(jié)構(gòu)等。4. 在面向?qū)ο蠓椒ㄖ校?( ) 描述的是具有相似屬性與操作的一組對象。A) 屬性 B) 事件 C) 方法 D) 類(分數(shù):2.00 )A.B.C

3、.D. V解析:解析類(class)描述的是具有相似屬性與操作的一組對象,而一個具體對象則是其對應(yīng)類的一個 實例。5. 下列選項中不屬于軟件生命周期開發(fā)階段任務(wù)的是()。A)軟件測試B)概要設(shè)計C)軟件維護D)詳細設(shè)計(分數(shù):1.00 )A.B.C. VD.解析:解析軟件的生命周期可分為軟件定義、軟件開發(fā)及軟件運行維護3個階段。其中軟件定義階段的主要工作有可行性研究與計劃制定和需求分析等;軟件開發(fā)階段的主要工作有概要設(shè)計、詳細設(shè)計和測試 等:軟件運行維護階段的主要工作是軟件的運行及后期的維護等。6. 數(shù)據(jù)獨立性是數(shù)據(jù)庫技術(shù)的重要特點之一。所謂數(shù)據(jù)獨立性是指()。A)數(shù)據(jù)與程序獨立存放B)不同的

4、數(shù)據(jù)被存放在不同的文件中C)不同的數(shù)據(jù)只能被對應(yīng)的應(yīng)用程序所使用D)以上三種說法都不對(分數(shù):2.00 )A.B.C.D. V解析:解析數(shù)據(jù)獨立性是數(shù)據(jù)與程序間的互不依賴性,即數(shù)據(jù)庫中數(shù)據(jù)獨立于應(yīng)用程序而不依賴于應(yīng)用 程序。所以選項 A),選項B)和選項C)都不正確。7. 關(guān)系表中的每一橫行稱為一個A)元組B)字段C)屬性D)碼(分數(shù):2.00 )A. VB.C.D.解析:解析關(guān)系表中,每一行稱為一個元組,對應(yīng)表中的一條記錄;每一列稱為一個屬性,對應(yīng)表中的 一個字段;在二維表中凡能唯一標識元組的最小屬性集稱為該表的鍵或碼。8. 有下列二叉樹,對此二叉樹前序遍歷的結(jié)果為()。A) ACFXDBE

5、YZ B) ABEFXYZCD C) ABCDEFXYZ D) ABDYECFXZ(分數(shù):2.00 )A.B.C.D. V解析:解析對二叉樹的前序遍歷是指先訪問根結(jié)點,然后訪問左子樹,最后訪問右子樹,并且,在訪問左、右子樹時,先訪問根結(jié)點,再依次訪問其左、右子樹。記住3種遍歷的順序:前序,訪問根t按前序遍歷左子樹t按前序遍歷右子樹;中序,按中序遍歷左子樹t訪問根t按中序遍歷右子樹;后序,按后序 遍歷左子樹t按后序遍歷右子樹t訪問根。9. 有三個關(guān)系R、S和如下;由關(guān)系R和S通過運算得到關(guān)系T,則所使用的運算為() A)并B)自然連接C)笛卡爾積D)交(分數(shù):2.00 )A.B.C.D. V解析

6、:解析關(guān)系R與S經(jīng)交運算后所得到的關(guān)系是由那些既在R內(nèi)又在S內(nèi)的有序組組成的,記為RnSo10. 下列敘述中正確的是()。A. 為了建立一個關(guān)系,首先要構(gòu)造數(shù)據(jù)的邏輯關(guān)系B. 表示關(guān)系的二維表中各元組的每一個分量還可以分成若干數(shù)據(jù)項C. 一個關(guān)系的屬性名表稱為關(guān)系模式D. 個關(guān)系可以包括多個二維表(分數(shù):1.00 )A. VB.C.D.解析:解析元組分量的原子性要求二維表中元組的分量是不可分割的基本數(shù)據(jù)項。關(guān)系的框架稱為關(guān)系 模式。一個稱為關(guān)系的二維表必須同時滿足關(guān)系的7個性質(zhì)。11. 下面各選項中,均是 C語言合法標識符的選項組是A)33 we auto B) _23 me _3ewC) _

7、43 3e_ else D) ER-DF 32(分數(shù):1.00 )A.B. VC.D.解析: 解析 合法的標識符是由字母、數(shù)字和下劃線組成,并且第一個字符必須為字母或下劃線,用戶定義的標識符不能與關(guān)鍵字相同。選項A),數(shù)字不能為第一個字母,auto為關(guān)鍵字;選項C)中,也是數(shù)字不能為第一個字母,else為關(guān)鍵字;選項D)中負號不合法。12. 若有下列定義 (設(shè) int 類型變量占 2 字節(jié)):int i=8, j=9 ;則下列語句:printf("i=%d , j=%d/n" , i , j) ;輸出的結(jié)果是 ( ) 。Ai=8 , j=9 B i=%d , j=%dCi=

8、%8, j=%9 D8, 9(分數(shù): 1.00 )A.B. VC.D.解析: 解析 本題考查函數(shù)的輸出格式。在 printf 函數(shù)的格式說明符中有兩個“ %”說明;將第1 個%后面的字符原樣輸出,并不輸出其對應(yīng)的變量值。13. 在C語言中,運算對象必須是整型數(shù)的運算符是A) % B) / C) % 和/ D) *分數(shù): 1.00 )A. VB.C.D.解析:解析在C語言中,“ 運算符兩側(cè)的運算數(shù)必須是整型。14. 現(xiàn)有定義 int a;double b;float c;char k;,則表達式 a/b+c-k 值的類型為A) int B) double C) float D) char分數(shù):

9、1.00 )A.B. VC.D.解析: 解析 雙目運算中兩邊運算量類型轉(zhuǎn)換規(guī)律: 運算數(shù) 1 運算數(shù) 2 轉(zhuǎn)換結(jié)果類型 短整型 長整型 短整型-長整型整型長整型整型-長整型 字符型整型字符型- 整型有符號整型無符號整型有符號整型- 無符號整型 在 a/b 的時候, a、b 的類型不一致,根據(jù)類型轉(zhuǎn)換規(guī)則,把整型轉(zhuǎn)換成 double 類型,之后的加、減類似 轉(zhuǎn)化規(guī)則為 char,short Tint unsigned long double float 。整型 浮點型整型-浮點型15. 在 ASCII 代碼表中每一個大寫字母比它相應(yīng)的小寫字母的 ASCII 碼( ) 。A) 小 32 B) 小

10、64C) 大 32 D) 大 1(分數(shù): 2.00 )A. VB.C.D.解析:解析 本題考查大小寫字母的 ASCII 碼值的關(guān)系。 大寫字母比它相應(yīng)的小寫字母的 ASCII 碼小 3216. 下列程序輸出的結(jié)果是 ( ) 。main()double d=3.2 ; int x , y;x=1.2 ;y=(x+3.8)/5.0 ;printf("%d/n" , d*y) ;A3 B3.2 C 0 D3.07(分數(shù): 1.00 )A.B.C. VD.解析: 解析 根據(jù)賦值運算的類型轉(zhuǎn)換規(guī)則,先將 double 型的常量 1.2 轉(zhuǎn)換為 int 型,因為 x 的類型是 int,

11、則x的值為1;執(zhí)行語句y=(x+3.8)/5.0時.即先將整型變量 x的值1轉(zhuǎn)換為double型1.0,然后3.8相加得4.8,進行除法運算4.8/5.0結(jié)果為0,即變量y的值為0, d*y的值也為0,故選C選項。17. 兩次運行下面的程序,如果從鍵盤上分別輸入3和 2,則輸出結(jié)果是 ( ) 。#include < stdio.h >main()int x ;scanf("%d" , &x);if(x+ > 2)printf("%d" , x) ;else printf(“%d/n",x -) ;A) 4 和 3 B)

12、 4 和 2 C) 4 和 1 D) 3 和 2(分數(shù): 1.00 )A. VB.C.D.解析: 解析 本題考查 if-else 語句。首先, scanf 函數(shù)通過鍵盤讀入 x 的值。當 x=3 時,第一個 if 語 句先判斷條件,取 x 的值 3和 2比較,然后將 x 的值加 1, if 條件成立,執(zhí)行下面的 printf 語句,輸出 x 的值4。當x=2時,第一個if語句先判斷條件,先取x的值2和2比較,然后將x的值加1(x的值變?yōu)?), if 條件不成立,執(zhí)行下面的 else 語句,先輸出 x 的值 3,再將 x 的值減 1。18. 下列程序執(zhí)行后的輸出結(jié)果是 ( ) 。void run

13、e(int*a , int b)b0=*a+b ;main()int a , b5 ;a=0; b0=3 ;func(&a ,b) ;printf("%d/n" , b0) ;A6 B7 C8 D9(分數(shù): 1.00 )A. VB.C.D.解析: 解析 本題考查函數(shù)的調(diào)用,當從主函數(shù)傳遞到調(diào)用函數(shù)中, *a 的值為 0,因此當執(zhí)行完調(diào)用函數(shù) 后, b0 的值為 6。19. 下列條件語句中,輸出結(jié)果與其他語句不同的是 ( ) 。A) if(a)printf("%d/-n",x); else printf("%d/n",y);B)

14、 if(a=0)printf("%d/n",y); else printf("%d/n",x);C) if(a!=0)printf("%d/n",x); else printf("%d/n",y);D) if(a=0)printf("%d/n",x); else printf("%d/n",y);(分數(shù): 2.00 )A.B.C.D. V解析:解析選項A)、B)、C)這三條語句都是在變量不等于0的情況下,輸出x;等于0的情況下輸出y ,而選項D)則正好相反。20. 下列能正確

15、定義一維數(shù)組的選項是 ( ) 。A) int a5=0,1,2,3,4,5); B) char a=0,1,2,3,4,5;C) char a='A','B','C' D) int a5="0123"(分數(shù): 1.00 )A.B. VC.D.解析:解析在定義數(shù)組時,如果賦給的初始值個數(shù)大于數(shù)值的長度,這樣就會越界,因此選項A)錯誤;選項C)中定義的是一個字符變量C:選項D)中整型數(shù)組a中只能存儲整型數(shù)據(jù),而不能存儲字符串常量“0123”。21. 若x和y代表整型數(shù),以下表達式中不能正確表示數(shù)學(xué)關(guān)系|x y| < 10的是

16、()。A) abs(x-y)< 10 B) x-y > -10&&x-y < 10C) ! (x-y)< - 10 II ! (y -x) > 10 D) (x-y) * (x-y)< 100(分數(shù): 1.00 )A.B.C. VD.解析:解析選項A)中,abs本身就是求絕對值的函數(shù),所以是正確的;選項 B)是把|x-y| < 10表示成了 數(shù)學(xué)表達式中的-10 <(x-y) >< 10,然后再用C語言規(guī)則表示出來的;選項 D)相當于把|x-y| <10兩邊同 時平方,此處表達也是正確的;而選項 C)中!(x-y

17、)<-10相當于(x-y) > = -10 , !(y-x)> 10相當于(x-y)> =-10,故選項C)相當于(x-y) > =-10,所以錯誤。22. 若變量已正確定義,下列正確的程序段是 ( ) 。A) while(ch=getchar()='/N')putchar(ch); B) while(ch=getchar()='/n')putchar(ch);C) while(ch=getchar()!='/N')putchar(ch); D) while(ch=getchar()!='/n')pu

18、tchar(ch);(分數(shù): 2.00 )A.B.C.D. V解析:解析本題考查兩個知識點:C語言用'/n'這個字符常量表示換行:getchar函數(shù)的作用是從終端輸入一個字符,當遇到換行時結(jié)束輸入。23. 已有定義"char c;”,程序前面已在命令行中包含ctype.h文件,不能用于判斷c中的字符是否為大寫字母的表達式是 ( ) 。A isupper(c) B'A' < -c < ='Z'C 'A' < =c&&c< ='Z' D c< =('z&#

19、39;-32)&&('a'-32)< =c(分數(shù): 1.00 )A.B. VC.D.解析:解析選項B先計算關(guān)系表達式“卞<=c”的值是 0還是1,再比較該值與字符'z'之間的大小關(guān) 系,不能實現(xiàn)題目所要求的功能。24. 若有定義血b8,*p=b ;_則p+6表示()。A) 數(shù)組元素 b6 的值 B) 數(shù)組元素 b6 的地址C) 數(shù)組元素 b7 的地址 D) 數(shù)組元素 b0 的值加上 6(分數(shù): 2.00 )A.B. VC.D.解析: 解析 指針中存放的是變量的地址,指針也可以進行增減運算,這時指針移動的最小單位是一個存 儲單元,而不是

20、一個字節(jié)。所以題中將 p+6 指的是將指針向后移動了 6 個存儲單元,指向 b6 ,存放的是 b6 的地址。25. 有以下程序: #include < stdio.h > void fun(char*c , int d)*c=*c+1 , d=d+1 ;printf("%c , %c",*c ,d) ;main()char b='a' , a='A' ;fun(&b , a) ; printf("%c , %c/n" ,b,a) ;程序運行后的輸出結(jié)果是 ( ) 。Ab,B,b,A Bb,B,B,A C

21、a,B,B,a Da,B,a,B(分數(shù): 1.00 )A. VB.C.D.解析:解析本題考查了函數(shù)的調(diào)用。首先主函數(shù)定義了兩個字符型數(shù)據(jù)b和a,給b賦值為字母a, a賦值為字母A,調(diào)用fun(&b,a)函數(shù),*c=*c+1 ,a的ASCII碼值加1后為b,A的ASCII碼值加1后為B, 輸出第一組值,排除 C、D選項。b的值此時為小b,排除B選項,所以本題答案為 Ao26. 下面程序的文件名為t.exe,在DOS下輸入的命令行參數(shù)為:t to meet me v回車 則程序輸出的結(jié)果是#include "stdio.h"main(argc,argv)int argc

22、;char *argv ;int i;printf("%d/n",argc);A) 3 B) 4 C) 2 D)以上答案都不正確(分數(shù): 2.00 )A.B. VC.D.解析:解析argc中存入的是命令行中字符串的個數(shù)。argv是一個指向字符型的指針數(shù)組的指針。27. 若有定義 int(*pt)3;,則下列說法正確的是A) 定義了基類型為 int的三個指針變量B) 定義了基類型為 int的具有三個元素的指針數(shù)組ptC) 定義了一個名為 *pt 、具有三個元素的整型數(shù)組D) 定義了一個名為 pt 的指針變量,它可以指向每行有三個整數(shù)元素的二維數(shù)組A.B.C.D. V解析:解析

23、定義了一個指向一維數(shù)組的指針,該一維數(shù)組具有三個int型元素,按照C語言中二維數(shù)組的定義知,二維數(shù)組先按照行排列,再按照列排列,故選Do28. 有以下程序main()int a33,*p,i;p= a00;for(i=0;i< 9;i+)pi=i;for(i=0;i< 3;i+)printf("%d",a1i);程序運行后的輸出結(jié)果是 。(A) 0 1 2(B) 1 2 3(C) 2 3 4(D) 3 4 5(分數(shù): 2.00 )A.B.C.D. V解析:29. 以下函數(shù)返回 a 所指數(shù)組中最大值所在的下標值:fun(int *a , int n)int i ,

24、j=0 ,p;p=j;for(i=j;i < n;i+)if(ai > ap) ;return(p) ;在下劃線處應(yīng)填入的內(nèi)容是 ( ) 。A) i=p B) ap=ai C) p=j D) p=i(分數(shù): 1.00 )A.B.C.D. V解析: 解析 該題目要求的是最大數(shù)的位置 ( 下標) 。程序通過對 a 所指數(shù)組中的元素進行逐個比較,記錄 最大數(shù)的下標 i ,并把該下標記錄在變量 p 中,所以,如果 ai > ap 關(guān)系成立,應(yīng)該把 i 的值賦給 p, 這樣才滿足題目的要求。30. 字符 (char) 型數(shù)據(jù)在微機內(nèi)存中的存儲形式是 。A)反碼B)補碼C) EBCDIC

25、碼D) ASCU碼(分數(shù): 2.00 )A.B.C.D. V解析: 評析 將個字符常量放到個字符變量中,實際上并不是把該字符本身放到內(nèi)存單元中去,而是 將該字符的 ASCII 碼值放到存儲單元中。31. 下列說法中不正確的是 ( ) 。A) 指針是一個變量B) 指針中存放的是數(shù)值C) 指針可以進行加、減等算術(shù)運算D) 指針變量占用存儲空間(分數(shù): 1.00 )A.B. VC.D.解析: 解析指針中存放的是變量的地址,指針也可以進行增減運算,這時指針移動的最小單位是一個存 儲單元,而不是一個字節(jié)。32. 以下敘述中錯誤的是A) 改變函數(shù)形參的值,不會改變對應(yīng)實參的值B) 函數(shù)可以返回地址值C)

26、可以給指針變量賦一個整數(shù)作為地址值D) 當在程序的開頭包含頭文件 stdio.h 時,可以給指針變量賦 NULL(分數(shù): 2.00 )A.B.C. VD.解析: 解析 函數(shù)形參和實參分別占用不同的內(nèi)存單元,改變形參的值不會影響對應(yīng)實參的值,選項 A) 正確。指針類型的函數(shù)可以返回地址值,選項B)正確。在文件stdio.h 中,NULL被定義為void型的指針,選項D)也正確。指針變量的值只能是存儲單元地址,而不能是一個整數(shù),選項C)錯誤。33. 以下程序運行后的輸出結(jié)果是#define F(X , Y)(X) * (Y)main( )int a=3 , b=4;printf("%d/

27、n" , F(a+ , b+) ;A) 12 B) 15 C) 16 D) 20(分數(shù): 2.00 )A. VB.C.D.解析:解析本題考查帶參數(shù)的宏定義,參數(shù)只是簡單的字符替換,而不是參數(shù)的傳遞。本題中用a+替換X,用b+替換Y,再計算(a+)*(b+)的值,即3*4的值,其結(jié)果為12。34. 下列字符數(shù)組初始化語句中,不正確的是 ( ) 。A) char c='goodmorning' ; B) char c20= “goodmorning" ;C) char c='a', 'b' , 'c' , '

28、;d' ;D) char c="goodmorning" ;(分數(shù): 2.00 )A. VB.C.D.解析:解析本題考查兩個概念。用單引號括起來的一個字符常量只能存放一個字符;C語言中沒有字符串變量,只能用字符數(shù)組來存儲字符串。選項A)中一個單引號內(nèi)存放了若干個字符,是錯誤的;選項B) 和選項D)中將一個字符串賦值給一個字符數(shù)組是允許的。35. 以下不能將 s 所指字符串正確復(fù)制到 t 所指存儲空間的是 ( ) 。A) while(*t= *s)t+; s+; ) B) for(i=0; ti=si; i+) ;C) do*t+=*s+ ; while(*s) ;

29、D) for(i=0, j=0 ; ti+=sj+; ) ;(分數(shù): 2.00 )A.B.C. VD.解析:解析在選項C)中,不能把s所指字符串的結(jié)束標志符賦給字符串t o36. 有下列程序:#include < stdio.h >structstint(x , y)date2=1, 10, 2, 20;main()structst*p=date ;printf("%d , ", p->y); printf("%d/n" , (+p)- >x);程序的運行結(jié)果是 ( ) oA10, 1 B20, 1 C10, 2 D20, 2(分

30、數(shù): 1.00 )A.B.C. VD.解析:解析data2是兩個結(jié)構(gòu)體組成的數(shù)組,p指向結(jié)構(gòu)體數(shù)組的首地址,p- >y訪問第一個結(jié)構(gòu)體的 第二個元素;(+p)x訪問第二個結(jié)構(gòu)體的第一個元素。所以輸出為10.2 o37. 以下正確的程序段是A) char str1="12345", str2="abcdef" ;B) char str10, *st="abcde" ; strcat(str , st) ;C) charstr10=" " o *st="abcde" ; strcat(str

31、, st) ;D) char*st1="12345", *st2="abcde" ; strcat(st1 , st2) ;(分數(shù): 2.00 )A.B.D.解析:解析本題考查了一維字符數(shù)組的定義和初始化。選項C中str10初始化為空,可以不必進行類似" "的空賦值, 字符數(shù)組若沒有進行初始化賦值, 默認的字符為空, 并且定義完 str 數(shù)組后,應(yīng)該用“, 分隔而不是“?!?,所以選項 C錯誤。38. 設(shè)函數(shù)中有整型變量a,為保證其在未賦初值的情況下初值為0,應(yīng)選擇的存儲類別是()。A) static B) register C) au

32、to D) auto或 register(分數(shù): 2.00 )A. VB.C.D.解析: 解析 存儲類說明符有 auto 、 register 、 static 、extern 和 typedef 。 auto和register 將聲明的對象說明為自動存儲類對象,這些對象僅可用在函數(shù)中。 這種聲明也具有定義的作用,并將預(yù)留存儲空間。 register 說明的聲明等價于 auto 說明的聲明,所不同 的是, register 暗示了聲明的對象將被頻繁地訪問,將盡可能存儲在寄存器中。如果一個對象被聲明為 register ,則將不能對它應(yīng)用一元運算符 &,聲明為 register 但實際按

33、照 auto 類型處理的對象的地址進行 計算是非法的。 static 將聲明的對象說明為靜態(tài)存儲類。這種對象可以用在函數(shù)內(nèi)部或者函數(shù)外部。在函數(shù)內(nèi)部,該說 明符將引起存儲空間的分配,具有定義的作用。在函數(shù)外部,該說明符將引起聲明對象為具有內(nèi)部鏈接。 另外,若將其定義為 static 類型,則其初值默認為 0。 函數(shù)內(nèi)部的 extern 聲明表明, 被聲明的對象的存儲空間定義在其他地方。 在函數(shù)外部, 說明聲明的對象 具有外部鏈接。 typedef說明符并不會為對象預(yù)留存留空間。39. 以下程序有語法錯誤,有關(guān)錯誤原因的正確說法是 ( ) 。main()int G=5 , k;void prt_

34、char() ;IIIk=prt_char(G) ;A) 語句 void prt_char() ;有錯,它是函數(shù)調(diào)用語句,不能用 void 說明B) 變量名不能使用大寫字母C) 函數(shù)說明和函數(shù)調(diào)用語句之間有矛盾D) 函數(shù)名不能使用下劃線(分數(shù): 1.00 )A.B.C. VD.解析:解析在C程序中,若把函數(shù)定義放在函數(shù)調(diào)用之后,應(yīng)該在函數(shù)調(diào)用之前對函數(shù)進行聲明,或稱 為函數(shù)原型說明。函數(shù)聲明的類型必須與函數(shù)返回類型一致,函數(shù)聲明可以是一條獨立的語句,也可以與 普通變量一起出現(xiàn)在同一條語句中。本題程序中聲明 prt_char 函數(shù)是 void 類型,與 k=prt _ char() 的類 型矛盾

35、,所以本題的錯誤在于“函數(shù)說明和函數(shù)調(diào)用語句之間有矛盾”。40. 下面程序段中 c 的二進制值是 。char a=3,b=6,c;c=aAb << 1;A) 00001011 B) 00001111 C) 00011110 D) 00011100(分數(shù): 2.00 )A.B. VC.D.解析:評析C語言提供六種位運算符,按優(yōu)先級由高到低的順序分別為:取反()、左移(<< )和右移( >> )、按位與(&)、按位異或(A)、按位或(|)。所以表達式c=aAb<< 1先運算b<< 1得二進制值為 00001100,再運算 aA 0

36、0001100,最后得二進制值 00001111。二、填空題 (總題數(shù): 15,分數(shù): 32.00)41. 診斷和改正程序中錯誤的工作通常稱為 1 。(分數(shù): 2.00 )填空項 1: (正確答案:程序調(diào)試)1 和選擇排序解析:42. 排序是計算機程序設(shè)計中的一種重要操作,常見的排序方法有插入排序、(分數(shù): 2.00 )填空項 1: (正確答案:交換排序)解析: 解析 所謂排序是指將一個無序序列整理成按值非遞減順序排列成的有序序列,常用的排序方法有:交換排序、插入排序和選擇排序。其中交換排序包括冒泡排序和快速排序,插入排序包括簡單插入排序和 希爾排序,選擇排序包括直接選擇排序和堆排序。43.

37、常用的黑箱測試有等價分類法、 、因果圖法和錯誤推測法 4 種。(分數(shù): 2.00 )填空項 1: (正確答案:邊值分析法)解析: 命題目的 本題考查了黑箱測試的方法。 解題要點 黑箱測試方法完全不考慮程序的內(nèi)部結(jié)構(gòu)和內(nèi)部特征,而只是根據(jù)程序功能導(dǎo)出測試用例。常 用的黑箱測試有等價分類法、邊值分析法、因果圖法和錯誤推測法。 考點鏈接 白箱測試。44. 軟件工程研究的內(nèi)容主要包括: 1 技術(shù)和軟件工程管理。(分數(shù): 2.00 )填空項 1: (正確答案:軟件開發(fā))解析: 解析 軟件工程包括軟件開發(fā)技術(shù)和軟件工程管理。其中軟件開發(fā)技術(shù)包括:軟件開發(fā)方法學(xué)、開 發(fā)過程、開發(fā)工具和軟件工具環(huán)境,其主體內(nèi)

38、容是軟件開發(fā)方法學(xué);軟件工程管理包括:軟件管理學(xué)、軟 件工程經(jīng)濟學(xué)、軟件心理學(xué)等內(nèi)容。45. 已有定義:char c= ' ;int a=1,b;( 此處 c的初值為空格字符),執(zhí)行b=!c &&a;后b的值為1(分數(shù): 2.00 )填空項 1: (正確答案: 0)解析:解析空格字符的ASQ碼值為32,所以!c o,那么0與任何值相與的結(jié)果都為0,可得b的值為 0。46. 若整型變量a和b中的值分別為7和9,要求按以下格式輸出 a和b的值:a=7b=9請完成輸出語句: printf("U /U",a,b);。(分數(shù): 2.00 )填空項 1: (正確

39、答案:a=%d/nb=%d/n或 a=%d/nb=%d評聽:在printf的格式控制符中,一般由“”和格式字符組成,如%d等,它的作用是將輸出的數(shù)據(jù)轉(zhuǎn)換為指定的格式輸出,格式說明總是由“”字符開始。d代表以整型數(shù)據(jù)的實際長度輸出。格式控制符中的其他字符按原樣輸出。另外如果要輸出回車符,則必需用 /n 這個轉(zhuǎn)義字符,即表示輸出時換行。) 解析:47. 設(shè)y為血型變量,請寫出描述“y是偶數(shù)”的表達式1。(分數(shù): 2.00 )填空項 1: (正確答案: (y%2)=0)解析:解析因符合偶數(shù)的條件是對 2取余為0,所以要描述y是偶數(shù)的表達式是(y%2)=0。48. 以下程序運行后的輸出結(jié)果是 U /U

40、。main()int a, b, c;a=25;b=025;c=0x25;printf("% d % d % d/n", a, b, c);(分數(shù): 2.00 )填空項 1: (正確答案: 25 21 37 )解析:解析本題中25是十進制整數(shù),025是八進制整數(shù),其對應(yīng)的十進制值為2X8+5=21, 0x25是十六進制整數(shù),其對應(yīng)的十進制值為2X 16+5=37 o49. 執(zhí)行下列語句段后,x的值是oint *p , x;x=100;p=&x;x=*p+50 ;(分數(shù): 2.00 )填空項 1: (正確答案: 150)解析:解析本題先給變量x賦初始值100,然后將指

41、針p指向變量x, *p是取指針p所指地址的內(nèi)容, 即 100,所以 x=100+50=150。50. 有下列程序;#include < stdio.h >main()char c;while(c=getchar() !=',') putchar(+C) ;程序運行時,如果從鍵盤輸入:A,B, < CR>,則輸出結(jié)果為 (分數(shù): 2.00 )填空項 1: (正確答案: B)解析:解析因為c是字符類型變量,它只能接收一個字符,所以 c=A,字符型變量在參與算術(shù)運算的時 候是用其相應(yīng)的ASCII碼參與運算的,這樣+c得到字母B的ASCII碼,用putchar函數(shù)輸出是輸出其相 應(yīng)的字符,所以是 B。51. 下列程序運行后的輸出的結(jié)果是 。#include < stdio.h >main()char s20;scanf("%s",s); printf("%s",s);運行程序,輸入

溫馨提示

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

評論

0/150

提交評論