版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
計(jì)算機(jī)語言(VC)復(fù)習(xí)資料
超越高度
一.單選題(共21題,46.2分)
超越高度
1當(dāng)消息產(chǎn)生時(shí),系統(tǒng)調(diào)用CwinApp的()函數(shù)對消息進(jìn)行解析,并發(fā)送到相
應(yīng)的窗口進(jìn)行處理。
ARun
BCreate
CTranslateMessage
DDispatchMessage
正確答案:A
2編寫C++程序一般需經(jīng)過的幾個(gè)步驟依次是()。
A編輯、調(diào)試、編譯、連接
B編輯、編譯、連接、運(yùn)行
C編譯、調(diào)試、編輯、連接
D編譯、編輯、連接、運(yùn)行
正確答案:B
3決定C++語言中函數(shù)的返回值類型的是()。
Areturn語句中的表達(dá)式類型
B調(diào)用該函數(shù)時(shí)系統(tǒng)隨機(jī)產(chǎn)生的類型
C調(diào)用該函數(shù)時(shí)的主調(diào)用函數(shù)類型
D在定義該函數(shù)時(shí)所指定的數(shù)據(jù)類型
正確答案:D
4對基類和派生類的關(guān)系描述中,錯(cuò)誤的是()。
A派生類是基類的具體化
B基類繼承了派生類的屬性
C派生類是基類定義的延續(xù)
D派生類是基類的特殊化
正確答案:B
5設(shè)有代碼“structBOOK{chartitile[40];floatprice;};則下列不正確的變量定義
語句是()。
ABOOKbook;
BBOOKbook={"C++編程”,27.5};
CBOOK*x=newBOOK;
DBOOKx=newBOOK;
正確答案:D
6下面敘述不正確的是()。
A派生類一般都用公有派生
B對基類成員的訪問必須是無二義性的
C賦值兼容規(guī)則也適用于多重繼承的組合
D基類的公有成員在派生類中仍然是公有的
正確答案:D
7已知類A是類B的友元,類B是類C的友元,則()。
A類A一定是類C的友元
B類C一定是類A的友元
C類C的成員函數(shù)可以訪問類B的任何成員
D類A的成員函數(shù)可以訪問類B的任何成員
正確答案:D
8對于類中定義的成員,其隱含訪問權(quán)限為()。
Aprotected
Bprivate
Cpublic
Dstatic
正確答案:B
9友元的作用是()。
A提高程序的運(yùn)行效率
B加強(qiáng)類的封裝性
C實(shí)現(xiàn)數(shù)據(jù)的隱藏性
D增強(qiáng)成員函數(shù)的種類
正確答案:A
10對于下面循環(huán)語句:
inti=0;
do
i++;
while(i*i<10);,其循環(huán)體被執(zhí)行的次數(shù)為()。
A4
B3
C5
D2
正確答案:A
11一個(gè)類的友元函數(shù)或友元類能夠通過成員操作符訪問該類的()。
A私有成員
B公有成員
C保護(hù)成員
D所有成員
正確答案:D
12關(guān)于純虛函數(shù)和抽象類的描述中,錯(cuò)誤的是()。
A純虛函數(shù)是一種特殊的虛函數(shù),它沒有具體實(shí)現(xiàn)
B抽象類是指具有純虛函數(shù)的類
C一個(gè)基類中說明有純虛函數(shù),該基類的派生類一定不是抽象類
D抽象類只能作為基類使用,其純虛函數(shù)的實(shí)現(xiàn)由派生類給出
正確答案:A
13根據(jù)對話框的行為性質(zhì),對話框可以分為兩類:()。
A對話框資源和對話框類
B模式對話框和非模式對話框
C對話框資源和對話框模板
D消息對話框和模式對話框
正確答案:B
14通??截惓跏蓟瘶?gòu)造函數(shù)的參數(shù)是()。
A某個(gè)對象名
B某個(gè)對象成員名
C某個(gè)對象的引用名
D某個(gè)對象的指針名
正確答案:C
15有關(guān)構(gòu)造函數(shù)的說法不正確的是()。
A構(gòu)造函數(shù)名和類名一樣
B構(gòu)造函數(shù)無任何函數(shù)類型
C構(gòu)造函數(shù)有且只有一個(gè)
D構(gòu)造函數(shù)在說明類對象時(shí)自動(dòng)執(zhí)行
正確答案:C
16下面關(guān)于MFC中類的說法,正確的是()。
ACobject類是MFC所有類的基類
BCView是CWnd類的子類
CCdialog是CWnd類的子類
DCarchive類可以支持串行化操作
正確答案:A
17程序運(yùn)行中需要從鍵盤上輸入多于一個(gè)數(shù)據(jù)時(shí),各數(shù)據(jù)之間應(yīng)使用()符號
作為分隔符。
A空格或逗號
B逗號或回車
C逗號或分號
D空格或回車
正確答案:D
18假設(shè)A為一個(gè)類,則執(zhí)行“Aa,b(3),*p;”語句時(shí)共調(diào)用該類構(gòu)造函數(shù)的次
數(shù)為()。
A2B3C4D5
正確答案:A
19文件包含命令中被包含的文件的擴(kuò)展名為()。
A必須是.h
B不能是.h
C可以是.h或.cpp
D必須是.cpp
正確答案:C
20下列關(guān)于Windows應(yīng)用程序?qū)κ髽?biāo)響應(yīng)的說法,正確的是()。
A只有活動(dòng)窗口才能接受鼠標(biāo)事件
B可以調(diào)用函數(shù)SetCapture。函數(shù)實(shí)現(xiàn)對鼠標(biāo)的捕獲,且捕獲鼠標(biāo)后系統(tǒng)的鍵
盤功能暫時(shí)失效。
C用戶只能調(diào)用系統(tǒng)定義的鼠標(biāo)的光標(biāo)形狀,不能自定義光標(biāo)
D可以通過相應(yīng)單一類型的鼠標(biāo)消息來響應(yīng)鼠標(biāo)的拖動(dòng)事件
正確答案:B
21下列不屬于成員函數(shù)的是()。
A靜態(tài)成員函數(shù)
B析構(gòu)函數(shù)
C友元函數(shù)
D構(gòu)造函數(shù)
正確答案:C
二.填空題(共15題,33.0分)
1編譯時(shí)的多態(tài)通過實(shí)現(xiàn)。
正確答案:
函數(shù)重載;
2this指針始終指向調(diào)用成員函數(shù)的o
正確答案:
對象;
3每個(gè)對象都是所屬類的一個(gè)o
正確答案:
實(shí)例;
4為解決多繼承中因公共基類而產(chǎn)生的二義性問題,C++提供了機(jī)
制。將公共基類聲明為它以后,它在派生類中只產(chǎn)生一個(gè)實(shí)例。
正確答案:
虛基類;
5C++支持兩種多態(tài)性:編譯時(shí)的多態(tài)性和時(shí)的多態(tài)性。
正確答案:
運(yùn)行;
6一個(gè)抽象類的派生類可以實(shí)例化的必要條件是實(shí)現(xiàn)了所有的定
義。
正確答案:
純虛函數(shù);
7classtest{
正確答案:
25;
8如果要把A類成員函數(shù)voidf()聲明為類B的友元函數(shù),則應(yīng)在類B的定義中
加入語句;
正確答案:
friendvoidA::f();
9假設(shè)為類A定義了構(gòu)造函數(shù)“A(intaa,char*bb=NULL):a(aa),b(bb)”,則該類
中至少包含有個(gè)數(shù)據(jù)成員。
正確答案:
2;
10C++程序的源文件擴(kuò)展名為。
正確答案:
cpp;
UC++中函數(shù)的參數(shù)傳遞一種是按值傳遞,另一種是傳遞。
正確答案:
地址
引用;
12MFC中的集合類包括數(shù)組、、映射。
正確答案:
列表;
13假定x是一個(gè)邏輯變量,則X||false的值為。
正確答案:
X;
14若多個(gè)基類及其派生類中都定義了同名函數(shù)成員,要訪問相應(yīng)函數(shù)時(shí),就緒
要在函數(shù)名前加上__________和類區(qū)分符。
正確答案:
類名;
15從一條函數(shù)原型語句“intfun1(void)”可知,該函數(shù)帶有個(gè)參數(shù)。
正確答案:
0;
三.程序分析題(共3題,6.6分)
1運(yùn)行結(jié)果:
調(diào)用構(gòu)造函數(shù)lo
調(diào)用構(gòu)造函數(shù)2。
5調(diào)用析構(gòu)函數(shù)。
調(diào)用析構(gòu)函數(shù)。
正確答案:
運(yùn)行結(jié)果:
classB:1classA:hello
2分析如下程序?qū)懗鲞\(yùn)行結(jié)果。
#include<iostream.h>
classCount{
private:
staticintcount;
public:
Count(){count++;}
?Count。{count—;}
staticinHM(){returncount;}
);
intCount::count=100;
voidmain()
(
Countcl,c2,c3,c4;
cout?Count::HM();
)
正確答案:
運(yùn)行結(jié)果:
104
3分析如下程序?qū)懗鲞\(yùn)行結(jié)果。
#include<iostream.h>
classB{
private:a,b;
public:
B(){}
B(intx,inty){a=x;b=y;}
voidprintb(void){cout?,,a=,,?a?,,b=,,?b?endl;}
);
clasA{
private:Bc;
public:
A(){)
A(intx,inty):c(x,y){}
voidprinta(void){c.printb();}
voidmain()
Am(7,9);
m.printa();
}
正確答案:
運(yùn)行結(jié)果:
a=7,b=9
四.程序填空(共4題,8.8分)
1輸入10個(gè)整數(shù),用冒泡排序法按從小打大的順序排序,并輸出排序結(jié)果。
程序如下:
#include<iostream.h>
voidmain(){
inti,j,temp,*pt;
int*Pn=(1)int[10];
for(i=l;i<=10;i++){
cout?"Pleaseenteranumber:"?endl;
cin?*(Pn+i);
}
for(i=l;i<=10;i++)
for(j=l;(2);j++)
if(*(⑶))>*(Pn+j+l){
temp=*(Pn+j);
*(Pn+j)=*(Pn+j+1);
*(Pn+j+l)=(4)
)
for(i=l;i<10;i++)
cout?*(Pn+i)?"
正確答案:
答案:
(1)new
⑵j<=10-i
⑶Pn+j
(4)temp
2Fibonacci數(shù)列滿足如下列遞歸關(guān)系:
f(l)=Of(2)=lf(n)=f(n-l)+f(n-l)(n>2)
編寫程序計(jì)算Fibonacci數(shù)列第n項(xiàng)值。
程序如下:
#include<iostream.h>
(1);
voidmain(void){
intnumber;
cout?"Pleaseenteraintegernumber:"?endl;
cin?number;
longresult=(2);
cout?HResult=n?result?endl;
)
longFib(intn){
if((3))return0;
elseif(n==2)return1;
else
return(4);;
}
正確答案:
答案:
(1)longFib(int)
(2)Fib(number)
(3)n==1(4)Fib(n-l)+Fib(n-2)
3#include<iostream.h>
classbase{
intX;
public:
(1)〃為X設(shè)置值
(2)〃取X值
};
voidmain(){
basetest;
test.init(6);
cout?test.GetNum();
)
正確答案:
(1)voidinit(inti){X=i;}
(2)intGetNum(){returnX;}
4classA{
inta,b;
public:
A(intaa=0,intbb=O)(1)〃分別用aa和bb對應(yīng)初始化a和b
(}
);
main(){
(2)〃定義類A的對象X并用5初始化,同時(shí)定義y,并用x初始化
A*p=&x;
}
正確答案:
答案:
(1):a(aa),b(bb)
(2)Ax(5),y(x)
五.編程題(共2題,5.4分)
1已定義一個(gè)Shape抽象類,在此基礎(chǔ)上派生出矩形Rectangle和圓形Circle
類,二者都有GetPerim()函數(shù)計(jì)算對象的周長,并編寫測試main。函數(shù)。
classShape
{public:
Shape(){}
-Shape(){}
virtualfloatGetPerim()=O;
)
正確答案:
程序如下:
classRectangle:publicShape
(
public:
Rectangle(floati,floatj):L(i),W(j){}-Rectangle(){}
floatGetPerim()
(
return2*(L+W);
}
private:
floatL,W;
);
classCircle:publicShape
(
public:
Circle(floatr):R(r){}
floatGetPerim()
return3.14*2*R;
private:
floatR;
);
voidmain()
(
Shape*sp;
sp=newCircle(lO);
cout?sp->GetPerim()?endl;
sp=newRectangle(6,4);
cout?sp->GetPerim()?endl;
)
22、求n(n=3)個(gè)學(xué)生的最高分和最低分及姓名,下面已經(jīng)給出student類聲明和
main函數(shù),請寫出下面的student類的實(shí)現(xiàn)部分的三個(gè)函數(shù):student(char
na,?intd),*getname(),compare(student&s1,student&s2)o
#include<iostream.h>#include<string.h>
classstudent
(
charname,10,;
intdeg;
public:
student(charna?=,M,,intd=0);
char*getname();
friendintcompare(student&sl,student&s2);
intgetdeg();
);
voidmain()
(
studentst,尸{student("王強(qiáng)”,74),student("李剛”,68),student("張雪”,84)};
inti=0,min=0,max=0;
for(i=l;i<3;i++)
if(compare(st,max?st,i,)=-1)
max=i;
if(compare(st,min?st,i,)==1)
min=i;
)
COUt?”最高分:”《51,111@*,圖61(1。8()<<“姓名:"<<$1,01@*,考氏11@1119()<<。11(11;
cout<<“最低分:"<<(*(st+min)).getdeg()?“姓名:“<vst,max,.getname()?endl;
)
正確答案:
程序如下:
#include<iostream.h>#include<string.h>
classstudent
{charname,10,;
intdeg;
public:
student(charna,,="\intd=0);
char*getname();
friendintcompare(student&sl,student&s2);
intgetdegO;
);
voidmain(){
studentst,,={student("王強(qiáng)”,74),student("李剛”,68),student("張雪”,84)};
inti=0,min=0,max=0;
for(i=l;i<3;i++){
if(compare(st,max?st,i,)=-1)max=i;
if(compare(st,min?st,i,)==1)min=i;
cout?"最高分:"?st,max,.getdeg()?n姓名:,,?st,max,.getname()?endl;
cout<v"最低分:"<<(*(st+min)).getdeg()<<"姓名:"v<st,max,?getname()?endl;
計(jì)算機(jī)語言(VC)復(fù)習(xí)資料
一.單選題(共23題,50.6分)
1在類中說明的成員可以使用關(guān)鍵字的是()。
Apublic
Bextem
Ccpu
Dregister
正確答案:A
2在重載一個(gè)運(yùn)算符時(shí),其參數(shù)表中沒有任何參數(shù),這表明該運(yùn)算符是()。
A作為友元函數(shù)重載的一元運(yùn)算符
B作為成員函數(shù)重載的一元運(yùn)算符
C作為友元函數(shù)重載的二元運(yùn)算符
D作為成員函數(shù)重載的二元運(yùn)算符
正確答案:B
3關(guān)于純虛函數(shù)和抽象類的描述中,錯(cuò)誤的是()。
A純虛函數(shù)是一種特殊的虛函數(shù),它沒有具體實(shí)現(xiàn)
B抽象類是指具有純虛函數(shù)的類
C一個(gè)基類中說明有純虛函數(shù),該基類的派生類一定不是抽象類
D抽象類只能作為基類使用,其純虛函數(shù)的實(shí)現(xiàn)由派生類給出
正確答案:A
4編寫C++程序一般需經(jīng)過的幾個(gè)步驟依次是()。
A編輯、調(diào)試、編譯、連接
B編輯、編譯、連接、運(yùn)行
C編譯、調(diào)試、編輯、連接
D編譯、編輯、連接、運(yùn)行
正確答案:B
5友元的作用是()。
A提高程序的運(yùn)行效率
B加強(qiáng)類的封裝性
C實(shí)現(xiàn)數(shù)據(jù)的隱藏性
D增強(qiáng)成員函數(shù)的種類
正確答案:A
6所謂數(shù)據(jù)封裝就是將一組數(shù)據(jù)和與這組數(shù)據(jù)有關(guān)操作組裝在一起,形成一個(gè)
實(shí)體,這實(shí)體也就是()。
A類
B對象
C函數(shù)體
D數(shù)據(jù)塊
正確答案:A
7下列二維數(shù)組定義,正確的是()。
Ainta[5][];
Binta[][5]
Cinta[][3]={{l,3,5},{2})
Dinta[](10)
正確答案:C
8一個(gè)類的友元函數(shù)或友元類能夠通過成員操作符訪問該類的()。
A私有成員
B公有成員
C保護(hù)成員
D所有成員
正確答案:D
9文件包含命令中被包含的文件的擴(kuò)展名為()。
A必須是.h
B不能是.h
C可以是.h或.cpp
D必須是.cpp
正確答案:C
10假定一個(gè)類的構(gòu)造函數(shù)為A(intaa,intbb){a=aa--;b=a*bb;},則執(zhí)行Ax(4,5);語
句后,x.a和x.b的值分別為()。
A3和15B5和4C4和20D20和5正確答案:C
11決定C++語言中函數(shù)的返回值類型的是()。
Areturn語句中的表達(dá)式類型
B調(diào)用該函數(shù)時(shí)系統(tǒng)隨機(jī)產(chǎn)生的類型
C調(diào)用該函數(shù)時(shí)的主調(diào)用函數(shù)類型
D在定義該函數(shù)時(shí)所指定的數(shù)據(jù)類型
正確答案:D
12程序運(yùn)行中需要從鍵盤上輸入多于一個(gè)數(shù)據(jù)時(shí),各數(shù)據(jù)之間應(yīng)使用()符號
作為分隔符。
A空格或逗號
B逗號或回車
C逗號或分號
D空格或回車
正確答案:D
13設(shè)有代碼"structBOOK{chartitile[40];floatprice;};則下列不正確的變量定
義語句是()。
ABOOKbook;
BBOOKbook={“C++編程”,27.5};
CBOOK*x=newBOOK;
DBOOKx=newBOOK;
正確答案:D
14下面循環(huán)語句中內(nèi)層循環(huán)的循環(huán)體S的執(zhí)行總次數(shù)為()。
for(inti=0;i<n;i++)
for(intj=i;j<n;j++)
s
An2
B(n+l)/2
Cn(n+l)/2
Dn(n-l)/2
正確答案:C
15下列說法正確的是()。
A類定義中只能說明函數(shù)成員的函數(shù)頭,不能定義函數(shù)體
B類中的函數(shù)成員可以在類體中定義,也可以在類體之外定義
C類中的函數(shù)成員在類體之外定義時(shí)必須要與類聲明在同一文件中
D在類體之外定義的函數(shù)成員不能操作該類的私有數(shù)據(jù)成員
正確答案:B
16在公有派生類的成員函數(shù)不能直接訪問基類中繼承來的某個(gè)成員,則該成員
一定是基類中的()。
A私有成員
B公有成員
C保護(hù)成員
D保護(hù)成員或私有成員
正確答案:A
17下面敘述不正確的是()。
A派生類一般都用公有派生
B對基類成員的訪問必須是無二義性的
C賦值兼容規(guī)則也適用于多重繼承的組合
D基類的公有成員在派生類中仍然是公有的
正確答案:D
18根據(jù)對話框的行為性質(zhì),對話框可以分為兩類:()。
A對話框資源和對話框類
B模式對話框和非模式對話框
C對話框資源和對話框模板
D消息對話框和模式對話框
正確答案:B
19以下說法正確的是()。
A用戶調(diào)用標(biāo)準(zhǔn)庫函數(shù)前,必須重新定義
B用戶可以重新定義標(biāo)準(zhǔn)庫函數(shù),若如此,該函數(shù)將失去原有含義
C系統(tǒng)不允許用戶重新定義標(biāo)準(zhǔn)庫函數(shù)
D用戶調(diào)用標(biāo)準(zhǔn)庫函數(shù)前,不必使用預(yù)編譯命令將該函數(shù)所在文件包括到用戶
源文件中
正確答案:B
20已知類A是類B的友元,類B是類C的友元,則()。
A類A一定是類C的友元
B類C一定是類A的友元
C類C的成員函數(shù)可以訪問類B的任何成員
D類A的成員函數(shù)可以訪問類B的任何成員
正確答案:D
21下列關(guān)于Windows應(yīng)用程序?qū)κ髽?biāo)響應(yīng)的說法,正確的是()。
A只有活動(dòng)窗口才能接受鼠標(biāo)事件
B可以調(diào)用函數(shù)SetC叩ture()函數(shù)實(shí)現(xiàn)對鼠標(biāo)的捕獲,且捕獲鼠標(biāo)后系統(tǒng)的鍵
盤功能暫時(shí)失效。
C用戶只能調(diào)用系統(tǒng)定義的鼠標(biāo)的光標(biāo)形狀,不能自定義光標(biāo)
D可以通過相應(yīng)單一類型的鼠標(biāo)消息來響應(yīng)鼠標(biāo)的拖動(dòng)事件
正確答案:B
22下列不屬于成員函數(shù)的是()。
A靜態(tài)成員函數(shù)
B析構(gòu)函數(shù)
C友元函數(shù)
D構(gòu)造函數(shù)
正確答案:C
23對基類和派生類的關(guān)系描述中,錯(cuò)誤的是()。
A派生類是基類的具體化
B基類繼承了派生類的屬性
C派生類是基類定義的延續(xù)
D派生類是基類的特殊化
正確答案:B
二.填空題(共10題,22.0分)
1編譯時(shí)的多態(tài)通過實(shí)現(xiàn)。
正確答案:
函數(shù)重載;
2一個(gè)抽象類的派生類可以實(shí)例化的必要條件是實(shí)現(xiàn)了所有的定
義。
正確答案:
純虛函數(shù);
3C++程序的源文件擴(kuò)展名為。
正確答案:
cpp:
4兩個(gè)函數(shù)的函數(shù)名相同,但參數(shù)的個(gè)數(shù)和類型不同,則稱為o
正確答案:
函數(shù)重載
重載函數(shù);
5this指針始終指向調(diào)用成員函數(shù)的o
正確答案:
對象;
6classtest{
正確答案:
25;
7假設(shè)為類A定義了構(gòu)造函數(shù)“A(intaa,char*bb=NULL):a(aa),b(bb)”,則該類
中至少包含有個(gè)數(shù)據(jù)成員。
正確答案:
2;
8C++支持兩種多態(tài)性:編譯時(shí)的多態(tài)性和時(shí)的多態(tài)性。
正確答案:
運(yùn)行;
9定義類動(dòng)態(tài)對象數(shù)組時(shí),元素只能靠自動(dòng)調(diào)用該類的來進(jìn)行初始
化。
正確答案:
無參構(gòu)造函數(shù);
10為解決多繼承中因公共基類而產(chǎn)生的二義性問題,C++提供了機(jī)
制。將公共基類聲明為它以后,它在派生類中只產(chǎn)生一個(gè)實(shí)例。
正確答案:
虛基類;
三.程序分析題(共6題,13.2分)
1分析如下程序?qū)懗鲞\(yùn)行結(jié)果。
#include<iostream.h>
classA{
private:
doubleTotal,Rate;
public:
A(doublet,doubler){Total=t;Rate=r;}
frenddoubleCount(A&a){
a.Total+=a.Rate*a.Total;
returncount;
)
);
voidmain()
(
Aal(1000.0,0.035),a2(768.0,0.028);
cout?Count(al)?","?Count(a2)?endl;
正確答案:
運(yùn)行結(jié)果:
1035,789.504
2分析如下程序?qū)懗鲞\(yùn)行結(jié)果。
#include<iostream.h>
classTest{
intx,y;
public:
Test(inti,intj=0){x=i;y=j;}
intget(inti,intj){returni+j;}
);
voidmain(){
Testtl(2),t2(4,6);
int(Test::*p)(int,int=10);
p=Test::get;
cout?(tl.*p)(5)?endl;
Test*pl=&t2;
cout?(p1->*p)(7,20)?endl;
)
正確答案:
運(yùn)行結(jié)果:
1527
3分析如下程序?qū)懗鲞\(yùn)行結(jié)果。
#include<iostream.h>
classCount{
private:
staticintcount;
public:
Count(){count++;}
?Count。{count—;}
staticinHM(){returncount;}
);
intCount::count=100;
voidmain()
(
Countcl,c2,c3,c4;
cout?Count::HM();
)
正確答案:
運(yùn)行結(jié)果:
104
4分析如下程序?qū)懗鲞\(yùn)行結(jié)果。
#include<iostream.h>
classAdd{
private:intx,y;
public:
Add(inta,intb){
x=a;y=b;
cout?,調(diào)用構(gòu)造函數(shù)1。Vvendl;
)
Add(Add&p){
x=p.a;y=p.b;
coutvv,調(diào)用構(gòu)造函數(shù)2。V<endl;
?Add(){
countcc'調(diào)用析構(gòu)函數(shù)'<<endl;
intadd(){returnx+y;}
);
voidmain(){
Addpl(2,3);
Addp2(pl);
cout?p2.add()?endl;
)
正確答案:
運(yùn)行結(jié)果:
調(diào)用構(gòu)造函數(shù)lo
調(diào)用構(gòu)造函數(shù)2。
5調(diào)用析構(gòu)函數(shù)。
調(diào)用析構(gòu)函數(shù)。
5運(yùn)行結(jié)果:
調(diào)用構(gòu)造函數(shù)lo
調(diào)用構(gòu)造函數(shù)2。
5調(diào)用析構(gòu)函數(shù)。
調(diào)用析構(gòu)函數(shù)。
正確答案:
運(yùn)行結(jié)果:
classB:1classA:hello
6分析如下程序?qū)懗鲞\(yùn)行結(jié)果。
#include<iostream.h>
classB{
private:a,b;
public:
B(){}
B(intx,inty){a=x;b=y;}
voidprintb(void){cout?,,a=,,?a?,,b=,,?b?endl;}
clasA{
private:Bc;
public:
A(){}
A(intx,inty):c(x,y){}
voidprinta(void){c.printb();}
);
voidmain()
(
Am(7,9);
m.printa();
)
正確答案:
運(yùn)行結(jié)果:
a=7,b=9
四.程序填空(共5題,11.0分)
[Fibonacci數(shù)列滿足如下列遞歸關(guān)系:
f(l)=0f(2)=lf(n)=f(n-l)+f(n-l)(n>2)
編寫程序計(jì)算Fibonacci數(shù)列第n項(xiàng)值。
程序如下:
#include<iostream.h>
(1);
voidmain(void){
intnumber;
cout?"Pleaseenteraintegernumber:"?endl;
cin?number;
longresult=(2);
cout?"Result=H?result?endl;
)
longFib(intn){
if((3))return0;
elseif(n==2)return1;
else
return(4);;
)
正確答案:
答案:
(1)longFib(int)
(2)Fib(number)
(3)n==l(4)Fib(n-l)+Fib(n-2)
2輸入10個(gè)整數(shù),用冒泡排序法按從小打大的順序排序,并輸出排序結(jié)果。
程序如下:
#include<iostream.h>
voidmain(){
inti,j,temp,*pt;
int*Pn=(1)int[10];
for(i=1;i<=10;i++){
cout?nPleaseenteranumbe亡”<<endl;
cin?*(Pn+i);
)
for(i=l;i<=10;i++)
(2);j++)
if(*((3)))>*(Pn+j+l){
temp=*(Pn+j);
*(Pn+j)=*(Pn+j+1);
*(Pn+j+l)=(4)
)
for(i=l;i<10;i++)
cout?*(Pn+i)?Hn;
)
正確答案:
答案:
(1)new
⑵j<=10-i
⑶Pn+j
(4)temp
3#include<iostream.h>
classbase{
intX;
public:
(1)〃為X設(shè)置值
(2)〃取X值
);
voidmain(){
basetest;
test.init(6);
cout?test.GetNum();
)
正確答案:
(1)voidinit(inti){X=i;}
(2)intGetNum(){returnX;}
4classA{
int*a;
public:
A(intx=0){
a=(1);〃用x初始化a所指向的對象
)
-A(){(2);}〃釋放動(dòng)態(tài)存儲空間
}
正確答案:
(1)newint(x)
(2)deletea;
5classA{
inta,b;
public:
A(intaa=O,intbb=O)(1)〃分別用aa和bb對應(yīng)初始化a和b
()
);
main(){
(2)〃定義類A的對象X并用5初始化,同時(shí)定義y,并用x初始化
A*p=&x;
)
正確答案:
答案:
(1):a(aa),b(bb)
(2)Ax(5),y(x)
五.編程題(共1題32分)
1已定義一個(gè)Shape抽象類,在此基礎(chǔ)上派生出矩形Rectangle和圓形Circle
類,二者都有GetPerim()函數(shù)計(jì)算對象的周長,并編寫測試main()函數(shù)。
classShape
{public:
Shape(){}
~Shape(){}
virtualfloatGetPerim()=O;
)
正確答案:
程序如下:
classRectangle:publicShape
(
public:
Rectangle(floati,floatj):L(i),W(j){{~Rectangle(){}
floatGetPerim()
(
return2*(L+W);
)
private:
floatL,W;
);
classCircle:publicShape
(
public:
Circle(floatr):R(r){}
floatGetPerim()
(
return3.14*2*R;
)
private:
floatR;
voidmain()
Shape*sp;
sp=newCircle(lO);
cout?sp->GetPerim()?endl;
sp=newRectangle(6,4);
cout?sp->GetPerim()?endl;
)
計(jì)算機(jī)語言(VC)復(fù)習(xí)題
一.單選題(共26題,57.2分)
1下面循環(huán)語句中內(nèi)層循環(huán)的循環(huán)體S的執(zhí)行總次數(shù)為()。
for(inti=0;i<n;i++)
for(intj=i;j<n;j++)
S
An2
B(n+l)/2
Cn(n+l)/2
Dn(n-l)/2
正確答案:C
2下面關(guān)于靜態(tài)數(shù)據(jù)成員的描述中,錯(cuò)誤的是()。
A靜態(tài)數(shù)據(jù)成員不是所有該類對象所共用的
B靜態(tài)數(shù)據(jù)成員要在類外初始化
C說明靜態(tài)數(shù)據(jù)成員時(shí)要加修飾符static
D引用靜態(tài)數(shù)據(jù)成員時(shí),要加類名及作用域符
正確答案:D
3根據(jù)對話框的行為性質(zhì),對話框可以分為兩類:()。
A對話框資源和對話框類
B模式對話框和非模式對話框
C對話框資源和對話框模板
D消息對話框和模式對話框
正確答案:B
4決定C++語言中函數(shù)的返回值類型的是()。
Areturn語句中的表達(dá)式類型
B調(diào)用該函數(shù)時(shí)系統(tǒng)隨機(jī)產(chǎn)生的類型
C調(diào)用該函數(shù)時(shí)的主調(diào)用函數(shù)類型
D在定義該函數(shù)時(shí)所指定的數(shù)據(jù)類型
正確答案:D
5類A的缺省構(gòu)造函數(shù)和析構(gòu)函數(shù)是()。
AA()和~人()
BA(int)和~A()
CA()^O-A(delete)
DA()和int-A()
正確答案:A
6已知類A是類B的友元,類B是類C的友元,則()。
A類A一定是類C的友元
B類C一定是類A的友元
C類C的成員函數(shù)可以訪問類B的任何成員
D類A的成員函數(shù)可以訪問類B的任何成員
正確答案:D
7對于下面循環(huán)語句:
inti=0;
do
i++;
while(i*i<10);,其循環(huán)體被執(zhí)行的次數(shù)為()。
A4
B3
C5
D2
正確答案:A
8MFC類庫中的類按層次關(guān)系可知,Cstatic的直接父類為()。
ACWnd
BCObject
CCcmdTarget
DCFrameWnd
正確答案:A
9假定一個(gè)類的構(gòu)造函數(shù)為A(intaa,intbb){a=aa--;b=a*bb;},則執(zhí)行Ax(4,5);語句
后,x.a和x.b的值分別為()。
A3和15B5和4C4和20D20和5
正確答案:C
10C++程序的基本功能模塊是()。
A表達(dá)式
B標(biāo)識符
C語句
D函數(shù)
正確答案:D
11在VC6開發(fā)環(huán)境中,雙擊工作區(qū)文件,就能打開工作區(qū)及其包含的工程,其
后綴是()。
A.dsw
B.dsp
C.rc
D.clw
正確答案:A
12文件包含命令中被包含的文件的擴(kuò)展名為()。
A必須是.h
B不能是.h
C可以是.h或.cpp
D必須是.cpp
正確答案:C
13程序運(yùn)行中需要從鍵盤上輸入多于一個(gè)數(shù)據(jù)時(shí),各數(shù)據(jù)之間應(yīng)使用()符號
作為分隔符。
A空格或逗號
B逗號或回車
C逗號或分號
D空格或回車
正確答案:D
14通??截惓跏蓟瘶?gòu)造函數(shù)的參數(shù)是()。
A某個(gè)對象名
B某個(gè)對象成員名
C某個(gè)對象的引用名
D某個(gè)對象的指針名
正確答案:C
15MFC主要由()組成。
A基礎(chǔ)類庫、全局函數(shù)
B基礎(chǔ)類庫、全局變量、宏
C基礎(chǔ)類庫、全局函數(shù)、宏
D基礎(chǔ)類庫、全局函數(shù)、全局變量和宏
正確答案:D
16一個(gè)類的友元函數(shù)或友元類能夠通過成員操作符訪問該類的()。
A私有成員
B公有成員
C保護(hù)成員
D所有成員
正確答案:D
17下列二維數(shù)組定義,正確的是()。
Ainta[5][];
Binta[][5]
Cinta[][3]={{l,3,5},{2})
Dinta[](10)
正確答案:C
18編寫C++程序一般需經(jīng)過的幾個(gè)步驟依次是()。
A編輯、調(diào)試、編譯、連接
B編輯、編譯、連接、運(yùn)行
C編譯、調(diào)試、編輯、連接
D編譯、編輯、連接、運(yùn)行
正確答案:B
19下列說法正確的是()。
A類定義中只能說明函數(shù)成員的函數(shù)頭,不能定義函數(shù)體
B類中的函數(shù)成員可以在類體中定義,也可以在類體之外定義
C類中的函數(shù)成員在類體之外定義時(shí)必須要與類聲明在同一文件中
D在類體之外定義的函數(shù)成員不能操作該類的私有數(shù)據(jù)成員
正確答案:B
20以下說法正確的是()。
A用戶調(diào)用標(biāo)準(zhǔn)庫函數(shù)前,必須重新定義
B用戶可以重新定義標(biāo)準(zhǔn)庫函數(shù),若如此,該函數(shù)將失去原有含義
C系統(tǒng)不允許用戶重新定義標(biāo)準(zhǔn)庫函數(shù)
D用戶調(diào)用標(biāo)準(zhǔn)庫函數(shù)前,不必使用預(yù)編譯命令將該函數(shù)所在文件包括到用戶
源文件中
正確答案:B
21對基類和派生類的關(guān)系描述中,錯(cuò)誤的是()。
A派生類是基類的具體化
B基類繼承了派生類的屬性
C派生類是基類定義的延續(xù)
D派生類是基類的特殊化
正確答案:B
22在WindowsAPI開發(fā)的應(yīng)用程序框架中,下列哪種方法不能加載菜單()。
A在窗口類的定義時(shí),把結(jié)構(gòu)體WNDCLASS的IpszMenuName設(shè)置為合適的
菜單名
B在創(chuàng)建窗口時(shí),首先調(diào)用LoadMenu獲得菜單句柄,然后調(diào)用函數(shù)
CreateWindow加載該菜單
C在應(yīng)用程序中調(diào)用調(diào)用LoadMenu獲得菜單句柄后,調(diào)用函數(shù)SetMenu動(dòng)態(tài)
加載菜單
D在窗口處理函數(shù)中,針對菜單消息設(shè)置合適的消息響應(yīng)
正確答案:D
23下面關(guān)于MFC中類的說法,正確的是()。
ACobject類是MFC所有類的基類
BCView是CWnd類的子類
CCdialog是CWnd類的子類
DCarchive類可以支持串行化操作
正確答案:A
24當(dāng)消息產(chǎn)生時(shí),系統(tǒng)調(diào)用CwinApp的()函數(shù)對消息進(jìn)行解析,并發(fā)送到
相應(yīng)的窗口進(jìn)行處理。
ARun
BCreate
CTranslateMessage
DDispatchMessage
正確答案:A
25設(shè)有代碼“structBOOK{chartitile[40];floatprice;};則下列不正確的變量定
義語句是()。
ABOOKbook;
BBOOKbook={"C++編程”,27.5};
CBOOK*x=newBOOK;
DBOOKx=newBOOK;
正確答案:D
26下面說法正確的是()。
A構(gòu)造函數(shù)可以重載,析構(gòu)函數(shù)不能重載
B構(gòu)造函數(shù)不能重載,析構(gòu)函數(shù)可以重載
C構(gòu)造函數(shù)可以重載,析構(gòu)函數(shù)也可以重載
D構(gòu)造函數(shù)和析構(gòu)函數(shù)都不能重載
正確答案:A
二.填空題(共10題,22.0分)
1編譯時(shí)的多態(tài)通過__________實(shí)現(xiàn)。
正確答案:
函數(shù)重載;
2若多個(gè)基類及其派生類中都定義了同名函數(shù)成員,要訪問相應(yīng)函數(shù)時(shí),就緒
要在函數(shù)名前加上_________和類區(qū)分符。
正確答案:
類名;
3this指針始終指向調(diào)用成員函數(shù)的。
正確答案:
對象;
4MFC中的集合類包括數(shù)組、、映射。
正確答案:
列表;
5假如一個(gè)類的名稱為MyClass,使用這個(gè)類的一個(gè)對象初始化該類的另一個(gè)對
象時(shí),可以調(diào)用構(gòu)造函數(shù)來完成此功能。
正確答案:
復(fù)制
拷貝;
6C++支持兩種多態(tài)性:編譯時(shí)的多態(tài)性和時(shí)的多態(tài)性。
正確答案:
運(yùn)行;
7兩個(gè)函數(shù)的函數(shù)名相同,但參數(shù)的個(gè)數(shù)和類型不同,則稱為o
正確答案:
函數(shù)重載
重載函數(shù);
8classtest{
正確答案:
25;
9每個(gè)對象都是所屬類的一個(gè)
正確答案:
實(shí)例;
10在已經(jīng)定義了整型指針p后,為了得到一個(gè)包括10個(gè)整數(shù)的數(shù)組,并讓p指
向該數(shù)組,應(yīng)使用語句。
正確答案:
int*p=newint[10];
三.程序分析題(共5題[L0分)
1分析如下程序?qū)懗鲞\(yùn)行結(jié)果。
#include<iostream.h>
classAdd{
private:intx,y;
public:
Add(inta,intb){
x=a;y=b;
cout<V調(diào)用構(gòu)造函數(shù)1?!秂ndl;
Add(Add&p){
x=p.a;y=p.b;
coutvv,調(diào)用構(gòu)造函數(shù)2。V<endl;
)
?Add(){
countvv,調(diào)用析構(gòu)函數(shù)V<endl;
intadd(){returnx+y;}
);
voidmain(){
Addpl(2,3);
Addp2(pl);
cout?p2.add()?endl;
)
填寫答案
正確答案:
運(yùn)行結(jié)果:
調(diào)用構(gòu)造函數(shù)lo
調(diào)用構(gòu)造函數(shù)2。
5調(diào)用析構(gòu)函數(shù)。
調(diào)用析構(gòu)函數(shù)。
2分析如下程序?qū)懗鲞\(yùn)行結(jié)果。
#include<iostream.h>
classCount{
private:
staticintcount;
public:
Count(){count++;}
?Count。{count—;}
staticinHM(){returncount;}
);
intCount::count=100;
voidmain()
(
Countcl,c2,c3,c4;
cout?Count::HM();
填寫答案
正確答案:
運(yùn)行結(jié)果:
104
3分析如下程序?qū)懗鲞\(yùn)行結(jié)果。
#include<iostream.h>
classTest{
intx,y;
public:
Test(inti,intj=0){x=i;y=j;}
intget(inti,intj){returni+j;}
);
voidmain(){
Testtl(2),t2(4,6);
int(Test::*p)(int,int=10);
p=Test::get;
cout?(tl.*p)(5)?endl;
Test*pl=&t2;
cout?(p1->*p)(7,20)?endl;
)
填寫答案
正確答案:
運(yùn)行結(jié)果:
1527
4分析如下程序?qū)懗鲞\(yùn)行結(jié)果。
#include<iostream.h>
classB{
private:a,b;
public:
B(){)
B(intx,inty){a=x;b=y;}
voidprintb(void){cout?,,a=,,?a?,,b=',?b?endl;}
clasA{
private:Bc;
public:
A(){}
A(intx,inty):c(x,y){}
voidprinta(void){c.printb();}
);
voidmain()
(
Am(7,9);
m.printa();
)
填寫答案
正確答案:
運(yùn)行結(jié)果:
a=7,b=9
5運(yùn)行結(jié)果:
調(diào)用構(gòu)造函數(shù)1。
調(diào)用構(gòu)造函數(shù)2。
5調(diào)用析構(gòu)函數(shù)。
調(diào)用析構(gòu)函數(shù)。
填寫答案
正確答案:
運(yùn)行結(jié)果:
classB:1classA:hello
四.程序填空(共3題,6.6分)
1打印100以內(nèi)的所有素?cái)?shù)(所謂素?cái)?shù)是指只能被1和本身整除的正整數(shù)。)
#include<iostream.h>
#include<math.h>
voidmain()
(
inti,n;
for(n=2;n<100;n++){
inttemp=int(sqrt(n));#求n的平方根
for(i=2;(1);i++)
if((2))break;
if(i>temp)
cout?n?,
)
coutvv'n';
)
填寫答案
正確答案:
答案:
(1)i<=temp
⑵n%i==0
2classA{
inta,b;
public:
A(intaa=0,intbb=0)(1)//分別用aa和bb對應(yīng)初始化a和b
()
);
main(){
(2)〃定義類A的對象X并用5初始化,同時(shí)定義y,并用x初始化
A*p=&x;
填寫答案
正確答案:
答案:
(1):a(aa),b(bb)
(2)Ax(5),y(x)
3Fibonacci數(shù)列滿足如下列遞歸關(guān)系:
f(1)=0f(2)=lf(n)=f(n-l)+f(n-l)(n>2)
編寫程序計(jì)算Fibonacci數(shù)列第n項(xiàng)值。
程序如下:
#include<iostream.h>
(1);
voidmain(void){
intnumber;
cout?"Pleaseenteraintegernumber:n?endl;
cin?number;
longresult=(2);
cout?"Result=',?result?endl;
)
longFib(intn){
if((3))return0;
elseif(n==2)return1;
else
return(4);;
)
填寫答案
正確答案:
答案:
(1)longFib(int)
(2)Fib(number)
(3)n==l(4)Fib(n-l)+Fib(n-2)
五.編程題(共1題,3.2分)
1已定義一個(gè)Shape抽象類,在此基礎(chǔ)上派生出矩形Rectangle和圓形Circle
類,二者都有GetPerim。函數(shù)計(jì)算對象的周長,并編寫測試main。函數(shù)。
classShape
{public:
Shape(){)
~Shape(){}
virtualfloatGetPerim()=O;
)
填寫答案
正確答案:
程序如下:
classRectangle:publicShape
(
public:
Rectangle(floati,floatj):L(i),W(j){}~Rectangle(){}
floatGetPerim()
(
return2*(L+W);
)
private:
floatL,W;
);
classCircle:publicShape
(
public:
Circle(floatr):R(r){}
floatGetPerim()
return3.14*2*R;
private:
floatR;
);
voidmain()
(
Shape*sp;
sp=newCircle(lO);
cout?sp->GetPerim()?endl;
sp=newRectangle(6,4);
cout?sp->GetPerim()?endl;
)
計(jì)算機(jī)語言(VC)復(fù)習(xí)資料
一.單選題(共25題,55.0分)
1假設(shè)A為一個(gè)類,則執(zhí)行“Aa,b(3),*p;”語句時(shí)共調(diào)用該類構(gòu)造函數(shù)的次數(shù)
為()。
A2B3C4D5
正確答案:A
2下面循環(huán)語句中內(nèi)層循環(huán)的循環(huán)體S的執(zhí)行總次數(shù)為()。
for(inti=0;i<n;i++)
for(intj=i;j<n;j++)
SA
n2B
(n+l)/2C
n(n+1)/2D
n(n-l)/2
正確答案:C
3在公有派生類的成員函數(shù)不能直接訪問基類中繼承來的某個(gè)成員,則該成員
一定是基類中的()。
A私有成員
B公有成員
C保護(hù)成員
D保護(hù)成員或私有成員
正確答案:A
4C++程序的基本功能模塊是()。
A表達(dá)式
B標(biāo)識符
C語句
D函數(shù)
正確答案:D
5對基類和派生類的關(guān)系描述中,錯(cuò)誤的是()。
A派生類是基類的具體化
B基類繼承了派生類的屬性
C派生類是基類定義的延續(xù)
D派生類是基類的特殊化
正確答案:B
6根據(jù)對話框的行為性質(zhì),對話框可以分為兩類:()。
A對話框資源和對話框類
B模式對話框和非模式對話框
C對話框資源和對話框模板
D消息對話框和模式對話框
正確答案:B
7編寫C++程序一般需經(jīng)過的幾個(gè)步驟依次是()。
A編輯、調(diào)試、編譯、連接
B編輯、編譯、連接、運(yùn)行
C編譯、調(diào)試、編輯、連接
D編譯、編輯、連接、運(yùn)行
正確答案:B
8以下說法正確的是()。
A用戶調(diào)用標(biāo)準(zhǔn)庫函數(shù)前,必須重新定義
B用戶可以重新定義標(biāo)準(zhǔn)庫函數(shù),若如此,該函數(shù)將失去原有含義
C系統(tǒng)不允許用戶重新定義標(biāo)準(zhǔn)庫函數(shù)
D用戶調(diào)用標(biāo)準(zhǔn)庫函數(shù)前,不必使用預(yù)編譯命令將該函數(shù)所在文件包括到用戶
源文件中
正確答案:B
9有關(guān)構(gòu)造函數(shù)的說法不正確的是()。
A構(gòu)造函數(shù)名和類名一樣
B構(gòu)造函數(shù)無任何函數(shù)類型
C構(gòu)造函數(shù)有且只有一個(gè)
D構(gòu)造函數(shù)在說明類對象時(shí)自動(dòng)執(zhí)行
正確答案:C
10在VC6開發(fā)環(huán)境中,雙擊工作區(qū)文件,就能打開工作區(qū)及其包含的工程,其
后綴是()。
A.dsw
B.dsp
C.rc
D.clw
正確答案:A
11當(dāng)消息產(chǎn)生時(shí),系統(tǒng)調(diào)用CwinApp的()函數(shù)對消息進(jìn)行解析,并發(fā)送到
相應(yīng)的窗口進(jìn)行處理。
ARun
BCreate
CTranslateMessage
DDispatchMessage
正確答案:A
12友元的作用是()。
A提高程序的運(yùn)行效率
B加強(qiáng)類的封裝性
C實(shí)現(xiàn)數(shù)據(jù)的隱藏性
D增強(qiáng)成員函數(shù)的種類
正確答案:A
13已知類A是類B的友元,類B是類C的友元,則()。
A類A一定是類C的友元
B類C一定是類A的友元
C類C的成員函數(shù)可以訪問類B的任何成員
D類A的成員函數(shù)可以訪問類B的任何成員
正確答案:D
14類A的缺省構(gòu)造函數(shù)和析構(gòu)函數(shù)是()。
AA()和~人()
BA(int)^0~A()
CA()^D~A(delete)
DA()和int~A()
正確答案:A
15對于下面循環(huán)語句:
inti=0;
do
i++;
while(i*i<10);,其循環(huán)體被執(zhí)行的次數(shù)為()。
A
4B
3C
5D
2正確答案:A
16下列說法正確的是()。
A類定義中只能說明函數(shù)成員的函數(shù)頭,不能定義函數(shù)體
B類中的函數(shù)成員可以在類體中定義,也可以在類體之外定義
C類中的函數(shù)成員在類體之外定義時(shí)必須要與類聲明在同一文件中
D在類體之外定義的函數(shù)成員不能操作該類的私有數(shù)據(jù)成員
正確答案:B
17關(guān)于純虛函數(shù)和抽象類的描述中,錯(cuò)誤的是()。
A純虛函數(shù)是一種特殊的虛函數(shù),它沒有具體實(shí)現(xiàn)
B抽象類是指具有純虛函數(shù)的類
C一個(gè)基類中說明有純虛函數(shù),該基類的派生類一定不是抽象類
D抽象類只能作為基類使用,其純虛函數(shù)的實(shí)現(xiàn)由派生類給出
正確答案:A
18下面說法正確的是()。
A構(gòu)造函數(shù)可以重載,析構(gòu)函數(shù)不能重載
B構(gòu)造函數(shù)不能重載,析構(gòu)函數(shù)可以重載
C構(gòu)造函數(shù)可以重載,析構(gòu)函數(shù)也可以重載
D構(gòu)造函數(shù)和析構(gòu)函數(shù)都不能重載
正確答案:A
19程序運(yùn)行中需要從鍵盤上輸入多于一個(gè)數(shù)據(jù)時(shí),各數(shù)據(jù)之間應(yīng)使用()符號
作為分隔符。
A空格或逗號
B逗號或回車
C逗號或分號
D空格或回車
正確答案:D
20下列關(guān)于Windows應(yīng)用程序?qū)κ髽?biāo)響應(yīng)的說法,正確的是()。
A只有活動(dòng)窗口才能接受鼠標(biāo)事件
B可以調(diào)用函數(shù)SetCapture。函數(shù)實(shí)現(xiàn)對鼠標(biāo)的捕獲,且捕獲鼠標(biāo)后系統(tǒng)的鍵
盤功能暫時(shí)失效。
C用戶只能調(diào)用系統(tǒng)定義的鼠標(biāo)的光標(biāo)形狀,不能自定義光標(biāo)
D可以通過相應(yīng)單一類型的鼠標(biāo)消息來響應(yīng)鼠標(biāo)的拖動(dòng)事件
正確答案:B
21假定一個(gè)類的構(gòu)造函數(shù)為A(intaa,intbb)[a=aa--;b=a*bb;},則執(zhí)行Ax(4,5);語
句后,x.a和x.b的值分別為()。
A3和15B5和4c4和20D20和5
正確答案:C
22所謂數(shù)據(jù)封裝就是將一組數(shù)據(jù)和與這組數(shù)據(jù)有關(guān)操作組裝在一起,形成一個(gè)
實(shí)體,這實(shí)體也就是()。
A類
B對象
C函數(shù)體
D數(shù)據(jù)塊
正確答案:A
23下面關(guān)于MFC中類的說法,正確的是()。
ACobject類是MFC所有類的基類
BCView是CWnd類的子類
CCdialog是CWnd類的子類
DCarchive類可以支持串行化操作
正確答案:A
24在類中說明的成員可以使用關(guān)鍵字的是()。
Apublic
Bextern
Ccpu
Dregister
正確答案:A
25一個(gè)類的友元函數(shù)或友元類能夠通過成員操作符訪問該類的()。
A私有成員
B公有成員
C保護(hù)成員
D所有成員
正確答案:D
二.填空題(共14題,30.8分)
1編譯時(shí)的多態(tài)通過_________實(shí)現(xiàn)。
正確答案:
函數(shù)重載;
2假設(shè)為類A定義了構(gòu)造函數(shù)“A(intaa,char*bb=NULL):a(aa),b(bb)v,則該類
中至少包含有個(gè)數(shù)據(jù)成員。
正確答案:
2;
3在已經(jīng)定義了整型指針p后,為了得到一個(gè)包括10個(gè)整數(shù)的數(shù)組,并讓p指
向該數(shù)組,應(yīng)使用語句o
正確答案:
int*p=newint[10];
4兩個(gè)函數(shù)的函數(shù)名相同,但參數(shù)的個(gè)數(shù)和類型不同,則稱為0
正確答案:
函數(shù)重載
重載函數(shù);
5假定x是一個(gè)邏輯變量,則X||false的值為。
正確答案:
X;
6一個(gè)抽象類的派生類可以實(shí)例化的必要條件是實(shí)現(xiàn)了所有的定
義。
正確答案:
純虛函數(shù);
7定義類動(dòng)態(tài)對象數(shù)組時(shí),元素只能靠自動(dòng)調(diào)用該類的來進(jìn)行初始
化。
正確答案:
無參構(gòu)造函數(shù);
8為解決多繼承中因公共基類而產(chǎn)生的二義性問題,C++提供了機(jī)
制。將公共基類聲明為它以后,它在派生類中只產(chǎn)生一個(gè)實(shí)例。
正確答案:
虛基類;
9C++支持兩種多態(tài)性:編譯時(shí)的多態(tài)性和時(shí)的多態(tài)性。
正確答案:
運(yùn)行;
10C++程序的源文件擴(kuò)展名為0
正確答案:
cpp;
11如果要把A類成員函數(shù)voidf()聲明為類B的友元函數(shù),則應(yīng)在類B的定義
中加入語句;
正確答案:
friendvoidA::f();
12類是用戶定義的類型,具有類類型的變量稱為。
正確答案:
對象;
13從一條函數(shù)原型語句“intfun1(void)”可知,該函數(shù)帶有個(gè)參數(shù)。
正確答案:
0;
14this指針始終指向調(diào)用成員函數(shù)的o
正確答案:
對象;
三.程序分析題(共3題,6.6分)
1分析如下程序?qū)懗鲞\(yùn)行結(jié)果。
#include<iostream.h>
classA{
pri
溫馨提示
- 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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度婚慶司儀婚禮現(xiàn)場化妝造型服務(wù)合同6篇
- 人教版初中歷史與社會七年級上冊 2.1.2 海洋對人類的影響說課稿及反思
- 人教版七年級歷史與社會上冊 2.2《自然黃靜》之氣象萬千、風(fēng)光迥異 說課稿
- 2025版快遞業(yè)務(wù)數(shù)據(jù)處理與信息安全保密合同2篇
- 湖北省黃岡市普通高中2024-2025學(xué)年高二上學(xué)期11月階段性聯(lián)考語文試卷(含答案)
- 2025年環(huán)保設(shè)施安裝與運(yùn)營服務(wù)合同3篇
- 湖北恩施市2024-2025學(xué)年九年級上學(xué)期語文期末考試題卷(含答案)
- 河南省南陽市(2024年-2025年小學(xué)六年級語文)統(tǒng)編版小升初模擬(上學(xué)期)試卷及答案
- 2025高考數(shù)學(xué)二輪復(fù)習(xí)-微培優(yōu)7 數(shù)列中的情境創(chuàng)新與數(shù)學(xué)文化【課件】
- Unit 7 第3課時(shí) Section B (1a-2b)2024-2025學(xué)年新教材七年級英語上冊同步說課稿(人教版2024)河北專版
- 工程項(xiàng)目移交交接單
- 角膜解剖結(jié)構(gòu)最全課件
- 部編人教版六年級下冊語文第3課古詩三首(優(yōu)質(zhì)公開課教案)
- 慢阻肺PPT精品課件
- 湘教文藝版小學(xué)五年級音樂上冊期末測試題
- 某項(xiàng)目及項(xiàng)目天棚吊頂安全性受力分析計(jì)算稿
- 艾滋病、梅毒和乙肝檢測服務(wù)流程
- 中聯(lián)16T吊車參數(shù)
- J-STD-020D[1].1中文版
- 鐵血鑄軍魂軍人風(fēng)采紀(jì)念冊戰(zhàn)友聚會部隊(duì)退伍退役轉(zhuǎn)業(yè)老兵歡送會電子相冊PPT實(shí)施課件
- 土壤侵蝕原理
評論
0/150
提交評論