版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
2011年3月全國計(jì)算機(jī)等級考試二級筆試試卷
C語言程序設(shè)計(jì)
(考試時(shí)間90分鐘,滿分100分)
一、選擇題(1-10,21-40每題2分,11-20每題1分,共70分)
⑴下列關(guān)于棧敘述正確的是
A)棧頂元素最先能被刪除
B)棧頂元素最后才能被刪除
C)棧底元素永遠(yuǎn)不能被刪除
D)以上三種說法都不對
⑵下列敘述中正確的是
A)有一個(gè)以上根結(jié)點(diǎn)的數(shù)據(jù)結(jié)構(gòu)不一定是非線性結(jié)構(gòu)
B)只有一個(gè)根結(jié)點(diǎn)的數(shù)據(jù)結(jié)構(gòu)不一定是線性結(jié)構(gòu)
Q循環(huán)鏈表是非線性結(jié)構(gòu)
D)雙向鏈表是非線性結(jié)構(gòu)
⑶某二叉樹共有7個(gè)結(jié)點(diǎn),其中葉子結(jié)點(diǎn)只有1個(gè),則該二叉樹的深度為(假設(shè)根結(jié)點(diǎn)在第
1層)
A)3B)4C)6D)7
⑷在軟件開發(fā)中,需求分析階段產(chǎn)生的主要文檔是
A)軟件集成測試計(jì)劃B)軟件詳細(xì)設(shè)計(jì)說明書
C)用戶手冊D)軟件需求規(guī)格說明書
⑸結(jié)構(gòu)化程序所要求的基本結(jié)構(gòu)不包括
A)順序結(jié)構(gòu)B)GOTO跳轉(zhuǎn)
C)選擇(分支)結(jié)構(gòu)D座復(fù)(循環(huán))結(jié)構(gòu)
⑹下面描述中錯(cuò)誤的是
A)系統(tǒng)總體結(jié)構(gòu)圖支持軟件系統(tǒng)的詳細(xì)設(shè)計(jì)
B)軟件設(shè)計(jì)是將軟件需求轉(zhuǎn)換為軟件表示的過程
Q數(shù)據(jù)結(jié)構(gòu)與數(shù)據(jù)庫設(shè)計(jì)是軟件設(shè)計(jì)的任務(wù)之一
D)PAD圖是軟件詳細(xì)設(shè)計(jì)的表示工具
⑺負(fù)責(zé)數(shù)據(jù)庫中查詢操作的數(shù)據(jù)庫語言是
A)數(shù)據(jù)定義語言
B)數(shù)據(jù)管理語言
C)數(shù)據(jù)操縱語言
D)數(shù)據(jù)控制語言
⑻一個(gè)教師可講授多門課程,一門課程可山多個(gè)教師講授。則實(shí)體教師和課程間的聯(lián)系是
A)l:l聯(lián)系B)l:m聯(lián)系
C)m:l聯(lián)系D)m:n聯(lián)系
(9)有三個(gè)關(guān)系R、S和T如下:
則由關(guān)系R和S得到關(guān)系T的操作是
A)自然連接B)交。除D)并
(10)定義無符號整數(shù)類為Ulnt,卜面可以作為類Ulnt實(shí)例化值的是
A)-369B)369C)0.369D)整數(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)以下敘述中錯(cuò)誤的是
A)C語言的可執(zhí)行程序是由一系列機(jī)器指令構(gòu)成的
B)用C語言編寫的源程序不能直接在計(jì)算機(jī)上運(yùn)行
C)通過編譯得到的二進(jìn)制目標(biāo)程序需要連接才可以運(yùn)行
D)在沒有安裝C語言集成開發(fā)環(huán)境的機(jī)器上不能運(yùn)行C源程序生成的.exe文件
(13)以下選項(xiàng)中不能用作C程序合法常量的是
A)l,234B)'123'
C)123D)"\x7G"
(14)以下選項(xiàng)中可用作C程序合法實(shí)數(shù)的是
A).le0B)3.0e0.2
C)E9D)9.12E
(15)若有定義語句:inta=3,b=2,c=l;,以下選項(xiàng)中錯(cuò)誤的賦值表達(dá)式是
A)a=(b=4)=3;B)a=b=c+1;
C)a=(b=4)+c;D)a=l+(b=c=4);
(16)有以下程序段
charname[20];
intnum;
scanf("name=%snum=%d",name;&num);
當(dāng)執(zhí)行上述程序段,并從鍵盤輸入:name=Lilinum=1001<)^車〉后,name的值為
A)Lili
B)name=Lili
C)Lilinum=
D)name=Lilinum=1001
(17)if語句的基本形式是:if(表達(dá)式)語句,以下關(guān)于“表達(dá)式〃值的敘述中正確的是
A)必須是邏輯值B)必須是整數(shù)值
C)必須是正數(shù)D)可以是任意合法的數(shù)值
(18)有以下程序
#include
main()
{intx=011;
H
printf(%d\n"/++x);
}
程序運(yùn)行后的輸出結(jié)果是
A)12B)11C)1OD)9
(19)有以下程序
#include
main()
{ints;
HH
scanf(%d/&s);
while(s>0)
{switch(s)
{casel:printf(”%d”,s+5);
case2:printf("%d",s+4);break;
case3:printf("%d",s+3);
default:printf("%cT,s+l);break;
)
scanf("%d",&s);
)
}
運(yùn)行時(shí),若輸入123450〈回車〉,則輸出結(jié)果是
A)6566456B)66656C)66666D)6666656
(20)有以下程序段
inti,n;
for(i=0;i<8;i++)
{n=rand()%5;
switch(n)
{case1:
case3:printf(n%d\n",n);break;
case2:
case4:printf("%d\n"zn);continue;
case0:exit(0);
}
printf("%d\n",n);
}
以下關(guān)于程序段執(zhí)行情況的敘述,正確的是
A)for循環(huán)語句固定執(zhí)行8次
B)當(dāng)產(chǎn)生的隨機(jī)數(shù)n為4時(shí)結(jié)束循環(huán)操作
C)當(dāng)產(chǎn)生的隨機(jī)數(shù)n為1和2時(shí)不做任何操作
D)當(dāng)產(chǎn)生的隨機(jī)數(shù)n為0時(shí)結(jié)束程序運(yùn)行
(21)有以下程序
#include
main()
{chars[]="012xy\08s34f4w2";
inti,n=0;
for(i=0;s[i]!=0;i++)
if(s[i]>='0'&&s[i]<='9')n++;
printf("%d\n",n);
)
程序運(yùn)行后的輸出結(jié)果是
A)0B)3C)7D)8
(22)若i和k都是int類型變量,有以下for語句
for(i=0,k=-l;k=l;k++)printf("*****\n");
下面關(guān)于語句執(zhí)行情況的敘述中正確的是
A)循環(huán)體執(zhí)行兩次
B)循環(huán)體執(zhí)行一次
Q循環(huán)體一次也不執(zhí)行
D)構(gòu)成無限循環(huán)
(23)有以下程序
include
main()
{charb,c;inti;
b=*a';c='A';
for(i=0;i<6;i++)
{if(i%2)putchar(i+b);
elseputchar(i+c);
}printf("\n");
)
程序運(yùn)行后的輸出結(jié)果是
A)ABCDEFB)AbCdEfC)aBcDeFD)abcdef
(24)設(shè)有定義:doublex[10],*p=x;,以下能給數(shù)組x下標(biāo)為6的元素讀入數(shù)據(jù)的正確語句是
A)scanf(“%f”,&x[6]);B)scanf(-%lf”,*(x+6));
C)scanf("%lf",p+6);D)scanf(”%lf“,p⑹);
(25)有以下程序(說明:字母A的ASCII碼值是65)
#include
voidfun(char*s)
{while(*s)
{if(*s%2)printf("%c",*s);
s++;
)
)
main()
{chara口二“BYTE”;
fun(a);printf("\n");
)
程序運(yùn)行后的輸出結(jié)果是
ABY
BBT
C)YT
D)YE
(26)有以下程序段
#include
main()
{...
while(getchar()!='\n,);
)
以下敘述中正確的是
A)此while語句將無限循環(huán)
B)getchar。不可以出現(xiàn)在while語句的條件表達(dá)式中
C)當(dāng)執(zhí)行此while語句時(shí),只有按回車鍵程序才能繼續(xù)執(zhí)行
D)當(dāng)執(zhí)行此while語句時(shí),按任意鍵程序就能繼續(xù)執(zhí)行
(27)有以下程序
Sinclude
main()
{intx=l,y=O;
if(!x)y++;
elseif(x==O)
if(x)y+=2;
elsey+=3;
printf("%d\n",y);
}
程序運(yùn)行后的輸出結(jié)果是
A)3B)2C)1D)O
(28)若有定義語句:chars[3][10],(*k)[3],*p;,則以下賦值語句正確的是
A)p=s;B)p=k;C)p=s[O];D)k=s;
(29)有以下程序
#include
voidfun(char*c)
{while(*c)
{if(*c>=*a'&&*c<='z')*c=*c-(9」A');
C++;
)
)
main()
{chars[81];
gets(s);fun(s);puts(s):
}
當(dāng)執(zhí)行程序時(shí)從鍵盤上輸入HelloBeijing(回車〉,則程序的輸出結(jié)果是
A)hellobeijingB)HelloBeijingC)HELLOBEIJINGD)hELLOBeijing
(30)以卜?函數(shù)的功能是:通過鍵盤輸入數(shù)據(jù),為數(shù)組中的所有元素賦值。
#include
#defineN10
voidfun(intx[N])
{inti=0;
while(i<>
)
在程序中下劃線處應(yīng)填入的是
A)x+iB)&x[i+1]
C)x+(i++)D)&x[++i]
(31)有以下程序
#include
main()
{chara[30],b[30];
H
scanf("%sza);
gets(b);
printf("%s\n%s\n",a,b);
)
程序運(yùn)行時(shí)若輸入:
howareyou?Iamfine<|可車>
則輸出結(jié)果是
A)howareyou?B)how
Iamfineareyou?Iamfine
C)howareyou?IamfineD)rowareyou?
(32)設(shè)有如下函數(shù)定義
intfun(intk)
{if(k<l)return0;
elseif(k==l)return1;
elsereturnfun(k-l)+l;
)
若執(zhí)行調(diào)用語句:n=fun(3);,則函數(shù)fun總共被調(diào)用的次數(shù)是
A)2B)3C)4D)5
(33)有以下程序
//include
intfun(intxjnty)
{if(x!=y)return((x+y);2);
elsereturn(x);
}
main()
{inta=4,b=5zc=6;
printf("%d\n",fun(2*azfun(b/c)));
)
程序運(yùn)行后的輸出結(jié)果是
A)3B)6C)8D)12
(34)有以下程序
#include
intfun()
{staticintx=l;
x*=2;
returnx;
)
main()
{inti,s=l;
for(i=l;i<=3;i++)s*=fun();
printf("%d\n“,s);
)
程序運(yùn)行后的輸出結(jié)果是
A)0B)10C)30D)64
(35)有以下程序
ttinclude
#defineS(x)4*(x)*x+l
main()
{intk=5J=2;
printf("%d\n"zS(k+j));
)
程序運(yùn)行后的輸出結(jié)果是
A)197B)143C)33D)28
(36)設(shè)有定義:struct{charmark[12];intnuml;doublenum2;}tl,t2;,若變量均已正確賦初值,
則以下語句中錯(cuò)誤的是
A)tl=t2;B)t2.numl=tl.numl;
C)t2.mark=tl.mark;D)t2.num2=tl.num2;
(37)有以下程序
#include
structord
{intx,y;}dt[2]={l,2,3,4);
main()
(
structord*p=dt;
printf("%d,",++(p->x));printf("%d\n",++(p->y));
}
程序運(yùn)行后的輸出結(jié)果是
A)1,2B)4,l03,4D)2,3
(38)有以下程序
#include
structS
{intazb;}data[2]={10,100,20,200};
main()
{structSp=data[l];
printf("%d\n"/++(p.a));
)
程序運(yùn)行后的輸出結(jié)果是
A)10B)llC)20D)21
(39)有以下程序
include
main()
{unsignedchara=8,c;
c=a?3;
printf("%d\n"zc);
程序運(yùn)行后的輸出結(jié)果是
A)32B)16C)1D)0
(40)設(shè)fp―定義,執(zhí)行語句fp=fopen("file","w");后,以下針對文本文件file操作敘述的選項(xiàng)
中正確的是
A)寫操作結(jié)束后可以從頭開始讀B)只能寫不能讀
C)可以在原有內(nèi)容后追加寫D)可以隨意讀和寫
二、填空題
⑴有序線性表能進(jìn)行二分查找的前提是該線性表必須是【1】存儲的。
(2)一棵二叉樹的中序遍歷結(jié)果為DBEAFC,前序遍歷結(jié)果為ABDECF,則后序遍歷結(jié)果為
[2]。
⑶對軟件設(shè)計(jì)的最小單位(模塊或程序單元)進(jìn)行的測試通常稱為【3】測試
O
⑷實(shí)體完整性約束要求關(guān)系數(shù)據(jù)庫中元組的【4】屬性值不能為空。
⑸在關(guān)系A(chǔ)(S,SN,D)和關(guān)系B(D,CN,NM)中,A的主關(guān)鍵字是S,B的主關(guān)鍵字是D,則稱
[51是關(guān)系A(chǔ)的外碼。
⑹以下程序運(yùn)行后的輸出結(jié)果是[6】。
#include
main()
{inta;
a=(int)((double)(3/2)+0.5+(int)1.99*2);
printf(,,%d\nu,a);
)
⑺有以下程序
#include
main()
{intx;
scanf("%d",&x);
if(x>15)printf("%d”,x?5);
if(x>10)printf("%d",x);
if(x>5)printf(n%d\n",x+5);
)
若程序運(yùn)行時(shí)從鍵盤輸入12〈回車〉,則輸出結(jié)果為【7】o
⑻有以下程序(說明:字符。的ASCII碼值為48)
#include
main()
{charcl,c2;
scanf(n%d",&cl);
c2=cl+9;
printf(',%c%c\n",cl,c2);
)
若程序運(yùn)行時(shí)從鍵盤輸入48〈回車〉,則輸出結(jié)果為【8】。
⑼有以下函數(shù)
voidprt(charch,intn)
{inti;
for(i=l;i<=n;i++)
printf(i%6!=0?"%c":"%c\n",ch);
)
執(zhí)行調(diào)用語句prt('*',24);后,函數(shù)共輸出了【9】行*號。
(10)以下程序運(yùn)行后的輸出結(jié)果是[10]。
#include
main()
{intx=10,y=20,t=0;
if(x==y)t=x;x=y;y=t;
printf("%d%d\n",xzy);
)
(11)己知a所指的數(shù)組中有N個(gè)元素。函數(shù)fun的功能是,將下標(biāo)k(k>0)開始的后續(xù)元素全
部向前移動(dòng)?個(gè)位置。請?zhí)羁铡?/p>
voidfun(inta[N],intk)
{inti;
for(i=k;i
)
(12)有以下程序,請?jiān)赱12]處填寫正確語句,使程序可正常編譯運(yùn)行。
#include
[12];
main()
{doublex,yz(*p)();
scanf("%lf%lf"/&x,&y);
P=avg;
printf("%f\n",(*p)(x,y));
)
doubleavg(doublea,doubleb)
{return((a+b)/2);}
(13)以下程序運(yùn)行后的輸出結(jié)果是【13】o
#include
main()
{intLn[5]={0};
for(i=l;i<=4;i++)
{n[i]==n[i-l]*2+l;printf("%d"zn[i]);}
printfCAn");
)
(14)以下程序運(yùn)行后的輸出結(jié)果是【14】o
#include
#include
#include
main()
{char*p;inti;
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;intx[6]={l,23,4,5,6},i;
fp=fopen("test.dat";'wb");
fwrite(x,sizeof(int),3,fp);
rewind(fp);
fread(x,sizeof(int),3Jp);
for(i=0;i<6;i++)printf("%d”,x[i]);
pnntf("\n");
fclose(fp);
)
2011年3月全國計(jì)算機(jī)等級考試二級筆試試卷
C語言程序設(shè)計(jì)答案
選擇題1?5ABDDB
6-10ACDCB11-15ADBAA
16-20ADCAD21-25BDBCD
26-30CDCCC31-35BBBDB
36-40CDDCB
二,填空題
1)順序2)DEBFCA3)單元測試4)主鍵5)D6)37)1217
8)099)410)20011)i-112)doubleavg(doublea,doubleb)
13)13715
14)e(E)moclew15)123456
2010年9月全國計(jì)算機(jī)等級考試二級C筆試試卷答案
、選擇題
1~5:BCDAA6~10:DDCCA1T15:CBBAD16~20:DAACB
21~25:BCBDC26~30:CBDDA31~35:ACBCD36~40:BACBD
二、填空
1.1DCBA23452.n-13.254.結(jié)構(gòu)化5.物理設(shè)計(jì)6.2008
7.158.非09.14134010.i11.2
12.a[row][col]13.314.*s15.FILE
2012年計(jì)算機(jī)二級C++第二套上機(jī)模擬試題及答案解析
一、改錯(cuò)題
使用VC6打開考生文件夾下的工程kt7_l,此工程包含一-個(gè)源程序文件kt7」.cpp,但
該程序運(yùn)行有問題,請改正程序中的錯(cuò)誤,使程序的輸出結(jié)果如下:
Constructor1
Constructor!
Constructor1
Destructor
Constructor?
Destructor
x=0
x=5
Destructor
Destructor
源程序文件kt21_l.cpp清單如下:
#include
classB
{intx;
public:
B(){x=0;cout?MConstructor1H?ENDL;}<p=n"></ENDL;}o
B(inti){x=i;cout?HConstructor2"?ENDL;}<p=,n,x/ENDL;}<>
?B(){cout?nDestructorM?ENDL;}<p=,,n></ENDL;}<>
/**********8und**********/
~B(inti){cout?I?nBEDESTRUCTOR"?ENDL;}<
p=,,nx/I?"BEDESTRUCTORn?ENDL;}<>
voidprintO{cout<<"x="?X?ENDL;}};<p=,n,x/X?ENDL;}};<>
voidmain()
{B*ptr;
ptr=newB[2];
/**********Cund**********/
ptr[O]=B(O);
ptr[l]=B(5);
/***********^^)und**********/
fbr(inti=0;i<2;)
ptr[i].print();
delete[]ptr;}
【參考答案】
⑴將?B(inti){cout?I?"p=""be=""Destructor??endl;}刪除
(2)將ptr[O]=B(O);改為:ptr[O]=B();
(3)將fbr(inti=0;i<2;)改為:for(inti=0;i<2;i++)
B(inti){x=i;cout?"Constructor2"?ENDL;}<p=""></ENDL;}<>
~B(){cout?"Destructor"?ENDL;}<p=""x/ENDL;}<>
/**********8und**********/
^B(inti){cout?I?,rBEDESTRUCTOR"?ENDL;}<
p=,,nx/I?"BEDESTRUCTORn?ENDL;}<>
voidprint(){cout?"x="?X?ENDL;}};<p=,n,x/X?ENDL;}};<>
voidmain()
{B*ptr;
ptr=newB[2];
/**********nd***亭******/
ptr[O]=B(O);
ptr[l]=B(5);
/**********nd***亭******/
fbr(inti=0;i<2;)
ptr[i].print();
delete[]ptr;}
【參考答案】
(1)將?B(inti){cout?I?"p=""be=""Destructor??endl;}|^<=""></I?">
⑵將ptr[O]=B(O);改為:ptr[O]=B();
(3)將for(inti=0;i<2;)改為:for(inti=0;i<2;i++)
【試題解析】
本題主要考查對文件相關(guān)操作的熟練程度。首先定義文件流類的變量,然后使用該對象
的open方法打開--個(gè)文件,接著使用while循環(huán)和getch方法每次讀入一個(gè)字符并統(tǒng)計(jì)字符
個(gè)數(shù),最后使用close方法關(guān)閉文件,返回i值。
二、簡單應(yīng)用題
編寫一個(gè)函數(shù)intchamum(charfn[10]),該函數(shù)以只讀方式打開文件fn,,通過統(tǒng)計(jì),返回
文件中字符的個(gè)數(shù),請使用while循環(huán)實(shí)現(xiàn)計(jì)數(shù)功能。
注意:部分源程序已存在文件kt7_2.cpp中。
請勿修改主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在函數(shù)chamum的花括號中填寫若
干語句。
文件kt7_2.cpp的內(nèi)容如下:
#include
#include
#include
intchamum(charfh[10]);
voidmain()
{intnum;
num=charnumC'abc.txt");
cout?nnum=n?NUM?ENDL;}<p=,,nx/NUM?ENDL;}<>
intchamum(charfh[10])
(
)
【參考答案】
intchamum(charfn[10])
{fstreamfile;
file.open(fh,ios::in);
if(!file)
{cout?nabc.txtcan*topenn?ENDL;<p=MMx/ENDL;<>
abort。;}
charch;
inti=0;
while(!file.eof())
{file.get(ch);
i++;)
file.close();
returni-1;}
【試題解析】
本題主要考查對文件相關(guān)操作的熟練程度。首先定義文件流類的變量,然后使用該對象
的open方法打開--個(gè)文件,接著使用while循環(huán)和getch方法每次讀入一個(gè)字符并統(tǒng)計(jì)字符
個(gè)數(shù),最后使用close方法關(guān)閉文件,返回i值。
三、綜合應(yīng)用題
使用VC6打開考生文件夾下的工程kt7_3,此工程包含一個(gè)源程序文件kt7_3.cpp,其
中含有一個(gè)類Circle的定義,但該類的定義并不完整。請按要求完成下列操作,將類Circle
的定義補(bǔ)充完整。
(1)為類Circle增加個(gè)構(gòu)造函數(shù),該函數(shù)有一個(gè)參數(shù),并在構(gòu)造時(shí)將該參數(shù)值賦給成
員radius。將該函數(shù)實(shí)現(xiàn)為一個(gè)非內(nèi)聯(lián)函數(shù),并且使用參數(shù)列表的方式將類成員賦值。請?jiān)?/p>
注釋"〃**I**"之后添加適當(dāng)?shù)恼Z句。
(2)為類Circle增加一個(gè)成員函數(shù)pHnt(),使得可以輸出有關(guān)圓的信息,比如下列程序
Circlec;
c.SetRadius⑸;
c.Print();
將輸出:Thecirclehasradiusof5!
請?jiān)谧⑨尅啊?*2**”之后添加適當(dāng)?shù)恼Z句。
(3)完成友元函數(shù)voidCompareR(Circle*cl,Circle*c2)的定義,在屏幕中輸出cl與c2比
較radius大小結(jié)果,要求使用iAelse結(jié)構(gòu)完成。請?jiān)谧⑨尅啊?*3**”之后添加適當(dāng)?shù)恼Z句。
輸出結(jié)果如下:
Thecirclehasradusof5!
Thecirclehasradiusofl0!
cl<C2<p=nn></C2o
注意:除在指定位置添加語句之外,請不要改動(dòng)程序中的其他內(nèi)容。
源程序文件kt7_3.cpp清單如下:
#include
classCircle{
public:
Circle():radius(5){}
〃**?**
voidSetRadius(intr){radius=r;}
intGetRadius(){retumradius;}
friendvoidCompareR(Circle*cl,Circle*c2);
private:
intradius;};
voidCompareR(Circle*cl,Circ!e*c2)
{//**3**
cout?nc1>c2n?ENDL;<p=,u,x/ENDL;<>
else
if((c!->GetRadius())=(c2->GetRadius()))
cout?nc1=c2n?ENDL;<p=nnx/ENDL;<>
else
if((c1->GetRadius())<(c2->GetRadius()))
cout?"cl<C2M?ENDL;}<p=,,"x/C2,,?ENDL;}<>
voidmain()
{Circled;
cl.SetRadius(5);
cl.Print();
Circlec2(10);
c2.Print();
CompareR(&cI,&c2);}
【參考答案】
(l)Circle(intrad):radius(rad){}
(2)voidPrint(){cout?MThecirclehasradiusofn?RADIUS?n!\Nn;}<
p=,H,x/RADIUS?"!\N";}<>
(3)if((c1->GetRadius())>(c2->GetRadius()))
【試題解析】
本題考查成員函數(shù)的定義與實(shí)現(xiàn),友元函數(shù),if分支語句等知識點(diǎn)。友元函數(shù)的類體外
的定義與一般函數(shù)一樣,其中if?else的使用,else總是與其最近的那個(gè)if配對使用的,書寫
時(shí)最好使用縮進(jìn)格式,將配對的i仔else對齊,以免出錯(cuò)。
2012年計(jì)算機(jī)二級公共基礎(chǔ)知識模擬試題
一、選擇題
(1)下面敘述正確的是(C)
A.算法的執(zhí)行效率與數(shù)據(jù)的存儲結(jié)構(gòu)無關(guān)
B.算法的空間復(fù)雜度是指算法程序中指令(或語句)的條數(shù)
C.算法的有窮性是指算法必須能在執(zhí)行有限個(gè)步驟之后終止
D.以上三種描述都不對
(2)以下數(shù)據(jù)結(jié)構(gòu)中不屬于線性數(shù)據(jù)結(jié)構(gòu)的是(C)
A.隊(duì)列
B.線性表
C.二叉樹
D.棧
(3)在棵二叉樹上第5層的結(jié)點(diǎn)數(shù)最多是(B)注:由公式2k-l得
A.8
B.16
C.32
D.15
(4)下面描述中,符合結(jié)構(gòu)化程序設(shè)計(jì)風(fēng)格的是(A)
A.使用順序、選擇和重復(fù)(循環(huán))三種基本控制結(jié)構(gòu)表示程序的控制邏輯
B.模塊只有一個(gè)入口,可以有多個(gè)出口
C.注重提高程序的執(zhí)行效率
D,不使用goto語句
(5)下面概念中,不屬于面向?qū)ο蠓椒ǖ氖?D)注:P55-58
A.對象
B.繼承
C.類
D.過程調(diào)用
(6)在結(jié)構(gòu)化方法中,用數(shù)據(jù)流程圖(DFD)作為描述工具的軟件開發(fā)階段是(B)
A.可行性分析
B.需求分析
C.詳細(xì)設(shè)計(jì)
D.程序編碼
(7)在軟件開發(fā)中,下面任務(wù)不屬于設(shè)計(jì)階段的是(D)
A.數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)
B.給出系統(tǒng)模塊結(jié)構(gòu)
C.定義模塊算法
D.定義需求并建立系統(tǒng)模型
(8)數(shù)據(jù)庫系統(tǒng)的核心是(B)
A.數(shù)據(jù)模型
B.數(shù)據(jù)庫管理系統(tǒng)
C.軟件工具
D.數(shù)據(jù)庫
(9)下列敘述中正確的是(C)
A.數(shù)據(jù)庫是一個(gè)獨(dú)立的系統(tǒng),不需要操作系統(tǒng)的支持
B.數(shù)據(jù)庫設(shè)計(jì)是指設(shè)計(jì)數(shù)據(jù)庫管理系統(tǒng)
C.數(shù)據(jù)庫技術(shù)的根本目標(biāo)是要解決數(shù)據(jù)共享的問題
D.數(shù)據(jù)庫系統(tǒng)中,數(shù)據(jù)的物理結(jié)構(gòu)必須與邏輯結(jié)構(gòu)一致
(10)下列模式中,能夠給出數(shù)據(jù)庫物理存儲結(jié)構(gòu)與物理存取方法的是(A)注:P108
A.內(nèi)模式
B.外模式
C.概念模式
D.邏輯模式
(11)算法的時(shí)間復(fù)雜度是指(C)
A.執(zhí)行算法程序所需要的時(shí)間
B.算法程序的長度
C.算法執(zhí)行過程中所需要的基本運(yùn)算次數(shù)
D.算法程序中的指令條數(shù)
(12)算法的空間復(fù)雜度是指(D)
A.算法程序的長度
B.算法程序中的指令條數(shù)
C.算法程序所占的存儲空間
D.算法執(zhí)行過程中所需要的存儲空間
(13)設(shè)棵完全二叉樹共有699個(gè)結(jié)點(diǎn),則在該二叉樹中的葉子結(jié)點(diǎn)數(shù)為(B)注:利用
公式n=n0+nl+n2、n0=n2+l和完全二叉數(shù)的特點(diǎn)可求出
A.349
B.350
C.255
D.351
(14)結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)的是(B)
A.程序的規(guī)模
B.程序的易讀性
C.程序的執(zhí)行效率
D.程序的可移植性
(15)在軟件生命周期中,能準(zhǔn)確地確定軟件系統(tǒng)必須做什么和必須具備哪些功能的階
段是(D)注:即第一個(gè)階段
A.概要設(shè)計(jì)
B.詳細(xì)設(shè)計(jì)
C.可行性分析
D.需求分析
(16)數(shù)據(jù)流圖用于抽象描述一個(gè)軟件的邏輯模型,數(shù)據(jù)流圖由一些特定的圖符構(gòu)成。下
列圖符名標(biāo)識的圖符不屬于數(shù)據(jù)流圖合法圖符的是(A)注:P67
A.控制流
B.加工
C.數(shù)據(jù)存儲
D.源和潭
(17)軟件需求分析階段的工作,可以分為四個(gè)方面:需求獲取、需求分析、編寫需求
規(guī)格說明書以及(B)注:P66
A.階段性報(bào)告
B.需求評審
C.總結(jié)
D.都不正確
(18)下述關(guān)于數(shù)據(jù)庫系統(tǒng)的敘述中正確的是(A)
A.數(shù)據(jù)庫系統(tǒng)減少了數(shù)據(jù)冗余
B,數(shù)據(jù)庫系統(tǒng)避免了一切冗余
C.數(shù)據(jù)庫系統(tǒng)中數(shù)據(jù)的一致性是指數(shù)據(jù)類型的一致
D.數(shù)據(jù)庫系統(tǒng)比文件系統(tǒng)能管理更多的數(shù)據(jù)
(19)關(guān)系表中的每一橫行稱為一個(gè)(A)
A.元組
B.字段
C.屬性
D.碼
(20)數(shù)據(jù)庫設(shè)計(jì)包括兩個(gè)方面的設(shè)計(jì)內(nèi)容,它們是(A)
A.概念設(shè)計(jì)和邏輯設(shè)計(jì)
B.模式設(shè)計(jì)和內(nèi)模式設(shè)計(jì)
C.內(nèi)模式設(shè)計(jì)和物理設(shè)計(jì)
D.結(jié)構(gòu)特性設(shè)計(jì)和行為特性設(shè)計(jì)
(21)下列敘述中正確的是(A)
A.線性表是線性結(jié)構(gòu)
B.棧與隊(duì)列是非線性結(jié)構(gòu)
C.線性鏈表是非線性結(jié)構(gòu)
D.二叉樹是線性結(jié)構(gòu)
(22)下列關(guān)于棧的敘述中正確的是①)
A.在棧中只能插入數(shù)據(jù)
B.在棧中只能刪除數(shù)據(jù)
C.棧是先進(jìn)先出的線性表
D.棧是先進(jìn)后出的線性表
(23)下列關(guān)于隊(duì)列的敘述中正確的是(C)
A.在隊(duì)列中只能插入數(shù)據(jù)
B.在隊(duì)列中只能刪除數(shù)據(jù)
C.隊(duì)列是先進(jìn)先出的線性表
D.隊(duì)列是先進(jìn)后出的線性表
(24)對建立良好的程序設(shè)計(jì)風(fēng)格,下面描述正確的是(A)注:P48
A.程序應(yīng)簡單、清晰、可讀性好
B.符號名的命名要符合語法
C.充分考慮程序的執(zhí)行效率
D.程序的注釋可有可無
(25)下面對對象概念描述錯(cuò)誤的是(A)注:P55
A.任何對象都必須有繼承性
B.對象是屬性和方法的封裝體
C.對象間的通訊靠消息傳遞
D.操作是對象的動(dòng)態(tài)性屬性
(26)下面不屬于軟件工程的3個(gè)要素的是(D)注:P62
A.工具
B.過程
C.方法
D.環(huán)境
(27)程序流程圖(PFD)中的箭頭代表的是(B)注:P81
A.數(shù)據(jù)流
B.控制流
C.調(diào)用關(guān)系
D.組成關(guān)系
(28)在數(shù)據(jù)管理技術(shù)的發(fā)展過程中,經(jīng)歷了人工管理階段、文件系統(tǒng)階段利數(shù)據(jù)庫系
統(tǒng)階段。其中數(shù)據(jù)獨(dú)立性最高的階段是(A)
A.數(shù)據(jù)庫系統(tǒng)
B.文件系統(tǒng)
C.人工管理
D.數(shù)據(jù)項(xiàng)管理
(29)用樹形結(jié)構(gòu)來表示實(shí)體之間聯(lián)系的模型稱為(B)
A.關(guān)系模型
B.層次模型
C.網(wǎng)狀模型
D.數(shù)據(jù)模型
(30)關(guān)系數(shù)據(jù)庫管理系統(tǒng)能實(shí)現(xiàn)的專門關(guān)系運(yùn)算包括(B)
A.排序、索引、統(tǒng)計(jì)
B.選擇、投影、連接
C.關(guān)聯(lián)、更新、排序
D.顯示、打印、制表
(31)算法一般都可以用哪幾種控制結(jié)構(gòu)組合而成(D)注:P3
A.循環(huán)、分支、遞歸
B.順序、循環(huán)、嵌套
C.循環(huán)、遞歸、選擇
D.順序、選擇、循環(huán)
(32)數(shù)據(jù)的存儲結(jié)構(gòu)是指(B)注:P13,要牢記
A.數(shù)據(jù)所占的存儲空間量
B.數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)中的表示
C.數(shù)據(jù)在計(jì)算機(jī)中的順序存儲方式
D.存儲在外存中的數(shù)據(jù)
(33)設(shè)有下列二叉樹:圖見書P46
對此二叉樹中序遍歷的結(jié)果為(B)
A.ABCDEF
B.DBEAFC
C.ABDECF
D.DEBFCA
(34)在面向?qū)ο蠓椒ㄖ校粋€(gè)對象請求另一對象為其服務(wù)的方式是通過發(fā)送(D)注:
P56
A.調(diào)用語句
B.命令
C.口令
D.消息
(35)檢查軟件產(chǎn)品是否符合需求定義的過程稱為(A)注:P95
A.確認(rèn)測試
B.集成測試
C.驗(yàn)證測試
D.驗(yàn)收測試
(36)下列工具中屬于需求分析常用工具的是(D)注:P67
A.PAD
B.PFD
C.N-S
D.DFD
(37)下面不屬于軟件設(shè)計(jì)原則的是(C)注:P73
A.抽象
B.模塊化
C.自底向上
D.信息隱蔽
(38)索引屬于(B)
A.模式
B.內(nèi)模式
C.外模式
D.概念模式
(39)在關(guān)系數(shù)據(jù)庫中,用來表示實(shí)體之間聯(lián)系的是(D)
A.樹結(jié)構(gòu)
B.網(wǎng)結(jié)構(gòu)
C.線性表
D.二維表
(40)將E-R圖轉(zhuǎn)換到關(guān)系模式時(shí),實(shí)體與聯(lián)系都可以表示成(B)
A.屬性
B.關(guān)系
C.鍵
D.域
(41)在下列選項(xiàng)中,哪個(gè)不是一個(gè)算法一般應(yīng)該具有的基本特征(C)
A.確定性
B.可行性
C.無窮性
D.擁有足夠的情報(bào)
(42)希爾排序法屬于哪一種類型的排序法(B)
A.交換類排序法
B.插入類排序法
C.選擇類排序法
D.建堆排序法
(43)在深度為5的滿二叉樹中,葉子結(jié)點(diǎn)的個(gè)數(shù)為(C)
A.32
B.31
C.16
D.15
(44)對長度為N的線性表進(jìn)行順序查找,在最壞情況下所需要的比較次數(shù)為(B)注:
要牢記
A.N+1
B.N
C.(N+l)/2
D.N/2
(45)信息隱蔽的概念與下述哪一種概念直接相關(guān)(B)注:P74
A.軟件結(jié)構(gòu)定義
B.模塊獨(dú)立性
C.模塊類型劃分
D.模擬耦合度
(46)面向?qū)ο蟮脑O(shè)計(jì)方法與傳統(tǒng)的的面向過程的方法有本質(zhì)不同,它的基本原理是(C)
A.模擬現(xiàn)實(shí)世界中不同事物之間的聯(lián)系
B.強(qiáng)調(diào)模擬現(xiàn)實(shí)世界中的算法而不強(qiáng)調(diào)概念
C.使用現(xiàn)實(shí)世界的概念抽象地思考問題從而自然地解決問題
D.鼓勵(lì)開發(fā)者在軟件開發(fā)的絕大部分中都用實(shí)際領(lǐng)域的概念去思考
(47)在結(jié)構(gòu)化方法中,軟件功能分解屬于下列軟件開發(fā)中的階段是(C)注:總體設(shè)計(jì)也
就是概要設(shè)計(jì)
A.詳細(xì)設(shè)計(jì)
B.需求分析
C.總體設(shè)計(jì)
D.編程調(diào)試
(48)軟件調(diào)試的目的是(B)注:與軟件測試要對比著復(fù)習(xí)
A.發(fā)現(xiàn)錯(cuò)誤
B.改正錯(cuò)誤
C.改善軟件的性能
D.挖掘軟件的潛能
(49)按條件f對關(guān)系R進(jìn)行選擇,其關(guān)系代數(shù)表達(dá)式為(C)
A.R|X|R
B.R|X|Rf
C.6f(R)
D.口的
(50)數(shù)據(jù)庫概念設(shè)計(jì)的過程中,視圖設(shè)計(jì)一般有三種設(shè)計(jì)次序,以下各項(xiàng)中不對的是(D)
注:P127,要牢記
A.自頂向下
B.由底向上
C.由內(nèi)向外
D.由整體到局部
(51)在計(jì)算機(jī)中,算法是指(C)
A.查詢方法
B.加工方法
C.解題方案的準(zhǔn)確而完整的描述
D.排序方法
(52)棧和隊(duì)列的共同點(diǎn)是(C)注:這一共同點(diǎn)和線性表不一樣
A.都是先進(jìn)后出
B.都是先進(jìn)先出
C.只允許在端點(diǎn)處插入和刪除元素
D.沒有共同點(diǎn)
(53)已知二叉樹后序遍歷序列是dabec,中序遍歷序列是debac,它的前序遍歷序列是
(A)注:P38,前提要掌握三種遍歷的方法
A.cedba
B.acbcd
C.decab
D.deabc
(54)在下列幾種排序方法中,要求內(nèi)存量最大的是(D)注:要牢記,書中沒有提到。
A.插入排序
B.選擇排序
C.快速排序
D.歸并排序
(55)在設(shè)計(jì)程序時(shí),應(yīng)采納的原則之一是(A)注:和設(shè)計(jì)風(fēng)格有關(guān)
A.程序結(jié)構(gòu)應(yīng)有助于讀者理解
B.不限制goto語句的使用
C.減少或取消注解行
D.程序越短越好
(56)下列不屬于軟件調(diào)試技術(shù)的是(B)注:P98
A.強(qiáng)行排錯(cuò)法
B.集成測試法
C.回溯法
D.原因排除法
(57)下列敘述中,不屬于軟件需求規(guī)格說明書的作用的是(D)注:P71
A.便于用戶、開發(fā)人員進(jìn)行理解和交流
B.反映出用戶問題的結(jié)構(gòu),可以作為軟件開發(fā)工作的基礎(chǔ)和依據(jù)
C.作為確認(rèn)測試和驗(yàn)收的依據(jù)
D.便于開發(fā)人員進(jìn)行需求分析
(58)在數(shù)據(jù)流圖(DFD)中,帶有名字的箭頭表示(C)
A.控制程序的執(zhí)行順序
B.模塊之間的調(diào)用關(guān)系
C.數(shù)據(jù)的流向
D.程序的組成成分
(59)SQL語言又稱為(C)
A.結(jié)構(gòu)化定義語言
B.結(jié)構(gòu)化控制語言
C.結(jié)構(gòu)化查詢語言
D.結(jié)構(gòu)化操縱語言
(60)視圖設(shè)計(jì)?般有3種設(shè)計(jì)次序,下列不屬于視圖設(shè)計(jì)的是(B)
A.自頂向下
B.由外向內(nèi)
C.由內(nèi)向外
D.自底向上
(61)數(shù)據(jù)結(jié)構(gòu)中,與所使用的計(jì)算機(jī)無關(guān)的是數(shù)據(jù)的(C)
A.存儲結(jié)構(gòu)
B.物理結(jié)構(gòu)
C.邏輯結(jié)構(gòu)
D.物理和存儲結(jié)構(gòu)
(62)棧底至棧頂依次存放元素A、B、C、D,在第五個(gè)元素E入棧前,棧中元素可以
出棧,則出棧序列可能是(D)
A.ABCED
B.DBCEA
C.CDABE
D.DCBEA
(63)線性表的順序存儲結(jié)構(gòu)和線性表的鏈?zhǔn)酱鎯Y(jié)構(gòu)分別是(B)
A.順序存取的存儲結(jié)構(gòu)、順序存取的存儲結(jié)構(gòu)
B,隨機(jī)存取的存儲結(jié)構(gòu)、順序存取的存儲結(jié)構(gòu)
C.隨機(jī)存取的存儲結(jié)構(gòu)、隨機(jī)存取的存儲結(jié)構(gòu)
D.任意存取的存儲結(jié)構(gòu)、任意存取的存儲結(jié)構(gòu)
(64)在單鏈表中,增加頭結(jié)點(diǎn)的目的是(A)
A.方便運(yùn)算的實(shí)現(xiàn)
B.使單鏈表至少有一個(gè)結(jié)點(diǎn)
C.標(biāo)識表結(jié)點(diǎn)中首結(jié)點(diǎn)的位置
D.說明單鏈表是線性表的鏈?zhǔn)酱鎯?shí)現(xiàn)
(65)軟件設(shè)計(jì)包括軟件的結(jié)構(gòu)、數(shù)據(jù)接口和過程設(shè)計(jì),其中軟件的過程設(shè)計(jì)是指(B)注:
P73
A.模塊間的關(guān)系
B.系統(tǒng)結(jié)構(gòu)部件轉(zhuǎn)換成軟件的過程描述
C.軟件層次結(jié)構(gòu)
D.軟件開發(fā)過程
(66)為了避免流程圖在描述程序邏輯時(shí)的靈活性,提出了用方框圖來代替?zhèn)鹘y(tǒng)的程序
流程圖,通常也把這種圖稱為(B)注:P82
A.PAD圖
B.N-S圖
C.結(jié)構(gòu)圖
D.數(shù)據(jù)流圖
(67)數(shù)據(jù)處理的最小單位是(C)注:數(shù)據(jù)項(xiàng)不可再分割
A.數(shù)據(jù)
B.數(shù)據(jù)元素
C.數(shù)據(jù)項(xiàng)
D.數(shù)據(jù)結(jié)構(gòu)
(68)下列有關(guān)數(shù)據(jù)庫的描述,正確的是(C)注:P102
A.數(shù)據(jù)庫是一個(gè)DBF文件
B.數(shù)據(jù)庫是一個(gè)關(guān)系
C.數(shù)據(jù)庫是一個(gè)結(jié)構(gòu)化的數(shù)據(jù)集合
D.數(shù)據(jù)庫是一組文件
(69)單個(gè)用戶使用的數(shù)據(jù)視圖的描述稱為(A)注:P108
A.外模式
B.概念模式
C.內(nèi)模式
D.存儲模式
(70)需求分析階段的任務(wù)是確定(D)
A.軟件開發(fā)方法
B.軟件開發(fā)工具
C.軟件開發(fā)費(fèi)用
D.軟件系統(tǒng)功能
(71)算法分析的目的是(D)注:書中沒有總結(jié),但要牢記
A.找出數(shù)據(jù)結(jié)構(gòu)的合理性
B.找出算法中輸入和輸出之間的關(guān)系
C.分析算法的易懂性和可靠性
D.分析算法的效率以求改進(jìn)
(72)鏈表不具有的特點(diǎn)是(B)
A.不必事先估計(jì)存儲空間
B.可隨機(jī)訪問任一元素
C.插入刪除不需要移動(dòng)元素
D.所需空間與線性表長度成正比
(73)已知數(shù)據(jù)表A中每個(gè)元素距其最終位置不遠(yuǎn),為節(jié)省時(shí)間,應(yīng)采用的算法是(B)
A.堆排序
B.直接插入排序
C.快速排序
D.直接選擇排序
(74)用鏈表表示線性表的優(yōu)點(diǎn)是(A)注:因?yàn)椴恍枰苿?dòng)元素
A.便于插入和刪除操作
B.數(shù)據(jù)元素的物理順序與邏輯順序相同
C.花費(fèi)的存儲空間較順序存儲少
D.便于隨機(jī)存取
(75)下列不屬于結(jié)構(gòu)化分析的常用工具的是(D)注:P67
A.數(shù)據(jù)流圖
B.數(shù)據(jù)字典
C.判定樹
D.PAD圖
(76)軟件開發(fā)的結(jié)構(gòu)化生命周期方法將軟件生命周期劃分成(A)
A,定義、開發(fā)、運(yùn)行維護(hù)
B.設(shè)計(jì)階段、編程階段、測試階段
C.總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編程調(diào)試
D.需求分析、功能定義、系統(tǒng)設(shè)計(jì)
(77)在軟件工程中,白箱測試法可用于測試程序的內(nèi)部結(jié)構(gòu)。此方法將程序看做是(C)
注:P87
A.循環(huán)的集合
B.地址的集合
C.路徑的集合
D.目標(biāo)的集合
(78)在數(shù)據(jù)管理技術(shù)發(fā)展過程中,文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)的主要區(qū)別是數(shù)據(jù)庫系統(tǒng)具
有(D)注:數(shù)據(jù)模型采用關(guān)系模型(二維表)
A.數(shù)據(jù)無冗余
B,數(shù)據(jù)可共享
C.專門的數(shù)據(jù)管理軟件
D.特定的數(shù)據(jù)模型
(79)分布式數(shù)據(jù)庫系統(tǒng)不具有的特點(diǎn)是(B)
A.分布式
B.數(shù)據(jù)冗余
C.數(shù)據(jù)分布性和邏輯整體性
D.位置透明性和復(fù)制透明性
(80)下列說法中,不屬于數(shù)據(jù)模型所描述的內(nèi)容的是(C)注:P110
A.數(shù)據(jù)結(jié)構(gòu)
B.數(shù)據(jù)操作
C.數(shù)據(jù)查詢
D.數(shù)據(jù)約束
(81)根據(jù)數(shù)據(jù)結(jié)構(gòu)中各數(shù)據(jù)元素之間前后件關(guān)系的復(fù)雜程度,一般將數(shù)據(jù)結(jié)構(gòu)分成(。
A.動(dòng)態(tài)結(jié)構(gòu)和靜態(tài)結(jié)構(gòu)
B.緊湊結(jié)構(gòu)和非緊湊結(jié)構(gòu)
C.線性結(jié)構(gòu)和非線性結(jié)構(gòu)
D.內(nèi)部結(jié)構(gòu)和外部結(jié)構(gòu)
(82)下列敘述中,錯(cuò)誤的是(B)
A.數(shù)據(jù)的存儲結(jié)構(gòu)與數(shù)據(jù)處理的效率密切相關(guān)
B.數(shù)據(jù)的存儲結(jié)構(gòu)與數(shù)據(jù)處理的效率無關(guān)
C.數(shù)據(jù)的存儲結(jié)構(gòu)在計(jì)算機(jī)中所占的空間不一定是連續(xù)的
D.一種數(shù)據(jù)的邏輯結(jié)構(gòu)可以有多種存儲結(jié)構(gòu)
(83)線性表L=(al,a2,a3,...ai,...an),下列說法正確的是(D)
A.每個(gè)元素都有一個(gè)直接前件和直接后件
B.線性表中至少要有一個(gè)元素
C.表中諸元素的排列順序必須是由小到大或由大到
D.除第一個(gè)元素和最后一個(gè)元素外,其余每個(gè)元素都有一個(gè)且只有一個(gè)直接前件和直接
后件
(84)線性表若采用鏈?zhǔn)酱鎯Y(jié)構(gòu)時(shí)?,要求內(nèi)存中可用存儲單元的地址(D)
A.必須是連續(xù)的
B.部分地址必須是連續(xù)的
C.一定是不連續(xù)的
D.連續(xù)不連續(xù)都可以
(85)棧通常采用的兩種存儲結(jié)構(gòu)是(A)
A.順序存儲結(jié)構(gòu)和鏈?zhǔn)酱鎯Y(jié)構(gòu)
B.散列方式和索引方式
C.鏈表存儲結(jié)構(gòu)和數(shù)組
D.線性存儲結(jié)構(gòu)和非線性存儲結(jié)構(gòu)
(86)下列數(shù)據(jù)結(jié)構(gòu)中,按先進(jìn)后出原則組織數(shù)據(jù)的是(B)
A.線性鏈表
B.棧
C.循環(huán)鏈表
D.順序表
(87)樹是結(jié)點(diǎn)的集合,它的根結(jié)點(diǎn)數(shù)目是(C)
A.有且只有1
B.1或多于1
C.0或1
D.至少2
(88)具有3個(gè)結(jié)點(diǎn)的二叉樹有(D)
A.2種形態(tài)
B.4種形態(tài)
C.7種形態(tài)
D.5種形態(tài)
(89)設(shè)一棵二叉樹中有3個(gè)葉子結(jié)點(diǎn),有.8個(gè)度為1的結(jié)點(diǎn),則該二叉樹中總的結(jié)點(diǎn)數(shù)
為(B)
A.12
B.13
C.14
D.15
(90)在結(jié)構(gòu)化程序設(shè)計(jì)思想提出之前,在程序設(shè)計(jì)中曾強(qiáng)調(diào)程序的效率,現(xiàn)在,與程序
的效率相比,人們更重視程序的(C)
A.安全性
B.一致性
C.可理解性
D.合理性
(91)為了提高測試的效率,應(yīng)該(D)注:P85
A.隨機(jī)選取測試數(shù)據(jù)
B.取一切可能的輸入數(shù)據(jù)作為測試數(shù)據(jù)
C.在完成編碼以后制定軟件的測試計(jì)劃
D.集中對付那些錯(cuò)誤群集的程序
(92)軟件生命周期中所花費(fèi)用最多的階段是(D)
A.詳細(xì)設(shè)計(jì)
B.軟件編碼
C.軟件測試
D.軟件維護(hù)
二、填空題
(1)算法的復(fù)雜度主要包括復(fù)雜度和空間復(fù)雜度。答:時(shí)間
(2)數(shù)據(jù)的邏輯結(jié)構(gòu)在計(jì)算機(jī)存儲空間中的存放形式稱為數(shù)據(jù)的。答:存儲結(jié)構(gòu)
#物理結(jié)構(gòu)
(3)若按功能劃分,軟件測試的方法通常分為白盒測試方法和測試方法。答:黑
盒
(4)如果一個(gè)工人可管理多個(gè)設(shè)施,而一個(gè)設(shè)施只被一個(gè)工人管理,則實(shí)體"工人"與實(shí)
體"設(shè)備"之間存在聯(lián)系。
答:一對多#1:N#l:n
(5)關(guān)系數(shù)據(jù)庫管理系統(tǒng)能實(shí)現(xiàn)的專門關(guān)系運(yùn)算包括選擇、連接和。答:投影
(6)在先左后右的原則下,根據(jù)訪問根結(jié)點(diǎn)的次序,二叉樹的遍歷可以分為三種:前序
遍歷、遍歷和后序遍歷。答:中序
(7)結(jié)構(gòu)化程序設(shè)計(jì)方法的主要原則可以概括為自頂向下、逐步求精、和限制使
用goto語句。答:模塊化
(8)軟件的調(diào)試方法主要有:強(qiáng)行排錯(cuò)法、和原因排除法。答:回溯法
(9)數(shù)據(jù)庫系統(tǒng)的三級模式分別為模式、內(nèi)部級模式與外部級模式。答:概念#
概念級
(10)數(shù)據(jù)字典是各類數(shù)據(jù)描述的集合,它通常包括5個(gè)部分,即數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、
數(shù)據(jù)流、和處理過程。答:數(shù)據(jù)存儲
(11)設(shè)一棵完全二叉樹共有500個(gè)結(jié)點(diǎn),則在該二叉樹中有個(gè)葉子結(jié)點(diǎn)。答:
250
(12)在最壞情況下,冒泡排序的時(shí)間復(fù)雜度為。答:
n(n-1)/2#n*(n-1)/2#O(n(n-1)/2)#O(n*(n-1)/2)
(13)面向?qū)ο蟮某绦蛟O(shè)計(jì)方法中涉及的對象是系統(tǒng)中用來描述客觀事物的一個(gè)
。答:實(shí)體
(14)軟件的需求分析階段的工作,可以概括為
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 個(gè)人餐飲業(yè)務(wù)承包合同樣本版B版
- 2025版美容院會(huì)員積分管理與消費(fèi)激勵(lì)合作協(xié)議4篇
- 二零二五版數(shù)字貨幣錢包技術(shù)開發(fā)與合作協(xié)議范本3篇
- 2025年度智慧醫(yī)療平臺建設(shè)承包合同范本3篇
- 2025年度專業(yè)打字員崗位勞動(dòng)合同規(guī)范文本4篇
- 2025年度連鎖藥房營業(yè)員專業(yè)培訓(xùn)及聘用合同4篇
- 2025年度10kv配電站施工期間消防安全保障合同正規(guī)范本3篇
- 2025年度醫(yī)療器械冷鏈運(yùn)輸安全協(xié)議3篇
- 個(gè)人經(jīng)營性貸款合同2024年度版2篇
- 居住區(qū)文化活動(dòng)空間設(shè)計(jì)與居民參與度關(guān)系
- 教代會(huì)提案征集培訓(xùn)
- 高考語文復(fù)習(xí)【知識精研】《千里江山圖》高考真題說題課件
- 河北省承德市2023-2024學(xué)年高一上學(xué)期期末物理試卷(含答案)
- 012主要研究者(PI)職責(zé)藥物臨床試驗(yàn)機(jī)構(gòu)GCP SOP
- 農(nóng)耕研學(xué)活動(dòng)方案種小麥
- 2024年佛山市勞動(dòng)合同條例
- 污水管網(wǎng)規(guī)劃建設(shè)方案
- 城鎮(zhèn)智慧排水系統(tǒng)技術(shù)標(biāo)準(zhǔn)
- 采購管理制度及流程采購管理制度及流程
- 五年級美術(shù)下冊第9課《寫意蔬果》-優(yōu)秀課件4人教版
- 節(jié)能降耗課件
評論
0/150
提交評論