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

下載本文檔

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

文檔簡介

1、2005年4月全國計算機等級考試二級C+程序設(shè)計筆試試卷(考試時間90 分鐘,滿分100 分) 一、選擇題(1)-(10)每小題2分,(11)-(50)每小題1分,共60分)下列各題A)、B)、C)、D)四個選項中,只有一個選項是正確的。請將正確選項真涂在答題卡相應(yīng)位置上,答在試卷上不得分。 (1)數(shù)據(jù)的存儲結(jié)構(gòu)是指 A)存儲在外存中的數(shù)據(jù) B)數(shù)據(jù)所占的存儲空間量 C)數(shù)據(jù)在計算機中的順序存儲方式 D)數(shù)據(jù)的邏輯結(jié)構(gòu)中計算機中的表示 (2)下列關(guān)于棧的描述中錯誤的是 A)棧是先進后出的線性表 B)棧只能順序存儲 C)棧具有記憶作用 D)對棧的插入與刪除操作中,不需要改變棧底指針 (3)對于長

2、度為n的線性表,在最壞情況下,下列各排序法所對應(yīng)的比較次數(shù)中正確的是 A)冒泡排序為n/2 B)冒泡排序為n C)快速排序為n D)快速排序為n(n-1)/2 (4)對長度為n的線性表進行順序查找,在最壞情況下所需要的比較次數(shù)為 A)log2n B) n/2 C) n D) n+1 (5)下列對于線性鏈表的描述中正確的是 A)存儲空間不一定是連續(xù),且各元素的存儲順序是任意的 B)存儲空間不一定是連續(xù),且前件元素一定存儲在后件元素的前面 C)存儲空間必須連續(xù),且前件元素一定存儲在后件元素的前面 D)存儲空間必須連續(xù),且各元素的存儲順序是任意的 (6)下列對于軟件的描述中正確的是 A)軟件測試的目

3、的是證明程序是否正確 B)軟件測試的目的是使程序運行結(jié)果正確 C)軟件測試的目的是盡可能多地發(fā)現(xiàn)程序中的錯誤 D)軟件測試的目的是使程序符合結(jié)構(gòu)化原則 (7)為了使模塊盡可能獨立,要求 A)模塊的內(nèi)聚程序要盡量高,且各模塊間的耦合程序要盡量強 B)模塊的內(nèi)聚程序要盡量高,且各模塊間的耦合程序要盡量弱 C)模塊的內(nèi)聚程序要盡量低,且各模塊間的耦合程序要盡量弱 D)模塊的內(nèi)聚程序要盡量低,且各模塊間的耦合程序要盡量強 (8)下列描述中正確的是 A)程序就是軟件 B)軟件開發(fā)不受計算機系統(tǒng)的限制 C)軟件既是邏輯實體,又是物理實體 D)軟件是程序、數(shù)據(jù)與相關(guān)文檔的集合 (9)數(shù)據(jù)獨立性是數(shù)據(jù)庫技術(shù)的

4、重要特點之一。所謂數(shù)據(jù)獨立性是指 A)數(shù)據(jù)與程序獨立存放 B)不同的數(shù)據(jù)被存放在不同的文件中 C)不同的數(shù)據(jù)只能被對應(yīng)的應(yīng)用程序所使用 D)以上三種說法都不對 (10)用樹形結(jié)構(gòu)表示實體之間聯(lián)系的模型是 A)關(guān)系模型 B)網(wǎng)狀模型 C)層次模型 D)以上三個都是 (11)算法具有五個特性,以下選項中不屬于算法特性的是 A)有窮性 B)簡潔性 C)可行性 D)確定性 (12)以下選項中可作為C語言合法常量的是 A)-80. B)-080 C)-8e1.0 D)-80.0e (13)以下敘述中正確的是 A)用C程序?qū)崿F(xiàn)的算法必須要有輸入和輸出操作 B)用C程序?qū)崿F(xiàn)的算法可以沒有輸出但必須要有輸入

5、C)用C程序?qū)崿F(xiàn)的算法可以沒有輸入但必須要有輸出 D)用C程序?qū)崿F(xiàn)的算法可以既沒有輸入也沒有輸出 14.以下不能定義為用戶標識符的是 A)Main B)_0 C)_int D)sizeof (15)以下選項中,不能作為合法常量的是 A)1.234e04 C)1.234e+4 D)1.234e0 (16)數(shù)字字符0的ASCII值為48,若有以下程序 main() char a=1,b=2; printf(%c,b+); printf(%dn,b-a); 程序運行后的輸出結(jié)果是 A)3,2 B)50,2 C)2,2 D)2,50 (17)有以下程序 main() int m=12,n=34; pr

6、intf(%d%d,m+,+n); printf(%d%dn,n+,+m); 程序運行后的輸出結(jié)果是 A)12353514 B)12353513 C)12343514 D)12343513 (18)有定義語句:int b;char c10; ,則正確的輸入語句是 A)scanf(%d%s,&b,&c); B)scanf(%d%s,&b,c); C)scanf(%d%s,b,c); D)scanf(%d%s,b,&c); (19)有以下程序 main() int m,n,p; scanf(m=%dn=%dp=%d,&m,&n,&p); printf(%d%d%dn,m,n,p); 若想從鍵盤上輸

7、入數(shù)據(jù),使變量m中的值為123,n中的值為456,p中的值為789,則正確的輸入是 A)m=123n=456p=789 B)m=123 n=456 p=789 C)m=123,n=456,p=789 D)123 456 789 (20)有以下程序 main() int a,b,d=25; a=d/10%9; b=a&(-1); printf(%d,%dn,a,b); 程序運行后的輸出結(jié)果是 A)6,1 B)2,1 C)6,0 D)2,0 (21)有以下程序 main() int i=1,j=2,k=3; if(i+=1&(+j=3|k+=3) printf(%d %d %dn,i,j,k);

8、程序運行后的輸出結(jié)果是 A)1 2 3 B)2 3 4 C)2 2 3 D)2 3 3 (22)若整型變量a、b、c、d中的值依次為:1、4、3、2。則條件表達式ab?a:cd?c:d的值 A)1 B)2 c)3 D)4 (23)有以下程序 main() int p8=11,12,13,14,15,16,17,18,i=0,j=0; while(i+y?x:y; int f2(int x,int y)return xy?y:x; main() int a=4,b=3,c=5,d=2,e,f,g; e=f2(f1(a,b),f1(c,d); f=f1(f2(a,b),f2(c,d); g=a+b

9、+c+d-e-f; printf(%d,%d%dn,e,f,g); 程序運行后的輸出結(jié)果是 A)4,3,7 B)3,4,7 C)5,2,7 D)2,5,7 (27)已有定義:char a=xyz,b=x,y,z;,以下敘述中正確的是 A)數(shù)組a和b的長度相同 B)a數(shù)組長度小于b數(shù)組長度 C)a數(shù)組長度大于b數(shù)組長度 D)上述說法都不對 (28)有以下程序 void f(int *x,int *y) int t; t=*x;*x=*y;*y=t; main() int a8=1,2,3,4,5,6,7,8,i,*p,*q; p=a;q=&a7; while(pq) f(p,q); p+; q-

10、; for(i=0;i8;i+) printf(%d,ai); 程序運行后的輸出結(jié)果是 A)8,2,3,4,5,6,7,1, B)5,6,7,8,1,2,3,4, C)1,2,3,4,5,6,7,8, D)8,7,6,5,4,3,2,1, (29)有以下程序 main() int a33,*p,i; p=&a00; for(i=0;i9;i+) pi=i; for(i=0;i=n;i-) ai+1=ai; main() int i,aN=1,2,3,4,5,6,7,8,9,10; fun(a,2,9); for(i=0;i5;i+) printf(%d,ai); 程序運行后的輸出結(jié)果是 A)1

11、0234 B)12344 C)12334 D)12234 (32)有以下程序 main() int a32=0,(*ptr)2,i,j; for(i=0;i2;i+) ptr=a+i; scanf(%d,ptr); ptr+; for(i=0;i3;i+) for(j=0;j2;j+) printf(%2d,aij); printf(n); 若運行時輸入:1 2 3,則輸出結(jié)果為 A)產(chǎn)生錯誤信息 B)1 0 2 0 0 0 C)1 2 3 0 0 0 D)1 0 2 0 3 0 (33)有以下程序 prt(int *m,int n) int i; for(i=0;in;i+) mi+; ma

12、in() int a=1,2,3,4,5,i; prt(a,5); for(i=0;i5;i+) printf(%d,ai); 程序運行后的輸出結(jié)果是: A)1,2,3,4,5, B)2,3,4,5,6, C)3,4,5,6,7, D)2,3,4,5,1, (34)有以下程序 main() int a=1,2,3,4,5,6,7,8,9,0,*p; for(p=a;pa+10;p+) printf(%d,*p); 程序運行后的輸出結(jié)果是 A)1,2,3,4,5,6,7,8,9,0, B)2,3,4,5,6,7,8,9,10,1, C)0,1,2,3,4,5,6,7,8,9, D)1,1,1,1

13、,1,1,1,1,1,1, (35)有以下程序 #define P 3 #define F(int x) return (P*x*x); main() printf(%dn,F(3+5); 程序運行后的輸出結(jié)果是 A)192 B)29 C)25 D)編譯出錯 (36)有以下程序 main() int c=35; printf(%dn,c&c); 程序運行后的輸出結(jié)果是 A) 0 B) 70 C) 35 D) 1 (37)以下敘述中正確的是 A)預(yù)處理命令行必須位于源文件的開頭 B)在源文件的一行上可以有多條預(yù)處理命令 C)宏名必須用大寫字母表示 D)宏替換不占用程序的運行時間 (38)若有以下

14、說明和定義 union dt int a; char b; double c; data; 以下敘述中錯誤的是 A)data的每個成員起始地址都相同 B)變量data所占內(nèi)存字節(jié)數(shù)與成員c所占字節(jié)數(shù)相等 C)程序段:data.a=5;printf(%fn,data.c);輸出結(jié)果為5.000000 D)data可以作為函數(shù)的實參 (39)以下語句或語句組中,能正確進行字符串賦值的是 A)char *sp; *sp=right!; B)char s10; s=right!; C)char s10; *s=right!; D)char *sp=right!; (40)設(shè)有如下說明 typedef

15、struct ST long a; int b; char c2; NEW; 則下面敘述中正確的是 A)以上的說明形式非法 B)ST是一個結(jié)構(gòu)體類型 C)NEW是一個結(jié)構(gòu)體類型 D)NEW是一個結(jié)構(gòu)體變量 (41)有以下程序 main() int a=1,b; for(b=1;b=8) break; if(a%2=1) a+=5; continue; a-=3; printf(%dn,b); 程序運行后的輸出結(jié)果是 A)3 B)4 C)5 D)6 (42)有以下程序 main() char s=159,*p; p=s; printf(%c,*p+); printf(%c,*p+); 程序運行后

16、的輸出結(jié)果是 A)15 B)16 C)12 D)59 (43)有以下函數(shù) fun(char *a,char *b) while(*a!=0)&(*b!=0)&(*a=*b) a+; b+; return (*a-*b); 該函數(shù)的功能是 A)計算a和b所指字符串的長度之差 B)將b所指字符串復(fù)制到a所指字符串中 C)將b所指字符串連接到a所指字符串后面 D)比較a和b所指字符串的大小 (44)有以下程序 main() int num44=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,i,j; for(i=0;i4;i+) for(j=1;j=i;j+) prin

17、tf(%c, ); for(j= jnext=q-next; B)p-next=p-next-next; C)p-next=r; D)p=q-next; (48)以下對結(jié)構(gòu)體類型變量td的定義中,錯誤的是 A)typedef struct aa int n; float m; AA; AA td; B)struct aa int n; float m; td; struct aa td; C)struct int n; float m; aa; struct aa td; D)struct int n; float m; td; (49)以下與函數(shù)fseek(fp,0L,SEEK_SET)有相

18、同作用的是 A)feof(fp) B)ftell(fp) C)fgetc(fp) D)rewind(fp) (50)有以下程序 #include stdio.h void WriteStr(char *fn,char *str) FILE *fp; fp=fopen(fn,W); fputs(str,fp); fclose(fp); main() WriteStr(t1.dat,start); WriteStr(t1.dat,end); 程序運行后,文件t1.dat中的內(nèi)容是 A)start B)end C)startend D)endrt 二、填空題(每空2分,共40分) (1)某二*樹中,

19、度為2的結(jié)點有18個,則該二*樹中有 個葉子結(jié)點。 (2)在面向?qū)ο蟮姆椒ㄖ?,類的實例稱為 。 (3)診斷和改正程序中錯誤的工作通常稱為 。 (4)在關(guān)系數(shù)據(jù)庫中,把數(shù)據(jù)表示成二維表,每一個二維表稱為 。 (5)問題處理方案的正確而完整的描述稱為 . (6)以下程序運行時若從鍵盤輸入:10 20 30。輸出結(jié)果是 #include main() int i=0,j=0,k=0; scanf(%d%*d%d,&i,&j,&k); printf(%d%d%dn,i,j,k); (7)以下程序運行后的輸出結(jié)果是 . #define S(x) 4*x*x+1 main() int i=6,j=8; p

20、rintf(%dn,S(i+j); (8)以下程序運行后的輸出結(jié)果是 main() int a=3,b=4,c=5,t=99; if(ba&ac) t=a;a=c;c=t; if(ac&bc) t=b;b=a;a=t; printf(%d%d%dn,a,b,c); (9)以下程序運行后的輸出結(jié)果是 main() int a,b,c a=10;b=20;c=(a%b1); printf(%d %d %dn,a,b,c); (10)以下程序運行后的輸出結(jié)果是 main() char c1,c2; for(c1=0,c2=9;c1c2;c1+,c2-) printf(%c%c,c1,c2); pri

21、ntf(n); (11)已知字符A的ASCII代碼值為65,以下程序運行時若從鍵盤輸入:B33.輸出結(jié)果是 #include stdio.h main() char a,b; a=getchar(); scanf(%d,&b); a=a-A+0; b=b*2; printf(%c %cn,a,b); (12)以下程序中,fun函數(shù)的功能是求3行4列二維數(shù)組每行元素中的最大值.請?zhí)羁? bri void fun(int, int, int (*)4,int *) main() int a34=12,41,36,28,19,33,15,27,3,27,19,1,b3,i; fun(3,4,a,b)

22、; for(i=0;i3;i+) printf(%4d,bi); printf(n); void fun(int m,int n,int ar4,int *br) int i,j,x; for(i=0;im;i+) x=ari0; for(j=0;jn;j+) if(xarij) x=arij; 【12】 =x; (13)以下程序運行后的輸出結(jié)果是 void swap(int x,int y) int t; t=x;x=y;y=t; printf(%d %d ,x,y); main() int a=3,b=4; swap(a,b); printf(%d %dn,a,b); (14)以下程序運行

23、后的輸出結(jié)果是 #include string.h void fun(char *s,int p,int k) int i; for(i=p;ik-1;i+) si=si+2; main() char s=abcdefg; fun(s,3,strlen(s); puts(s); (15)以下程序運行后的輸出結(jié)果是 #include string.h main() char ch=abc,x34; int i; for(i=0;i3;i+) strcpy(xi,ch); for(i=0;i3;i+) printf(%s,&xii); printf(n); (16)以下程序運行后的輸出結(jié)果是 fun(int a

溫馨提示

  • 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

提交評論