2010年3月全國計算機等級考試二級C語言筆試真題及參考答案_第1頁
2010年3月全國計算機等級考試二級C語言筆試真題及參考答案_第2頁
2010年3月全國計算機等級考試二級C語言筆試真題及參考答案_第3頁
2010年3月全國計算機等級考試二級C語言筆試真題及參考答案_第4頁
2010年3月全國計算機等級考試二級C語言筆試真題及參考答案_第5頁
已閱讀5頁,還剩13頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、2010 年 3 月全國計算機等級考試二級c語言筆試真題及參考答案一、選擇題(1)下列敘述中正確的是a)對長度為n 的有序鏈表進行查找,最壞清況下需要的比較次數(shù)為n b)對長度為n 的有序鏈表進行對分查找,最壞情況下需要的比較次數(shù)為(n/2 )c)對長度為n 的有序鏈表進行對分查找,最壞情況下需要的比較次數(shù)為(log2n)d)對長度為n 的有序鏈表進行對分查找,最壞情況下需要的比較次數(shù)為(nlog2n)(2)算法的時間復雜度是指a)算法的執(zhí)行時間b)算法所處理的數(shù)據(jù)量c)算法程序中的語句或指令條數(shù)d)算法在執(zhí)行過程中所需要的基本運算次數(shù)(3)軟件按功能可以分為:應(yīng)用軟件、系統(tǒng)軟件和支撐軟件(或

2、工具軟件)。下面屬于系統(tǒng)軟件的是a)編輯軟件b)操作系統(tǒng)c)教務(wù)管理系統(tǒng)d)瀏覽器(4)軟件(程序)調(diào)試的任務(wù)是a)診斷和改正程序中的錯誤b)盡可能多地發(fā)現(xiàn)程序中的錯誤c)發(fā)現(xiàn)并改正程序中的所有錯誤d)確定程序中錯誤的性質(zhì)(5)數(shù)據(jù)流程圖( dfd圖)是a)軟件概要設(shè)計的工具b)軟件詳細設(shè)計的工具c)結(jié)構(gòu)化方法的需求分析工具d)面向?qū)ο蠓椒ǖ男枨蠓治龉ぞ撸?)軟件生命周期可分為定義階段,開發(fā)階段和維護階段。詳細設(shè)計屬于a)定義階段b)開發(fā)階段c)維護階段d)上述三個階段(7)數(shù)據(jù)庫管理系統(tǒng)中負責數(shù)據(jù)模式定義的語言是a)數(shù)據(jù)定義語言b)數(shù)據(jù)管理語言c)數(shù)據(jù)操縱語言d)數(shù)據(jù)控制語言(8)在學生管理

3、的關(guān)系數(shù)據(jù)庫中,存取一個學生信息的數(shù)據(jù)單位是a)文件b)數(shù)據(jù)庫c)字段d)記錄(9)數(shù)據(jù)庫設(shè)計中,用e-r 圖來描述信息結(jié)構(gòu)但不涉及信息在計算機中的表示,它屬于數(shù)據(jù)庫設(shè)計的a)需求分析階段b)邏輯設(shè)計階段c)概念設(shè)計階段d)物理設(shè)計階段(10)有兩個關(guān)系r和 t 如下:則由關(guān)系 k得到關(guān)系 t 的操作是a)選擇b)投影c)交d)并(11)以下敘述正確的是a)c語言程序是由過程和函數(shù)組成的b)c語言函數(shù)可以嵌套調(diào)用,例如:fun(fun(x) c)c語言函數(shù)不可以單獨編譯d)c語言中除了main 函數(shù),其他函數(shù)不可作為單獨文件形式存在(12)以下關(guān)于 c 語言的敘述中正確的是a)c語言中的注釋不

4、可以夾在變量名或關(guān)鍵字的中間b)c語言中的變量可以在使用之前的任何位置進行定義c)在 c語言算術(shù)表達式的書寫中,運算符兩側(cè)的運算數(shù)類型必須一致d)c語言的數(shù)值常量中夾帶空格不影響常量值的正確表示(13)以下 c 語言用戶標識符中,不合法的是a)_1 b)aabc c)a_b d)a-b (14)若有定義: double a=22;int i=0,k=18;,則不符合c語言規(guī)定的賦值語句是a)a=a+,i+; b)i= (a+k)=(i+k ); c)i=a%11; d)i !a; (15)有以下程序include main() char a,b,c,d; scanf (“%c%c ”,&

5、;a,&b) ; c=getchar (); d=getchar() ; printf(“%c%c%c%c n”,a,b,c,d) ; 當執(zhí)行程序時,按下列方式輸入數(shù)據(jù)(從第1 列開始, 代表回車,注意:回車也是一個字符)12 34 則輸出結(jié)果是a)1234 b)12 c)12 3 d)12 34 (16)以 i 關(guān)于 c 語言數(shù)據(jù)類型使用的敘述中錯誤的是a)若要準確無誤差的表示自然數(shù),應(yīng)使用整數(shù)類型b)若要保存帶有多位小數(shù)的數(shù)據(jù),應(yīng)使用雙精度類型c)若要處理如“人員信息”等含有不同類型的相關(guān)數(shù)據(jù),應(yīng)自定義結(jié)構(gòu)體類型d)若只處理“真”和“假”兩種邏輯值,應(yīng)使用邏輯類型(17)若 a 是

6、數(shù)值類型,則邏輯表達式(a=1)| (a!=1 )的值是a)1 b)0 c)2 d)不知道 a 的值,不能確定(18)以下選項中與if (a=1)a=b; else a+;語句功能不同的switch語句是a)switch (a)case:a=b;break; default:a+; b)switch (a=1)case 0:a=b;break; case 1:a+; c)switch (a)default:a+;break; case 1:a=b; d)switch (a=1)case 1:a=b;break; case 0:a+; (19)有如下嵌套的if語句if (ab)if (ac)k=

7、a; else k=c; else if (bc) k=b; else k=c; 以下選項中與上述if語句等價的語句是a)k( ab)? a:b;k (bc)? b:c; b)k( ab)?( bc)? a:b ):( bc)? b:c ); c)k( ab)?( ac)? a: ): (bc)? b:c ); d)k( ab)? a:b;k= (ac)? a:c; (20)有以下程序includestdio.hmain()in i,j,m=1; for (i=1;i3;i+ )for (j=3;j0;j-)if(i*j) 3)break; m=i*j; printf(m=%d n,m );

8、程序運行后的輸出結(jié)果是a)m=6 b)m=2 c)m=4 d)m=5 (21)有以下程序include(stdio.hmain()int al;b 2; for (;a 8;a+ ) b+=a;a+=2; printf(%d,%d n ,a,b); 程序運行后的輸出結(jié)果是a)9,18 b)8,11 c)7,11 d)10,14 (22)有以下程序,其中k 的初值為八進制數(shù)#include main()int k011;printf(%dn ,k+); 程序運行后的輸出結(jié)果是a)12 b)11 c)10 d)9 (23)下列語句組中,正確的是a)char *s;s=olympic; b)char

9、 s7;s=olympic; c)char *s;s=olympic ; d)char s7;s=olympic ; (24)以下關(guān)于 return語句的敘述中正確的是a)一個自定義函數(shù)中必須有一條return語句b)一個自定義函數(shù)中可以根據(jù)不同情況設(shè)置多條return語句c)定義成 void 類型的函數(shù)中可以有帶返回值的return語句d)沒有 return語句的自定義函數(shù)在執(zhí)行結(jié)束時不能返回到調(diào)用處(25)下列選項中,能正確定義數(shù)組的語句是a)int num0.2008; b)int num; c)int n=2008; int numn; d)#define n 2008 int num

10、n; (26)有以下程序#include 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(%e,%e n,b ,a); 程序運行后的輸出結(jié)果是a)b,b,b,a b)b,b,b,a c)a,b,b,a d)a,b,a,b (27)若有定義 int(*pt)3;,則下列說法正確的是a)定義了基類型為int的三個指針變量b)定義了基類型為int的具有三個元素的指針數(shù)組pt c)定義了一個名為*pt 、具有三個元素的整型數(shù)組d)定義了一個名為pt 的

11、指針變量,它可以指向每行有三個整數(shù)元素的二維數(shù)組(28)設(shè)有定義 double a10,*s=a;,以下能夠代表數(shù)組元素a3 的是a)(*s)3 b)*(s+3) c)*s3 d)*s+3 (29)有以下程序include(stdio.h)main()int a5=1,2,3,4,5,b5o,2,1,3,0,i,s0; for (i 0;i 5;i+ ) s s+abi); printf(%dn, s); 程序運行后的輸出結(jié)果是a)6 b)10 c)11 d)15 (30)有以下程序include main()int b 33=o,1,2,0,1,2,o,1,2,i,j,t=1; for (i

12、=0;i3;i+)for (j=ij=1;j+) t+=bibji; printf(%dn,t); 程序運行后的輸出結(jié)果是a)1 b)3 c)4 d)9 (31)若有以下定義和語句char s110=abcd!,*s2=n123; printf(%d %dn, strlen(s1),strlen(s2) ; 則輸出結(jié)果是a)5 5 b)10 5 c)10 7 d)5 8 (32)有以下程序#include #define n 8 void fun(int *x,int i)*x=* (xi ); main()int an=1,2,3,4,5,6,7,8,i; fun (a,2 ); for (

13、i=o;i n2;i+ )printf(%d,ai); printf(n ); 程序運行后的輸出結(jié)果是a)1313 b)2234 c)3234 d)1234 (33)有以下程序#include int f(int t,int n); main int a4=1,2,3,4,s; s=f (a,4 ); printf(%dn,s ); int f(int t,int n) if(n0) return tn-1+f(t,n-1 ); else return 0; 程序運行后的輸出結(jié)果是a)4 b)1o c)14 d)6 (34)有以下程序#include int fun() static int

14、x=1; x*2; return x; main()int i,s=1,for (i=1;i=2;i+) s=fun () ; printf(%dn,s ); 程序運行后的輸出結(jié)果是a)o b)1 c)4 d)8 (35)有以下程序#include #define sub (a) (a)- (a)main() int a=2,b=3,c=5,d; d=sub (a+b)*c; printf(%dn,d ); 程序運行后的輸出結(jié)果是a)0 b)-12 c)-20 d)10 (36)設(shè)有定義 : struct complex int real,unreal; data1=1,8,data2; 則以

15、下賦值語句中錯誤的是a)data2=data1; b)data2= (2,6 ); c)data2.real=data1.real; d)data2.real=data1.unreal; (37)有以下程序#include #include struct a int a; char b10; double c; void f(struct a t); main() struct a a=1001,zhangda,1098.0; f (a); printf(%d,%s,%6.1fn,a.a,a.b,a.c); void f(struct a t) t.a=1002; strcpy(t.b,cha

16、ngrong);t.c=1202.0; 程序運行后的輸出結(jié)果是a)1001,zhangda,1098.0 b)1002,changrong,1202.0 c)1001,ehangrong,1098.o d)1002,zhangda,1202.0 (38)有以下定義和語句struct workers int num;char name20;char c; struct int day; int month; int year; s; ; struct workers w,*pw; pw &w; 能給 w中 year 成員賦 1980 的語句是a)*pw.year 198o; b)w.ye

17、ar=1980; c)pw-year=1980; d)w.s.year=1980; (39)有以下程序#include main() int a=2,b=2,c=2; printf(%dn,a/b&c); 程序運行后的輸出結(jié)果是a)o b)1 c)2 d)3 (40)有以下程序#include main() file *fp;char str10; fp=fopen (myfile.dat,w); fputs (abc,fp);fclose(fp ); fpfopen (myfile.data,a+); fprintf(fp,%d,28); rewind (fp ); fscanf (

18、fp,%s,str); puts(str ); fclose (fp ); 程序運行后的輸出結(jié)果是a)abc b) 28c c) abc28 d)因類型不一致而出錯二、填空題(1)一個隊列的初始狀態(tài)為空?,F(xiàn)將元素a,b,c,d ,e,f,5,4,3,2,1 依次入隊,然后再依次退隊,則元素退隊的順序為【1】。(2)設(shè)某循環(huán)隊列的容量為50,如果頭指針 front=45 (指向隊頭元素的前一位置),尾指針rear=10(指向隊尾元素),則該循環(huán)隊列中共有【2】個元素。(3)設(shè)二叉樹如下:對該二叉樹進行后序遍歷的結(jié)果為【3】。(4)軟件是【4】、數(shù)據(jù)和文檔的集合。(5)有一個學生選課的關(guān)系,其中學

19、生的關(guān)系模式為:學生(學號,姓名,班級,年齡),課程的關(guān)系模式為:課程(課號,課程名,學時),其中兩個關(guān)系模式的鍵分別是學號和課號,則關(guān)系模式選課可定義為:選課(學號,【5】,成績)。(6)設(shè) x 為 int型變量,請寫出一個關(guān)系表達式【6】,用以判斷x 同時為 3 和 7 的倍數(shù)時,關(guān)系表達式的值為真。(7)有以下程序#include main() int a=1,b=2,c=3,d=0; if (a=1)if (b!=2 )if (c=3) d=1; else d=2; else if(c!=3 ) d=3; else d=4; else d=5; printf(“%d n”,d) ; 程

20、序運行后的輸出結(jié)果是【7】。(8)有以下程序#include main() int m,n; scanf (%d%d,&m,&n); while (m!=n) while(mn ) m=m-n; while (mn ) n=n-m; printf(“%d n”,m) ; 程序運行后,當輸入14 63 時,輸出結(jié)果是【8】。(9)有以下程序#include main() int i,j,a3=1,2,3,4,5,6,7,8,9; for (i=0;i3;i+)for (j=i;j3;j+) printf(“%d%,aij) ; printf(n ); 程序運行后的輸出結(jié)果是【9】

21、。(10)有以下程序#include main() int a=1,2,3,4,5,6,*k3,i=0; while (i3 ) ki=&a2*i; printf(%d,*ki); i+; 程序運行后的輸出結(jié)果是【10】。(11)有以下程序#include main() int a33=1,2,3,4,5,6,7,8,9; int b3=0,i; for (i=0;i3;i+) bi=ai2+a2i; for (i=0;i3;i+) printf(%d,bi); printf(n ); 程序運行后的輸出結(jié)果是【11】。(12)有以下程序#include #include void fu

22、n(char *str) char temp;int n,i; n=strlen(str ); temp=strn-1; for (i=n-1;i0;i-) stri=stri-1; str0=temp; main() char s50; scanf (%s,s ); fun(s); printf(%sn,s ); 程序運行后輸入:abcdef,則輸出結(jié)果是【12】。(13)以下程序的功能是:將值為三位正整數(shù)的變量x 中的數(shù)值按照個位、十位、百位的順序拆分并輸出。請?zhí)羁铡?include main() int x=256; printf(%d-%d-%dn, 【13】 ,x/10%10,x/100); (14)以下程序用以刪除字符串所有的空格,請?zhí)羁铡?i

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 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

提交評論