二級C語言歷年筆試真題_第1頁
二級C語言歷年筆試真題_第2頁
二級C語言歷年筆試真題_第3頁
二級C語言歷年筆試真題_第4頁
二級C語言歷年筆試真題_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

2010年9月全國計算機(jī)二級C語言筆試D)軟件的運(yùn)行維護(hù)過程序、分支、循環(huán)三種結(jié)構(gòu)組成

試題:文字版(無答案)(6)面向?qū)ο蠓椒ㄖ?,繼承是指B)結(jié)構(gòu)化程序使用goto語句會很

A)一組對象所具有的相似性質(zhì)便捷

一、選擇題(每小題2分,共70分)B)一個對象具有另一個對象的性質(zhì)C)在C語言中,程序的模塊化是

下列各題A)、B)、C)、D)四C)各對象之間的共同性質(zhì)利用函數(shù)實現(xiàn)的

個選項中,只有一個選項是正確的。請D)類之間共享屬性和操作的機(jī)制D)由三種基本結(jié)構(gòu)構(gòu)成的程序只能

將正確選項填涂在答題卡相應(yīng)位置上,(7)層次型、網(wǎng)狀型和關(guān)系型數(shù)據(jù)庫解決小規(guī)模的問題

答在試卷上不得分。劃分原則是(12)以下關(guān)于簡單程序設(shè)計的步驟

(1)下列敘述中正確的是A)記錄長度利順序的說法中正確的是

A)線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu)與順序存B)文件的大小A)確定算法后,整理并寫出文檔,

儲結(jié)構(gòu)所需要的存儲空間是相同的

C)聯(lián)系的復(fù)雜程度最后進(jìn)行編碼和上機(jī)調(diào)試

線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu)所需要的

B)D)數(shù)據(jù)之間的聯(lián)系方式B)首先確定數(shù)據(jù)結(jié)構(gòu),然后確定算

存儲空間一般要多于順序存儲結(jié)構(gòu)(8)一個工作人員可以使用多臺計算法,再編碼,并上機(jī)調(diào)試,最后整理文

C)線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu)所需要的機(jī),而一臺計算機(jī)可被多個人使用,則檔

存儲空間一般要少于順序存儲結(jié)構(gòu)實體工作人員、與實體計算機(jī)之間的聯(lián)C)先編碼和上機(jī)調(diào)試,在編碼過程

D)上述三種說法都不對系是中確定算法和數(shù)據(jù)結(jié)構(gòu),最后整理文檔

(2)下列敘述中正確的是A)一對一D)先寫好文檔,再根據(jù)文檔進(jìn)行編

A)在棧中,棧中元素隨棧底指針與B)一對多碼和上機(jī)調(diào)試,最后確定算法和數(shù)據(jù)結(jié)

棧頂指針的變化而動態(tài)變化C)多對多構(gòu)

B)在棧中,棧頂指針不變,棧中元D)多對一(13)以下敘述中錯誤的是

素隨棧底指針的變化而動態(tài)變化

(9)數(shù)據(jù)庫設(shè)計中反映用戶對數(shù)據(jù)要A)C程序在運(yùn)行過程中所有計算

C)在棧中,棧底指針不變,棧中元求的模式是都以二進(jìn)制方式進(jìn)行

素隨棧頂指針的變化而動態(tài)變化A)內(nèi)模式B)C程序在運(yùn)行過程中所有計算都

D)上述三種說法都不對B)概念模式以十進(jìn)制方式進(jìn)行

3)軟件測試的目的是C)外模式C)所有C程序都需要編譯鏈接無

A)評估軟件可靠性D)設(shè)計模式誤后才能運(yùn)行

B)發(fā)現(xiàn)并改正程序中的錯誤(10)有三個關(guān)系R、S和T如下:D)C程序中整型變量只能存放整

C)改正程序中的錯誤數(shù),實型變量只能存放浮點數(shù)

D)發(fā)現(xiàn)程序中的錯誤(14)有以下定義:inta;longb;

(4)下面描述中,不屬于軟件危機(jī)表doublex,y;則以下選項中正確的表達(dá)

現(xiàn)的是式是

A)軟件過程不規(guī)范A)a%(int)(x-y)

B)軟件開發(fā)生產(chǎn)率低則由關(guān)系R和S得到關(guān)系T的操作B)a=x!=y;

C)軟件質(zhì)量難以控制C)(a*y)%b

D)軟件成本不斷提高A)自然連接D)y=x+y=x

(5)軟件生命周期是指B)交(15)以下選項中能表示合法常量的

A)軟件產(chǎn)品從提出、實現(xiàn)、使用維C)投影是

護(hù)到停止使用退役的過程D)并A)整數(shù):I,200

B)軟件從需求分析、設(shè)計、實現(xiàn)到(11)以下關(guān)于結(jié)構(gòu)化程序設(shè)計的敘述B)實數(shù):1.5E2.0

測試完成的過程中正確的是C)字符斜杠:%

C)軟件的開發(fā)過程A)一個結(jié)構(gòu)化程序必須同時由順D)字符串:"\007"

(16)表達(dá)式a+=a-=a=9的值是case1:b++;break;case1.(23)有以下程序

A)90:b++;break;#includeVstdio.h>

B)_9default:a++;b++;default#include<string.h>

C)18:a++;b++;main()

D)0}){charxE]="STRING”;

(17)若變量已正確定義,在if(W)p(20)有以下程序x[oj=o;x[i]=、(r;x[2J

rintf("%d\n,k");中,以下不可替代W#include<stdio.h>='0';

的是main()printf("%d%d\n",sizeof(x),

A)a<>b+c{inta=l>b=2;strlen(x));

B)ch=getchar()while(a<6){b+=a;a+=2;b%二}

C)a==b+c10;)程序運(yùn)行后的輸出結(jié)果是

D)a++printf("%d,%d\n”,a,b);A)61

(18)有以下程序)B)70

#include<stdio.h>程序運(yùn)行后的輸出結(jié)果是063

main()A)5,11D)71

{inta=Lb=0;B)7,1(24)有以下程序

if(!a)b++;C)7,11#include<stdio.h>

elseif(a==0)if(a)b+=2;D)6,1Intf(intx);

elseb+=3;(21)有以下程序main()

printf(,,%d\rf,,b);#include<stdio.h>{intn=l,m;

}main()m=f(f(f(n)));printf("%d

程序運(yùn)行后的輸出結(jié)果是{inty=10;\n”,m);

A)0while(y-);}

B)1printf("Y=%d\n",Y);intf(intx)

C)2}{returnx*2;}

D)3程序執(zhí)行后的輸出結(jié)果是程序運(yùn)行后的輸出結(jié)果是

(19)若有定義語句inta,b;doublex;A)y=0A)1

則下列選項中沒有錯誤的是B)y=-1B)2

A)switch(x%2)B)swiC)y=lC)4

tch((int)x/2.0D)while構(gòu)成無限循環(huán)D)8

{case0:a++;break;{case0:(22)有以下程序(25)以下程序段完全正確的是

a++;break;#includeVstdio.h>A)int*p;scanf(”%d”,&p);

case1:b++;break;case1:main()B)int*p;scanf("%d”,p);

b++;break;{chars[J="rstuv”;C)intk,*p=&k;scanf("%d",p);

default:a++;b++;default:printf(''%c\n",*s+2);D)intk,*p:;*p=&k;scanf("%

a++;b++;}d”,p);

})程序運(yùn)行后的輸出結(jié)果是(26)有定義語句:int*p[4];以下選項

C)switch((int)x%2)D)sA)tuv中與此語句等價的是

witch((int)(x)%2)B)字符t的ASCII碼值A(chǔ))intp[4];

{case0:a++;break;{case0.C)tB)int**p;

0:a++;break;D)出昔C)int*(p[4j);

D)int(*p)F4j;{intaaTlOj={1>2、3、4、5、為小寫字母

(27)下列定義數(shù)組的語句中,正6、7),i;#include<stdio.h>

確的是fun(aa>7);#include<ctype.h>

A)intN=10;B)#definefor(i=0,i<7;i++)printf("%@”,voidfun(char*p)

N10aaLi]));{inti=0;

intx[N];intx[N];printf("\n");while(p[i])

C)intx[0..10];D)intxL];){if(p[i]==''&&islower(pFi-1J))

(28)若要定義一個具有5個元素的程序運(yùn)行后的輸出結(jié)果是

整型數(shù)組,以下錯誤的定義語句是A)725,4,3,6,1i++;

A)inta[5]={0};B)1,6,345,2,7}

B)intb[]={0,0,0,0,0);C)7,6,5,4321)

C)intc[2+3];D)1,7,3,562」main()

D)inti=5,d[i];(31)下列選項中,能夠滿足“若字符{charsi[100]="abcdEFG!”;

(29)有以下程序串si等于字符串s2,則執(zhí)行ST”要求的是fun(si);printf("%s\n",si);

#include<stdio.h>A)if(strcmp(s2,sl)==0)ST;)

voidf(int*p);B)if(sl=s2)ST;程序運(yùn)行后的輸出結(jié)果是

main()C)if(strcpy(s1,s2)==1)ST;A)abcdEFG!

{inta[5]={1,2,3,4,5),D)if(sl-s2==0)ST;B)AbCdEFg!

(32)以下不能將s所指字符串正確C)aBcDEFG!

f(r);printf("%d\n";*r);復(fù)制到t所指存儲空間的是D)abcdEFg!

}A)while(*t=*s){t++;s++;}(35)有以下程序

voidf(int*p)B)for(i=O;t[i]=s[i];i++);#include<stdio.h>

{p=p+3;printf("%d,”,*p);}C)do{*t++=*s++;}while(*s);voidfun(intx)

程序運(yùn)行后的輸出結(jié)果是D)for(i=O,j=O;t[i++]=s[j++];);{if(x/2>1)fun(x/2);

A)1,4printf("%d”,x);

(33)有以下程序(strcat函數(shù)用

B)4,4)

以連接兩個字符串)

C)3,1main()

D)4,1#include<stdio.h>{fun(7);printf("\n");}

(30)有以下程序(函數(shù)ftm只對下標(biāo)#include<string.h>程序運(yùn)行后的輸出結(jié)果是

為偶數(shù)的元素進(jìn)行操作)main()A)137

#include<stdio.h>{chara[20]="ABCD\OEFG\0'',B)731

口;

voidfun(int*a;intn)b="IJK”073

;;

{inti、j>k、t;strcat(a,b)printf("%s\n",a)D)37

for(i=0;i<n-1;l+=2)}(36)有以下程序

程序運(yùn)行后的輸出結(jié)果是

{k=i「#include<stdio.h>

for(j=i;j<n;j+=2)if(a[j]>aA)ABCDE\OFG\O1JKintfun()

(k])k=j;B)ABCDIJK{staticintx=l;

t=a(i];a(i]=aEk];a(k]=t;C)IJKx+=l;returnx;

D)EFGIJK

})

有以下程序,程序中庫函數(shù)

)(34)islmain()

main()ower(ch)用以判斷ch中的字母是否{inti;s=l;

for(i=l;i<=5;i++)s+=fun();(40)有以下程序printf("%d%d\n”,a,b);

printf("%d\n”,s);#includeVstdio.h>}

)main()

程序運(yùn)行后的輸出結(jié)果是{shortc=124;

(有以下程序

A)11c=c;7)

B)21printf("%d\n"、C);#include<stdio.h>

C)6)main()

D)120若要使程序的運(yùn)行結(jié)果為248,解{intx,Y;

(37)有以下程序下劃線處填入的是scanf("%2d%ld",&x,&y);pr

%,;

#include<stdio.h>A)?2B)1248C)&0248intf("d\n"x+y)

)

#include<stdlib.h>D)?1

程序運(yùn)行時輸入:程序的運(yùn)

Main()1234567

二、填空題(每空分,共分)

{int*a.*b,*c;230行結(jié)果是【7】。

請將每空的正確答案寫在答題卡

a=b=c=(int*)malloc(sizeof(int));

【】至【】序號的橫線上,答在試卷在語言中,當(dāng)表達(dá)式值為

*a=l;*b=2,*c=3:115(8)C0

上不得分。時表示邏輯值“假”,當(dāng)表達(dá)式值為

a=b;[8]

時表示邏輯值“真”。

printf("%d,%d,%d\n”,*a,

(1)一個棧的初始狀態(tài)為空。首先

*b,*c);

將元素5,4,321依次入棧,然后退棧一(9)有以下程序

)

次,再將元素A,B,C,D依次入棧,之后#include<stdio.h>

程序運(yùn)行后的輸出結(jié)果是

將所有元素全部退棧,則所有元素退棧main()

A)3,3,3B)2,2,3C)1,2,3D)

(包括中間退棧的元素)的順序為【1】{inti,n[]={0,0,0,0,0};

1,1,3

for(i=l;i<=4;i++)

(38)有以下程序

(2)在長度為n的線性表中,尋找{n[i]=n[i-l]*3+l;printf("%d",n

#include<stdio.h>

最大項至少需要比較【2】次。[i]);)

main()

)

{ints,t>A=10;doubleB=6;

(3)一棵二叉樹有10個度為1的程序運(yùn)行后的輸出結(jié)果是[9】o

s=sizeof(A);t=sizeof(B);

結(jié)點,7個度為2的結(jié)點,則該二叉樹共

printf("%d,%d\n”,s,t);

有【3】個結(jié)點。(10)以下fun函數(shù)的功能是:找

}

出具有N個元素的一維數(shù)組中的最小

在VC6平臺上編譯運(yùn)行,程序運(yùn)行

(4)僅由順序、選擇(分支)和重值,并作為函數(shù)值返回。請?zhí)羁铡?設(shè)

后的輸出結(jié)果是

復(fù)(循環(huán))結(jié)構(gòu)構(gòu)成的程序是【4】程序。N已定義)

A)2,4B)4,4C)4,8D)

intfun(intx[N])

10,6

(5)數(shù)據(jù)庫設(shè)計的四個階段是:需{inti,k=0;

(39)若有以下語句

求分析,概念設(shè)計,邏輯設(shè)計【5】。for(i=0:i<N;I++)

TypedefstructS

if(x[i]

{intg;charh;}T;

(6)以下程序運(yùn)行后的輸出結(jié)果是returnx[k];

以下敘述中正確的是

[6]。)

A)可用S定義結(jié)構(gòu)體變量

#include<stdio.h>

B)可用T定義結(jié)構(gòu)體變量

main()(11)有以下程序

C)S是struct類型的變量

{inta=200,b=010;#include<stdio.h>

D)T是structS類型的變量

int*f(int*p,int*q);{inta(10],*p,*s;C)循環(huán)鏈表是非線性結(jié)構(gòu)

main()for(p=a;p-a<10;p++)scanf("%

D)雙向鏈表是非線性結(jié)構(gòu)

{intm=Ln=2,*r=&m;d",p);

r=f(r,&n);printf("%d\n’‘,for(p=a,s=a;p-a<10;p++)if(*(3)某二叉樹共有7個結(jié)點,其中葉

*r);p>*s)S=P;子結(jié)點只有1個,則該二叉樹的深度為

(假設(shè)根結(jié)點在第1層)

}printf(,,max=%d\n,\[14]);

int*f(int*p,int*q))

A)3B)4C)6D)7

{return(*p>*q)?p:q;}

程序運(yùn)行后的輸出結(jié)果是[H](15)以下程序打開新文件f.txt,并(4)在軟件開發(fā)中,需求分析階段產(chǎn)

生的主要文檔是

調(diào)用字符輸出函數(shù)將a數(shù)組中的字符寫

(12)以下fun函數(shù)的功能是在N入其中,請?zhí)羁铡?/p>

A)軟件集成測試計劃B)軟件詳細(xì)

行M列的整形二維數(shù)組中,選出一個最#include<stdio.h>設(shè)計說明書

大值作為函數(shù)值返回,請?zhí)羁铡?設(shè)M,main()

N已定義){[15]*fp;C)用戶手冊D)軟件需求規(guī)格說明

intfun(inta[N][M))chara[5]={I,2,3,

{inti,j,row=0,col=0;5'},i;

(5)結(jié)構(gòu)化程序所要求的基本結(jié)構(gòu)不

for(i=0:i<N;I++)fp=fopen("f.txt","w");包括

for(j=0;jfor(i=0;i<5;i++)fputc(a[i],f

A)順序結(jié)構(gòu)B)GOTO跳轉(zhuǎn)

if(aLi][j]>a[row][col])p);

{row=i;col=j;}fclose(fp);

C)選擇(分支)結(jié)構(gòu)D)重復(fù)(循環(huán))結(jié)

return([12]):)構(gòu)

)

年月計算機(jī)等級考試二級語言

20113C(6)下面描述中錯誤的是

筆試:文字版(無答案)

(13)有以下程序

A)系統(tǒng)總體結(jié)構(gòu)圖支持軟件系統(tǒng)的

#include<stdio.h>一、選擇題

詳細(xì)設(shè)計

main()

下列關(guān)于棧敘述正確的是

{intn[2],i,j;(1)B)軟件設(shè)計是將軟件需求轉(zhuǎn)換為軟

for(i=0;i<2;i++)n[i]=0;件表示的過程

A)棧頂元素最先能被刪除

for(i=0;i<2;i++)

C)數(shù)據(jù)結(jié)構(gòu)與數(shù)據(jù)庫設(shè)計是軟件設(shè)

for(j=0;j<2;j++)n[j]=nFiJB)棧頂元素最后才能被刪除

計的任務(wù)之一

+1;

C)棧底元素永遠(yuǎn)不能被刪除

printf("%d\rT,n[l]);D)PAD圖是軟件詳細(xì)設(shè)計的表示工

}D)以上三種說法都不對

程序運(yùn)行后的輸出結(jié)果是[13]

(7)負(fù)責(zé)數(shù)據(jù)庫中查詢操作的數(shù)據(jù)庫

(2)下列敘述中正確的是

語言是

(14)以下程序的功能是:借助指

A)有一個以上根結(jié)點的數(shù)據(jù)結(jié)構(gòu)不

針變量找出數(shù)組元素中最大值所在的位A)數(shù)據(jù)定義語言

一定是非線性結(jié)構(gòu)

置并輸出該最大值。請在輸出語句中填

B)數(shù)據(jù)管理語言

寫代表最大值的輸出項。B)只有一個根結(jié)點的數(shù)據(jù)結(jié)構(gòu)不一

定是線性結(jié)構(gòu)

#include<stdio.h>C)數(shù)據(jù)操縱語言

main()

D)數(shù)據(jù)控制語言B)用C語言編寫的源程序不能直接D)name=Lilinum=1001

在計算機(jī)上運(yùn)行

(8)一個教師可講授多門課程,一門(17)if語句的基本形式是:if(表達(dá)式)

課程可由多個教師講授。則實體教師和C)通過編譯得到的二進(jìn)制目標(biāo)程序語句,以下關(guān)于“表達(dá)式”值的敘述中正

課程間的聯(lián)系是需要連接才可以運(yùn)行確的是

A)l:l聯(lián)系B)l:m聯(lián)系D)在沒有安裝C語言集成開發(fā)環(huán)境A)必須是邏輯值B)必須是整數(shù)值

的機(jī)器上不能運(yùn)行C源程序生成的.exe

C)m:l聯(lián)系D)m:n聯(lián)系文件C)必須是正數(shù)D)可以是任意合法

的數(shù)值

(9)有三個關(guān)系R、S和T如下:(13)以下選項中不能用作C程序合

法常量的是(18)有以下程序

A)1,234B)'123'#include

T

C)123D)'\x7G"main()

(14)以下選項中可用作C程序合法{intx=l1;

實數(shù)的是

printf(n%d\nM,++x);

A).le0B)3.0e0.2

則由關(guān)系R和S得到關(guān)系T的操作)

是C)E9D)9.12E

程序運(yùn)行后的輸出結(jié)果是

A)自然連接B)交C)除D)并(15)若有定義語句:int

a=3,b=2,c=l;,以下選項中錯誤的賦值表A)12B)11C)10D)9

(10)定義無符號整數(shù)類為UInt,下面達(dá)式是

(19)有以下程序

可以作為類UInt實例化值的是

A)a=(b=4)=3;B)a=b=c+1;

#include

A)-369B)369C)0.369D)整數(shù)集合

{123,4,5}C)a=(b=4)+c;D)a=l+(b=c=4);

main()

(11)計算機(jī)高級語言程序的運(yùn)行方(16)有以下程序段

{ints;

法有編譯執(zhí)行和解釋執(zhí)行兩種,以下敘

述中正確的是charname[20];

scanf(n%d",&s);

A)C語言程序僅可以編譯執(zhí)行intnum;

while(s>0)

u

B)C語言程序僅可以解釋執(zhí)行scanf(name=%s

{switch(s)

num=%d,,,name;&num);

C)C語言程序既可以編譯執(zhí)行又可

{case1:printf("%d'\s+5);

以解釋執(zhí)行當(dāng)執(zhí)行上述程序段,并從鍵盤輸入:

name=Lilinum=1001v回車〉后,name的

case2:printf(M%d1r,s+4);break;

D)以上說法都不對值為

case3:printf("%d”,s+3);

(12)以下敘述中錯誤的是A)Li

溫馨提示

  • 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

提交評論