3月計(jì)算機(jī)二級C語言筆試試題及答案解析_第1頁
3月計(jì)算機(jī)二級C語言筆試試題及答案解析_第2頁
3月計(jì)算機(jī)二級C語言筆試試題及答案解析_第3頁
3月計(jì)算機(jī)二級C語言筆試試題及答案解析_第4頁
3月計(jì)算機(jī)二級C語言筆試試題及答案解析_第5頁
已閱讀5頁,還剩7頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、一、 選擇題(1)下列關(guān)于棧敘述正確的是A)棧頂元素最先能被刪除B)棧頂元素最后才能被刪除C)棧底元素永遠(yuǎn)不能被刪除D)以上三種說法都不對(2)下列敘述中正確的是A)有一個以上根結(jié)點(diǎn)的數(shù)據(jù)結(jié)構(gòu)不一定是非線性結(jié)構(gòu)B)只有一個根結(jié)點(diǎn)的數(shù)據(jù)結(jié)構(gòu)不一定是線性結(jié)構(gòu)C)循環(huán)鏈表是非線性結(jié)構(gòu)D)雙向鏈表是非線性結(jié)構(gòu)(3)某二叉樹共有7個結(jié)點(diǎn),其中葉子結(jié)點(diǎn)只有1個,則該二叉樹的深度為(假設(shè)根結(jié)點(diǎn)在第1層)A)3 B)4 C)6 D)7(4)在軟件開發(fā)中,需求分析階段產(chǎn)生的主要文檔是A)軟件集成測試計(jì)劃 B)軟件詳細(xì)設(shè)計(jì)說明書C)用戶手冊 D)軟件需求規(guī)格說明書(5)結(jié)構(gòu)化程序所要求的基本結(jié)構(gòu)不包括A)順序結(jié)構(gòu)

2、 B)GOTO跳轉(zhuǎn)C)選擇(分支)結(jié)構(gòu) D)重復(fù)(循環(huán))結(jié)構(gòu)(6)下面描述中錯誤的是A)系統(tǒng)總體結(jié)構(gòu)圖支持軟件系統(tǒng)的詳細(xì)設(shè)計(jì)B)軟件設(shè)計(jì)是將軟件需求轉(zhuǎn)換為軟件表示的過程C)數(shù)據(jù)結(jié)構(gòu)與數(shù)據(jù)庫設(shè)計(jì)是軟件設(shè)計(jì)的任務(wù)之一D)PAD圖是軟件詳細(xì)設(shè)計(jì)的表示工具(7)負(fù)責(zé)數(shù)據(jù)庫中查詢操作的數(shù)據(jù)庫語言是A)數(shù)據(jù)定義語言B)數(shù)據(jù)管理語言C)數(shù)據(jù)操縱語言D)數(shù)據(jù)控制語言(8)一個教師可講授多門課程,一門課程可由多個教師講授。則實(shí)體教師和課程間的聯(lián)系是A)1:1聯(lián)系 B)1:m聯(lián)系C)m:1聯(lián)系 D)m:n聯(lián)系(9)有三個關(guān)系R、S和T如下:則由關(guān)系R和S得到關(guān)系T的操作是A)自然連接 B)交 C)除 D)并(10

3、)定義無符號整數(shù)類為UInt,下面可以作為類UInt實(shí)例化值的是A)-369 B)369 C)0.369 D)整數(shù)集合1,2,3,4,5(11)計(jì)算機(jī)高級語言程序的運(yùn)行方法有編譯執(zhí)行和解釋執(zhí)行兩種,以下敘述中正確的是A)C語言程序僅可以編譯執(zhí)行B)C語言程序僅可以解釋執(zhí)行C)C語言程序既可以編譯執(zhí)行又可以解釋執(zhí)行D)以上說法都不對(12)以下敘述中錯誤的是A)C語言的可執(zhí)行程序是由一系列機(jī)器指令構(gòu)成的B)用C語言編寫的源程序不能直接在計(jì)算機(jī)上運(yùn)行C)通過編譯得到的二進(jìn)制目標(biāo)程序需要連接才可以運(yùn)行(13)以下選項(xiàng)中不能用作C程序合法常量的是A)1,234 B)'123'C)123

4、 D)"x7G"(14)以下選項(xiàng)中可用作C程序合法實(shí)數(shù)的是(15)若有定義語句:int a=3,b=2,c=1;,以下選項(xiàng)中錯誤的賦值表達(dá)式是A)a=(b=4)=3; B)a=b=c+1;C)a=(b=4)+c; D)a=1+(b=c=4);(16)有以下程序段char name20;int num;scanf("name=%s num=%d",name;&num);當(dāng)執(zhí)行上述程序段,并從鍵盤輸入:name=Lili num=1001<回車>后,name的值為A)LiliB)name=LiliC)Lili num=D)name=Lil

5、i num=1001(17)if語句的基本形式是:if(表達(dá)式)語句,以下關(guān)于“表達(dá)式”值的敘述中正確的是A)必須是邏輯值 B)必須是整數(shù)值C)必須是正數(shù) D)可以是任意合法的數(shù)值(18)有以下程序#include main() int x=011;printf("%dn",+x);程序運(yùn)行后的輸出結(jié)果是A)12 B)11 C)10 D)9(19)有以下程序#include main() int s;scanf("%d",&s);while(s>0) switch(s) case1:printf("%d",s+5);ca

6、se2:printf("%d",s+4); break;case3:printf("%d",s+3);default:printf("%d",s+1);break;scanf("%d",&s);運(yùn)行時,若輸入1 2 3 4 5 0<回車>,則輸出結(jié)果是A)6566456 B)66656 C)66666 D)6666656(20)有以下程序段int i,n;for(i=0;i<8;i+) n=rand()%5;switch (n) case 1:case 3:printf("%dn

7、",n); break;case 2:case 4:printf("%dn",n); continue;case 0:exit(0);printf("%dn",n);以下關(guān)于程序段執(zhí)行情況的敘述,正確的是A)for循環(huán)語句固定執(zhí)行8次B)當(dāng)產(chǎn)生的隨機(jī)數(shù)n為4時結(jié)束循環(huán)操作C)當(dāng)產(chǎn)生的隨機(jī)數(shù)n為1和2時不做任何操作D)當(dāng)產(chǎn)生的隨機(jī)數(shù)n為0時結(jié)束程序運(yùn)行(21)有以下程序#include main() char s="012xy08s34f4w2"int i,n=0;for(i=0;si!=0;i+)if(si>='

8、;0'&&si<='9') n+;printf("%dn",n);程序運(yùn)行后的輸出結(jié)果是A)0 B)3 C)7 D)8(22)若i和k都是int類型變量,有以下for語句for(i=0,k=-1;k=1;k+) printf("*n");下面關(guān)于語句執(zhí)行情況的敘述中正確的是A)循環(huán)體執(zhí)行兩次B)循環(huán)體執(zhí)行一次C)循環(huán)體一次也不執(zhí)行D)構(gòu)成無限循環(huán)(23)有以下程序#include main() char b,c; int i;b='a' c='A'for(i=0;i<6;

9、i+) if(i%2) putchar(i+b);else putchar(i+c); printf("n");程序運(yùn)行后的輸出結(jié)果是A)ABCDEF B)AbCdEf C)aBcDeF D)abcdef(24)設(shè)有定義:double x10,*p=x;,以下能給數(shù)組x下標(biāo)為6的元素讀入數(shù)據(jù)的正確語句是A)scanf("%f",&x6); B)scanf("%lf",*(x+6);C)scanf("%lf",p+6); D)scanf("%lf",p6);(25)有以下程序(說明:字母A

10、的ASCII碼值是65)#include void fun(char *s) while(*s) if(*s%2) printf("%c",*s);s+;main() char a="BYTE"fun(a); printf("n");程序運(yùn)行后的輸出結(jié)果是A)BY B)BT C)YT D) YE(26)有以下程序段#include main() while( getchar()!='n');以下敘述中正確的是A)此while語句將無限循環(huán)B) getchar()不可以出現(xiàn)在while語句的條件表達(dá)式中C)當(dāng)執(zhí)行此whi

11、le語句時,只有按回車鍵程序才能繼續(xù)執(zhí)行D)當(dāng)執(zhí)行此while語句時,按任意鍵程序就能繼續(xù)執(zhí)行(27)有以下程序#include main() int x=1,y=0;if(!x) y+;else if(x=0)if (x) y+=2;else y+=3;printf("%dn",y);程序運(yùn)行后的輸出結(jié)果是A)3 B)2 C)1 D) 0(28)若有定義語句:char s310,(*k)3,*p;,則以下賦值語句正確的是A)p=s; B)p=k; C)p=s0; D)k=s;(29)有以下程序#include void fun(char *c) while(*c) if(

12、*c>='a'&&*c<='z') *c=*c-('a'-'A');c+;main() char s81;gets(s); fun(s); puts(s):當(dāng)執(zhí)行程序時從鍵盤上輸入Hello Beijing<回車>,則程序的輸出結(jié)果是A)hellobeijing B)Hello Beijing C)HELLO BEIJING D)hELLO Beijing(30)以下函數(shù)的功能是:通過鍵盤輸入數(shù)據(jù),為數(shù)組中的所有元素賦值。#include #define N 10void fun(int x

13、N) int i=0;while(i<> 在程序中下劃線處應(yīng)填入的是A)x+i B)&xi+1C)x+(i+) D)&x+i(31)有以下程序#include main() char a30,b30;scanf("%s",a);gets(b);printf("%sn %sn",a,b);程序運(yùn)行時若輸入:how are you? I am fine<回車>則輸出結(jié)果是A)how are you? B)howI am fine are you? I am fineC)how are you? I am fine D)

14、row are you?(32)設(shè)有如下函數(shù)定義int fun(int k) if (k<1) return 0;else if(k=1) return 1;else return fun(k-1)+1;若執(zhí)行調(diào)用語句:n=fun(3);,則函數(shù)fun總共被調(diào)用的次數(shù)是A)2 B)3 C)4 D)5(33)有以下程序#include int fun (int x,int y) if (x!=y) return (x+y);2);else return (x);main() int a=4,b=5,c=6;printf("%dn",fun(2*a,fun(b,c);程序

15、運(yùn)行后的輸出結(jié)果是A)3 B)6 C)8 D)12(34)有以下程序#include int fun() static int x=1;x*=2;return x;main() int i,s=1;for(i=1;i<=3;i+) s*=fun();printf("%dn",s);程序運(yùn)行后的輸出結(jié)果是A)0 B)10 C)30 D)64(35)有以下程序#include #define S(x) 4*(x)*x+1main() int k=5,j=2;printf("%dn",S(k+j);程序運(yùn)行后的輸出結(jié)果是A)197 B)143 C)33

16、D)28(36)設(shè)有定義:struct char mark12;int num1;double num2; t1,t2;,若變量均已正確賦初值,則以下語句中錯誤的是A)t1=t2; B)t2.num1=t1.num1;C)t2.mark=t1.mark; D)t2.num2=t1.num2;(37)有以下程序#include struct ord int x,y;dt2=1,2,3,4;main()struct ord *p=dt;printf("%d,",+(p->x); printf("%dn",+(p->y);程序運(yùn)行后的輸出結(jié)果是A)

17、1,2 B)4,1 C)3,4 D)2,3(38)有以下程序#include struct S int a,b;data2=10,100,20,200;main() struct S p=data1;printf("%dn",+(p.a);程序運(yùn)行后的輸出結(jié)果是A)10 B)11 C)20 D)21(39)有以下程序#include main() unsigned char a=8,c;c=a>>3;printf("%dn",c);程序運(yùn)行后的輸出結(jié)果是A)32 B)16 C)1 D)0(40)設(shè)fp已定義,執(zhí)行語句fp=fopen(&quo

18、t;file","w");后,以下針對文本文件file操作敘述的選項(xiàng)中正確的是A)寫操作結(jié)束后可以從頭開始讀 B)只能寫不能讀C)可以在原有內(nèi)容后追加寫 D)可以隨意讀和寫二、填空題(1)有序線性表能進(jìn)行二分查找的前提是該線性表必須是 【1】 存儲的。(2)一棵二叉樹的中序遍歷結(jié)果為DBEAFC,前序遍歷結(jié)果為ABDECF,則后序遍歷結(jié)果為 【2】 。(3)對軟件設(shè)計(jì)的最小單位(模塊或程序單元)進(jìn)行的測試通常稱為 【3】 測試。(4)實(shí)體完整性約束要求關(guān)系數(shù)據(jù)庫中元組的 【4】 屬性值不能為空。(5)在關(guān)系A(chǔ)(S,SN,D)和關(guān)系B(D,CN,NM)中,A的主關(guān)鍵

19、字是S,B的主關(guān)鍵字是D,則稱 【5】 是關(guān)系A(chǔ)的外碼。(6)以下程序運(yùn)行后的輸出結(jié)果是 【6】 。#include main() int a;a=(int)(double)(3/2)+0.5+(int)1.99*2);printf("%dn",a);(7)有以下程序#include main() int x;scanf("%d",&x);if(x>15) printf("%d",x-5);if(x>10) printf("%d",x);if(x>5) printf("%dn&q

20、uot;,x+5);若程序運(yùn)行時從鍵盤輸入12<回車>,則輸出結(jié)果為 【7】 。(8)有以下程序(說明:字符0的ASCII碼值為48)#include main() char c1,c2;scanf("%d",&c1);c2=c1+9;printf("%c%cn",c1,c2);若程序運(yùn)行時從鍵盤輸入48<回車>,則輸出結(jié)果為 【8】 。(9)有以下函數(shù)void prt(char ch,int n) int i;for(i=1;i<=n;i+)printf(i%6!=0?"%c":"%c

21、n",ch);執(zhí)行調(diào)用語句prt('*',24);后,函數(shù)共輸出了 【9】 行*號。(10)以下程序運(yùn)行后的輸出結(jié)果是 【10】 。#include main() int x=10,y=20,t=0;if(x=y)t=x;x=y;y=t;printf("%d %dn",x,y);(11)己知a所指的數(shù)組中有N個元素。函數(shù)fun的功能是,將下標(biāo)k(k>0)開始的后續(xù)元素全部向前移動一個位置。請?zhí)羁?。void fun(int aN,int k) int i;for(i=k;i (12)有以下程序,請?jiān)?【12】 處填寫正確語句,使程序可正常編譯運(yùn)

22、行。#include 【12】 ;main() double x,y,(*p)();scanf("%lf%lf",&x,&y);p=avg;printf("%fn",(*p)(x,y);double avg(double a,double b) return(a+b)/2);(13)以下程序運(yùn)行后的輸出結(jié)果是【13】。#include main() int i,n5=0;for(i=1;i<=4;i+) ni=ni-1*2+1; printf("%d",ni); printf("n");(14

23、)以下程序運(yùn)行后的輸出結(jié)果是【14】。#include #include #include main() char *p; int i;p=(char *)malloc(sizeof(char)*20);strcpy(p,"welcome");for(i=6;i>=0;i-) putchar(*(p+i);printf("n-"); free(p);(15)以下程序運(yùn)行后的輸出結(jié)果是 【15】 。#include main() FILE *fp; int x6=1,2,3,4,5,6,i;fp=fopen("test.dat",

24、"wb");fwrite(x,sizeof(int),3,fp);rewind(fp);fread(x,sizeof(int),3,fp);for(i=0;i<6;i+) printf("%d",xi);printf("n");fclose(fp);2011年3月計(jì)算機(jī)等級考試二級C語言試卷分析2011年3月27日,全國計(jì)算機(jī)等級考試如期進(jìn)行,從論壇部分考生對本次做題的情況反映來看,普遍認(rèn)為上午試題難度適中,部分試題所提供的選項(xiàng)對概念理論方面考查的相當(dāng)細(xì)致。而在下午部分難度有所降低,題型也比較簡單??偟膩碚f,本次考試所涉及的知識和題型絕大多數(shù)在希賽教育出版的全國計(jì)算機(jī)等級考試考點(diǎn)分析、題解與模擬系列圖書范圍之中。筆試部分的知識點(diǎn)分布情況如下:對應(yīng)本書章節(jié)名稱分 數(shù)考查知識點(diǎn)數(shù)據(jù)結(jié)構(gòu)與算法10棧,線性結(jié)構(gòu)和非線性結(jié)構(gòu),二叉樹,二分查找。程序設(shè)計(jì)基礎(chǔ)2結(jié)構(gòu)化程序基本結(jié)構(gòu)軟件工程基礎(chǔ)6需求分析,軟件設(shè)計(jì),軟件測試數(shù)據(jù)庫設(shè)計(jì)基礎(chǔ)10數(shù)據(jù)庫語言,關(guān)系以及關(guān)系運(yùn)算,完整性約束,關(guān)鍵字。C程序設(shè)計(jì)的初步知識10整型,編譯和解釋,程序執(zhí)行過程,常量,實(shí)型。順序結(jié)構(gòu)程序設(shè)計(jì)6賦值表達(dá)式,輸入輸出函數(shù),選擇結(jié)構(gòu)程序設(shè)計(jì)10If語句,switch語句,條件表達(dá)式循環(huán)結(jié)構(gòu)程序設(shè)計(jì)8For循環(huán),whil

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論