![C++語言考試題試卷練習題模擬題選擇題含答案考卷3_第1頁](http://file4.renrendoc.com/view/37997501bbdd6adf5c9d62f1a1604df0/37997501bbdd6adf5c9d62f1a1604df01.gif)
![C++語言考試題試卷練習題模擬題選擇題含答案考卷3_第2頁](http://file4.renrendoc.com/view/37997501bbdd6adf5c9d62f1a1604df0/37997501bbdd6adf5c9d62f1a1604df02.gif)
![C++語言考試題試卷練習題模擬題選擇題含答案考卷3_第3頁](http://file4.renrendoc.com/view/37997501bbdd6adf5c9d62f1a1604df0/37997501bbdd6adf5c9d62f1a1604df03.gif)
![C++語言考試題試卷練習題模擬題選擇題含答案考卷3_第4頁](http://file4.renrendoc.com/view/37997501bbdd6adf5c9d62f1a1604df0/37997501bbdd6adf5c9d62f1a1604df04.gif)
![C++語言考試題試卷練習題模擬題選擇題含答案考卷3_第5頁](http://file4.renrendoc.com/view/37997501bbdd6adf5c9d62f1a1604df0/37997501bbdd6adf5c9d62f1a1604df05.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1.下列字符列中,可作為CH語言程序自定義標識符是()0
A.switchB.fileC.breakD.do
2.運算符+、0、=、%中,優(yōu)先級最低的運算符是()。
A.+B.<=C.=D.%
3.設(shè)變量m,n,a,b,c,d均為0,執(zhí)行(m=a=b)||(n=c=d)后,m,n的值是()。[Commented|w11:短路
A.0,0B.0,1C.1,0D.1,1
4.字符串"vm\x43\\\而\102qu”的長度是(
A.8B.9C.16D.17
5.設(shè)有代碼“inta=6;",則執(zhí)行了語句"a+=a-="后,變量a的值是()。Commented|w2|:
A.0B.-24C.-40D.-60
6.voidmain()
{intx=-l;
do
{x=x*x;}
而ile(!x);}
下列說法正確的是()o
A,是死循環(huán)B.循環(huán)執(zhí)行兩次
C.循環(huán)執(zhí)行一次D.有語法錯誤
7.下面有關(guān)for循環(huán)的正確描述是()o
A.for循環(huán)只能用于循環(huán)次數(shù)已經(jīng)確定的情況
B.for循環(huán)是先執(zhí)行循環(huán)體語句,后判斷表達式
C.在for循環(huán)中,不能用break語句跳出循環(huán)體
D.for循環(huán)的循環(huán)體語句中,可以包含多條語句,但必須用大括號括起來
8.下面程序段()o(Commented|w3|:從右到左x<=2為真I時
x=3;
do
{y=x-;
if(!y){cout?wx”;continue;}
cout?w#";}
while(l<=x<=2);(K=x)=1,0bool型
A.將輸出##B.將輸出
C.是死循環(huán)D.含有不合法的控制表達式
9.以下正確的說法是()o
A.用戶若需要調(diào)用標準函數(shù),調(diào)用前必須重新定義
B.用戶可以直接調(diào)用所有標準庫函數(shù)
C.用戶可以定義和標準庫函數(shù)重名的函數(shù),但是在使用時調(diào)用的是系統(tǒng)庫函數(shù)
D.用戶可以通過文件包含命令將系統(tǒng)庫函數(shù)包含到用戶源文件中,然后調(diào)用系統(tǒng)庫函數(shù)
10.在參數(shù)傳遞過程中,對形參和實參的要求是O。[Commented|w4]:
A.函數(shù)定義時,形參一直占用存儲空間
B.實參可以是常量、變量或表達式
C.形參可以是常量、變量或表達式
D.形參和實參類型和個數(shù)都可以不同
11.對數(shù)組名作函數(shù)的參數(shù),下面描述正確的是()。[Commented|丫5幺
A.數(shù)組名作函數(shù)的參數(shù),調(diào)用時將實參數(shù)組復制給形參數(shù)組
B.數(shù)組名作函數(shù)的參數(shù),主調(diào)函數(shù)和被調(diào)函數(shù)共用一段存儲單元
C,數(shù)組名作參數(shù)時,形參定義的數(shù)組長度不能省略
D.數(shù)組名作參數(shù),不能改變主調(diào)函數(shù)中的數(shù)據(jù)
12.若有語句inta[10]={0,l,2,3,4,5,6,7,8,9},*p=a;貝!|()不是對a數(shù)組元素的正
確引用(其中0Wi<10)。
A.p[i]B.*(?(a+i))C.a[p-a]D.*(&a[i])
13.以下程序的輸出結(jié)果是()。
ftinclude<iostream.h>
voidmain()
{chars[]=*12134211*,*p;
intvl=0,v2=0,v3=0,v4=0;vlv2v3v4
for(p=s;*p;p++)2434
switch(*p)
(
case'I*:vl++;
case'3':v3++;
case'2*:v2++;
default:v4++;
)
cout?vl?*,*?v2?*,*?v3?*,*?v4?endl;
A.4,2,1,1B.4,7,5,8C.7,3,2,1D.8,8,8,8
14.下列聲明結(jié)構(gòu)體變量錯誤的是()。
A.structstudentB.structstudent
{intno;{intno;
charname[16];charname[16];
}stl,st2;};
structstudentstl,st2
C.structstudentD.structstudent
{intno;{intno;
charname[16];charname[16];
);};
structstl,st2;studentstl,st2;
15.對類的構(gòu)造函數(shù)和析構(gòu)函數(shù)描述正確的是()<.
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ù)也不能重載
16.下面對于友元函數(shù)描述正確的是()o
A.友元函數(shù)的實現(xiàn)必須在類的內(nèi)部定義B.友元函數(shù)是類的成員
C.友元函數(shù)破壞了類的封裝性和隱藏性D.友元函數(shù)不能訪問類的私有成員
17.派生類的對象對它的基類成員中()是可以訪問的。
A.公有繼承的公有成員B.公有繼承的私有成員
C.公有繼承的保護成員D.私有繼承的公有成員
18.C++類體系中,不能被派生類繼承的有()<>
A.構(gòu)造函數(shù)B.虛函數(shù)C.靜態(tài)成員函數(shù)D.賦值操作函數(shù)
19.以下()成員函數(shù)表示虛函數(shù)。
A.virtualintvf(int);B.voidvf(int)=0;
C.virtualvoidvf()=0;D.virtualvoidvf(int){};(commented|L6]:純虛函數(shù),不用定義
20.下面對靜態(tài)數(shù)據(jù)成員的描述中,正確的是(),,
A.靜態(tài)數(shù)據(jù)成員可以在類體內(nèi)進行初始化
B.靜態(tài)數(shù)據(jù)成員不可以在類體內(nèi)進行初始化
C.靜態(tài)數(shù)據(jù)成員不能受private控制符的作用
D.靜態(tài)數(shù)據(jù)成員可以直接用類名調(diào)用??
21.繼承具有(),即當基類本身也是某一個類派生類時,底層的派生類也會自動繼承間
接基類的成員。
A.規(guī)律性B.傳遞性C.重復性D.多樣性
22.若有以下定義,則釋放指針所指內(nèi)存空間的操作是(),>
floatr=newsfloat[10];
A.deleter;B.delete*r;
C.delete[]r;D.deleter[];
23.若有以下定義,則對字符串的操作錯誤的是()。Commented|w7|:strcat(s1,s2):
chars[10]="Program〃,adds2tosi'stail.
A.strcpy(s,t);B.cout?strlen(s);[Commented|L8|:Copy」los
C.strcat(''this”,t);D.cin?t;
24.在if語句中的表達式是()。
A.只能是表達式B.只能是關(guān)系表達式和邏輯表達式
C.只能是邏輯表達式D.可以是任意表達式
25.在用關(guān)鍵字class定義的類中,以下敘述正確的是(),>
A.在類中,不作特別說明的數(shù)據(jù)成員均為私有類型
B.在類中,不作特別說明的數(shù)據(jù)成員均為公有類型
C.類成員的定義必須是成員變量定義在前,成員函數(shù)定義在后
D.類的成員定義必須放在類定義體內(nèi)部
一、選擇題
(1)下列關(guān)于棧的敘述正確的是
A)棧是非線性結(jié)構(gòu)B)棧是一種樹狀結(jié)構(gòu)
C)棧具有先進先出的特征D)棧具有后進先出的特征
□□(2)結(jié)構(gòu)化程序設(shè)計所規(guī)定的三種基本控制結(jié)構(gòu)是
A)輸入、處理、輸出B)樹形、網(wǎng)形、環(huán)形
C)順序、選擇、循環(huán)D)主程序、子程序、函數(shù)
(3)結(jié)構(gòu)化程序設(shè)計的一種基本方法是(Commented|w9|;
A)篩選法B)遞歸法C)歸納法D)逐步求精法
(4)如果對一個關(guān)系實施了一種關(guān)系運算后得到了一個新的關(guān)系,而且新的關(guān)系中屬
性個數(shù)少于原來關(guān)系中屬性個數(shù),這說明所實施的運算關(guān)系是:
A)選擇B)投影C)連接D)并
一:選擇題:
□(1)D(2)C(3)D(4)B
C++語言程序設(shè)計
口一、選擇題
(1)C++語言是從早期的C語言逐漸發(fā)展演變而來的.與C語言相比,它在求解問題
方法上進行的最大改進是()
A)面向過程B)面向?qū)ο驝)安全性D)復用性
(2)C++語言的跳轉(zhuǎn)語句中,對于break和continue說法正確的是O
A)break語句只應(yīng)用與循環(huán)體中
B)continue語句只應(yīng)用與循環(huán)體中
Qbreak是無條件跳轉(zhuǎn)語句,continue不是
D)break和continue的跳轉(zhuǎn)范圍不夠明確,容易產(chǎn)生問題
(3)for(intx=0,y=o;!x&&yv=5;y++)語句執(zhí)行循環(huán)的次數(shù)是()
A)0B)5C)6D)無次數(shù)__________________________
(4)考慮函數(shù)原型voidtest(intajntb=7,char="*"),下面的函數(shù)調(diào)用中,屬于不合法調(diào)(commented|L10]:默認參數(shù)格會
用的是。
□A)test(5);B)test(5,8);C)test(6,H#n)D)test(O,O."*");
□□(5)下面有關(guān)重載函數(shù)的說法中正確的是()
A)重教函數(shù)必須具有不同的返回值類型;B)重教函數(shù)形參個數(shù)必須不同;
C)重載函數(shù)必須有不同的形參列表D)重載函數(shù)名可以不同;
(6)下列關(guān)于構(gòu)造函數(shù)的描述中,錯誤的是()
A)構(gòu)造函數(shù)可以設(shè)置默認參數(shù);B)構(gòu)造函數(shù)在定義類對象時自動執(zhí)行
C)構(gòu)造函數(shù)可以是內(nèi)聯(lián)函數(shù);D)構(gòu)造函數(shù)不可以重載
□:(7)下面描述中,表達錯誤的是()
A)公有繼承時基類中的public成員在派生類中仍是public的
B)公有繼承是基類中的private成員在派生類中仍是private的
C)公有繼承時基類中的protected成員在派生類中仍是protected的
D)私有繼承時基類中的public成員在派生類中是private的
(8)應(yīng)在下列程序劃線處填入的正確語句是。
□^include
□classBase
□D{public:
voidfun(){cout?nBase::funH<};
classDerived:publicBase
□{voidfun()
{file://顯示調(diào)用基類的函數(shù)fun()
cout?**Derived::fun**<D□}
□:};
A)fun();B)Base.funO;C)Base::fun();D)Base->fun();
□□(9)有如下程序:
□C#include
□classBASE{
charc;
□public:
BASE(charn):c(n){}
virtual-BASE(){cout<!Jc);
classDERIVED:publicBASE{
□□charc;
□public:
DERIVED(charn):BASE(n+l),c(n){}
-DERIVED(){cout<c};
□intmain()
□□{DERIVED"”);
return0;
執(zhí)行上面的程序?qū)⑤敵鰆()〔Commented[2]:]
A)XYB)YXC)XD)Y
□□
(10)在進行完任何C++流的操作后,都可以用C++流的有關(guān)成員函數(shù)檢測流的狀態(tài);
其中只能用于檢測輸入流狀態(tài)的操作函數(shù)名稱是。
□LA)failB)eofC)badD)good
-:選擇題
□1-5:BBCCC
□6-10:DBCAB
1、下列有關(guān)類的說法不正確的是()。
A.對象是類的一個實例
B.任何一個對象只能屬于一個具體的類
C.一個類只能有一個對象
D.類與對象的關(guān)系和數(shù)據(jù)類型與變量的關(guān)系相似
答案:C
分柝對象是類的一個實例,類與對象的關(guān)系和數(shù)據(jù)與變量的關(guān)系相似,所以一個類可
以有多個對象。
2、下面()項是對構(gòu)造函數(shù)和析構(gòu)函數(shù)的正確定義。
A.voidX::X(),voidX::~X()
B.X::X(參數(shù)),X::-X()
C.X::X(參數(shù)),X::~X(參數(shù))
D.voidX::X(參數(shù)),voidX::~X(參數(shù))
答案:B
分析構(gòu)造函數(shù)無返回類型、可帶參數(shù)、可重載;析構(gòu)函數(shù)無返回類型、不可帶參數(shù)、不可
重載。
3、()的功能是對象進行初始化。
A.析構(gòu)函數(shù)B.數(shù)據(jù)成員C構(gòu)造函數(shù)D.靜態(tài)成員函數(shù)
答案:C
分析;當一個對象定義時,C++編譯系統(tǒng)自動調(diào)用構(gòu)造函數(shù)建立該對象并進行初始化;當一
個對象的生命周期結(jié)束時,C++編譯系統(tǒng)自動調(diào)用析構(gòu)函數(shù)注銷該對象并進行善后工作;
4、下列表達方式正確的是()。Comnienled|?12|:
A.classP{B.classP{
public:public:
intx=15;intx:
voidshowO{cout?x;}voidshowO{cout?x;}
);)
C.classP{D.classP{
intf;public:
);inta;
f=25;voidSeta(intx){a=x;}:
答案:D
分析:在類體內(nèi)不可對數(shù)據(jù)成員進行初始化;類定義結(jié)束時需用分號;只有類中的成員函
數(shù)才能存取類中的私有數(shù)據(jù)。
5、拷貝構(gòu)造函數(shù)具有的下列特點中,()是錯誤的。
A.如果一個類中沒有定義拷貝構(gòu)造函數(shù)時,系統(tǒng)將自動生成一個默認的
B.拷貝構(gòu)造函數(shù)只有一個參數(shù),并且是該類對象的引用
C.拷貝構(gòu)造函數(shù)是一種成員函數(shù)
D.拷貝構(gòu)造函數(shù)的名字不能用類名
答案:D
分析;如果一個類中沒有定義拷貝構(gòu)造函數(shù)時,系統(tǒng)將自動生成一個默認的;拷貝構(gòu)造
函數(shù)只有一個參數(shù),并且是該類對象的引用;拷貝構(gòu)造函數(shù)的名字與類同名,并且不被
指定返回類型;拷貝構(gòu)造函數(shù)是一種成員函數(shù)。
6、關(guān)于靜態(tài)成員的描述中,()是錯誤的。
A.靜態(tài)成員可分為靜態(tài)數(shù)據(jù)成員和靜態(tài)成員函數(shù)
B.靜態(tài)數(shù)據(jù)成員定義后必須在類體內(nèi)進行初始化
C.靜態(tài)數(shù)據(jù)成員初始化不使用其構(gòu)造函數(shù)
D.靜態(tài)數(shù)據(jù)成員函數(shù)中不能直接引用非靜態(tài)成員
答案:B
分析:靜態(tài)成員可分為靜態(tài)數(shù)據(jù)成員和靜態(tài)成員函數(shù);靜態(tài)數(shù)據(jù)成員被定義后,必須對它
進行初始化,初始化在類體外進行,一般放在該類的實現(xiàn)部分最合適,也可以放在其
他位置,例如,放在主函數(shù)前面等靜態(tài)數(shù)據(jù)成員初始化與該類的構(gòu)造函數(shù)和析構(gòu)函數(shù)
無關(guān);在靜態(tài)成員函數(shù)的實現(xiàn)中,可以直接引用靜態(tài)成員,但不能直接引用非靜態(tài)成員。
7:關(guān)于友元的描述中,()是錯誤的。
A.友元函數(shù)是成員函數(shù),它被說明在類體內(nèi)
B.友元函數(shù)可直接訪問類中的私有成員
C.友元函數(shù)破壞封裝性,使用時盡量少用
D.友元類中的所有成員函數(shù)都是友元函數(shù)
答案:A
8、;對類的構(gòu)造函數(shù)和析構(gòu)函數(shù)描述正確的是
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
9、類的析構(gòu)函數(shù)的作用是()。
A.一般成員函數(shù)B.類的初始化C.對象初始化D.刪除對象
答案:D
10、假設(shè)OneClass為一個類,則該類的拷貝初始化構(gòu)造函數(shù)的聲明語句為(
A.OneClass(OneClassp);B.OneClass&(OneClassp);
C.OneClass(OneClass&p);D.OneClass(OneClass*p);
答案:C
11、為了使類中的某個成員不能被類的對象通過成員操作符訪問,則不能把該成員的訪問
權(quán)限定義為()。
A.publicB.protectedC.privateD.static
答案:A
12、下面對靜態(tài)數(shù)據(jù)成員的描述中,正確的是()o
A.靜態(tài)數(shù)據(jù)成員可以在類體內(nèi)進行初始化
B.靜態(tài)數(shù)據(jù)成員不可以在類體內(nèi)進行初始化
C.靜態(tài)數(shù)據(jù)成員不能受private控制符的作用
D.靜態(tài)數(shù)據(jù)成員可以直接用類名調(diào)用
答案:B
13、下面對靜態(tài)數(shù)據(jù)成員的描述中,正確的是()o
A.靜態(tài)數(shù)據(jù)成員是類的所有對象共享的數(shù)據(jù)
B.類的每一個對象都有自己的靜態(tài)數(shù)據(jù)成員
C.類的不同對象有不同的靜態(tài)數(shù)據(jù)成員值
D.靜態(tài)數(shù)據(jù)成員不能通過類的對象調(diào)用
答案:A
C++試題1
(1)已知下列語句中的x和丫都是hit型變量,其中不正確的語句是
A)y+=4-+x;B)++x+=y;C)y=x++;D)x++=y;
(2)若x是一個bool型變量,y是一個值為100的int型變量,則表達式!x&&y>0的值
I]。
A)為trueB)為falseC)與x的值相同D)與x的值相反
(3)執(zhí)行語句序列
intn;
cin?n;
switch(n){
case1:
case2:cout?*X*;
case3:
case4:coutw'Y';break;
defaultzcout^Z,;}
時,不可能出現(xiàn)的情況是[|。
A)顯示:XB)顯示:YC)顯示:ZD)顯示:XY
(4)執(zhí)行語句序列
intx;
cin?x;
if(x>250)coutw'X';
if(x<250)cout?'Y*;
elsecout?*X*;
時,不可能出現(xiàn)的情況是[|o
A)顯示:XB)顯示:YC)顯示:XYD)顯示:XX
(5)要定義一個具有5個元素的一維數(shù)組,并使其各元素的初值依次是30,50,?88,0和
0,則下列定義語句中不正確的是[|o
A)infvect|]={30,50,-88};B)intvect|]={30,50,-88,0,0);
C)intvect|51={30,50,-88};D)intvect[5]={30,50,-88,0,0};
(6)已知某應(yīng)用系統(tǒng)中已經(jīng)定義了函數(shù)fun,其原形是intfun(char=,A,);則下列函數(shù)中,
可以在同一系統(tǒng)中加以重載的是[]。
A)intfunO;B)intfun(char);
C)intfun(charUnt);D)intfun(char,double=0.0);
(7)若指針p定義為constchar*p="Luchy!”;貝|[1?
A)p所指向的數(shù)據(jù)不可改變,p在定義時可以不初始化。
B)p所指向的數(shù)據(jù)不可改變,p在定義時必須初始化。
C)p本身不可改變,p在定義時可以不初始化。
D)p本身不可改變,p在定義時必須初始化。
(8)己知數(shù)組A和指針p定義為:intA[20|[10],*p;,要使p指向A的首元素,正確的賦值
表達式是I]。
A)p=&A或p=A|0||01B)p=A或p=&A[0]|0]
C)p=&A|01或p=A|0||0|D)p=A[0|或p=&A[0)|0)
(9)己知函數(shù)func的原形是
doublefunc(doouble*pd,int&ri);
變量x和y的定義是
doublex;inty;
把x和y分別作為第一參數(shù)和第二參數(shù)來調(diào)用函數(shù)func,正確的調(diào)用語句是|]。
A)func(x,&y);B)func(&x,y);C)func(&x,&y);D)func(x,y);
(10)要使字符串變量str具有初值“Lucky”,正確的定義語句是|:Commented[wl3]:debug.A)沒有休止符
A)charstr[]={'L','u','c','k','y'};B)charstr[5]={'L','u','c','k','y'};
C)charstr||=nLuckyH;D)charstr|51=MLuckyH;
(11)已知某函數(shù)的一個形式參數(shù)被說明為MAT網(wǎng)在下列說明中,與此等效的形參
說明是[]o
A)intMATIH10]B)intMAT|3]||
C)intMAT|10|[3]D)intMAT[川
(12)若指針p定義為char*="Luchy!”;則[]。
A)p所指向的數(shù)據(jù)不可改變,p在定義時可以不初始化。
B)p所指向的數(shù)據(jù)不可改變,p在定義時必須初始化。
C)p本身不可改變,p在定義時可以不初始化。
D)p本身不可改變,p在定義時必須初始化。
(13)在下列表達式中,與下標引用不等效的是|]。
A)*(A+i+j)B)*(A|i]+j)C)*(*(A+i)+j)D)(*(A+i))|j|
(14)要使語句p=newdouble[20];能夠正常執(zhí)行,變量p應(yīng)定義為[]。
A)doublep|20|;B)doublep;
C)double(*p)|20J;D)double*p;
(15)執(zhí)行下列語句序列[Commented|w14]:
structAA{intival;chareval;};
structBB{intival;AAra;};
structCC{intival;AAra;BBrb;};
CCrc={66,{rc.ival+l,rc.ra.ival+l},{69,{70,71}}};
cout?rc.ival?,/?rc.ra.ival?,/?rc.rb.ra.ival;
后,顯示在屏幕上的是[|o
A)66,67,68B)67,68,69C)66,67,70D)67,69,70
(16)類的默認的無參構(gòu)造函數(shù)|)o
A)在任何情況下都存在
B)僅當未定義無參構(gòu)造函數(shù)時存在
C)僅當未定義有參構(gòu)造函數(shù)時存在
D)僅當未定義任何構(gòu)造函數(shù)時存在
(17)語句ofstreamf(nSALARY.DATn,ios::noreplace|ios::binary);的功能是建立流對象
f,并試圖打開文件SALARY.DAT并與之連接,而且[
A
若文件存在,將文件指針定位于文件尾;若文件不存在,建立一個新文件。
BC)若文件存在,將其載為空文件;若文件不存在,打開失敗。
D若文件存在,將文件指針定位于文件首;若文件不存在,建立一個新文件。
若文件存在,打開失??;若文件不存在,建立一個新文件。
(18)執(zhí)行下列語句序列
structAA{intival;chareval;};
structintival;AAra;};
structCC{intival;AA*ra;BBrb;};
CCrc={66,newAA,{69,{70,71}}};
rc.ra->ival=rc.ival+l;
rc.ra->cval=rc.ra->ival+1;
cout?rc.ival?,,,?rc.ra->ival?,/?rc.rb.ra.ival;
后,顯示在屏幕上的是[]o
A)67,69,70B)66,67,70C)67,68,69D)66,67,68
(19)類的默認的拷貝構(gòu)造函數(shù)|Jo
A)在任何情況下都存在
B)僅當未定義拷貝構(gòu)造函數(shù)時存在
C)僅當未定義有參構(gòu)造函數(shù)時存在
D)僅當未定義任何構(gòu)造函數(shù)時存在
(20)語句ofstreamf(**SALARY.DAT*\ios::nocreate|ios::trunc);的功能是建立流對象f,
并試圖打開文件SALARY.DAT并與之連接,而且|
A)若文件存在,將文件指針定位于文件尾;若文件不存在,建立一個新文件。
B)若文件存在,將其截為空文件;若文件不存在,打開失敗。
C)若文件存在,將文件指針定位于文件首;若文件不存在,建立一個新文件。
D)若文件存在,打開失?。蝗粑募淮嬖?,建立一個新文件。
答案:]?5:DDACA6?CADBC
11?IS:ADADC16?20:DDBBB
C++試題2
1.下列變量名中,()是合法的。
A.56AB._abcC.d-PtrD.while
2.下列各種運算符中,()優(yōu)先級最高。jCommented|wl5|:)
A.+B.&&C.==D.*=
3.設(shè)變量m,n,a,b,c,d均為0,執(zhí)行(m=a==b)&&(n;c=d)后,m,n的值是()?
A.0,0B.0,1C,1,0D.1,1
4.字符串”\t\v\\\0which\n”的長度是(
A.4B.10C.9D.字符串有非法字符,輸出值不確定
5.設(shè)a=2,b=3,c=2;計算a+=b*=(++b-c++)中a、b>c的值()。
A.8、6、2B.2、4、2C.10、8、3D,5、3、3
6.已知:inti=5,下列do-while循環(huán)語句的循環(huán)次數(shù)為()。
do{cout?i一?endl;
i一;
}while(i!=0);
A.0B.1C.5D.無限
7.下面關(guān)于循環(huán)語句的描述中,()是錯誤的。
A.循環(huán)體內(nèi)可以包含有循環(huán)語句
B.循環(huán)體內(nèi)必須同時出現(xiàn)break語句和continue語句
C.循環(huán)體內(nèi)可以出現(xiàn)選擇語句
D.循環(huán)體內(nèi)可以是空語句
8.下面程序段()。Commented|w16):
x=3;
do
if(!y){cout?wx";continue;}
cout?w#";}
while(x>=l&&x<=2);
A.將輸出##B.將輸出鞘#
C.是死循環(huán)D.含有不合法的控制表達式
9.在函數(shù)的定義格式中,下面各組成部分中,()是可以省略的。(Commentedlwl"]
A.函數(shù)名B.函數(shù)體C.函數(shù)數(shù)據(jù)類型說明D.函數(shù)參數(shù)
10.在函數(shù)的引用調(diào)用時,實參和形參應(yīng)該是使用()。
A.變量值和變量B.地址值和指針C.變量值和引用D.地址值和引用
11.以下關(guān)于文件操作的敘述中,不正確的是()o
A.打開文件的目的是使文件對象與磁盤文件建立聯(lián)系
B.文件讀寫過程中,程序?qū)⒅苯优c磁盤文件進行數(shù)據(jù)交換
C.關(guān)閉文件的目的之一是保證將輸出的數(shù)據(jù)寫入硬盤文件
D.關(guān)閉文件的目的之一是釋放內(nèi)存中的文件對象
12.若有語句inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;則()不是對a數(shù)組元素的正____________________________________________
確引用(其中0Wi〈lO)。^Commented|w18]:一二]
A.p[i]B.*(*(a+i))C.a[p-a]D.*(&a[i])
13.以下程序的輸出結(jié)果是()。
#include<iostream.h>
voidmainO
{chars[]=*abcdefbcde*,*p=s;
intvl=0,v2=0,v3=0,v4=0;
for(p;*p;p++)
switch(*p)
(
case'a':vl++;break;
case'b':v3++;break;
case'e:v2++;break;
default:v4++;
)
cout?vl?*,*?v2?*,*?v3?*,*?v4?endl;
}
A.1,2,2,5B.4,7,5,8C.1,5,3,10D.8,8,8,8
14.下列結(jié)構(gòu)體定義,正確的是|oCommented|w!9|:
A.record{B.structrecord{
intno;intno;
charnum[16];charnum[16];
floatscore;floatscore;
};)
C.structrecord{D.structrecord{
intno;intno
charnum[16];charnum[16]
floatscore;floatscore
))
15.下列是構(gòu)造函數(shù)的特點,()是錯誤的。Commented|w20]:
A.構(gòu)造函數(shù)是一種成員函數(shù),它具有一般成員函數(shù)的特點
B.構(gòu)造函數(shù)的名稱與其類名相同
C.構(gòu)造函數(shù)必須指明其類型
D.一個類中可定義一個或多個構(gòu)造函數(shù)
16.關(guān)于友元函數(shù)的描述中,()是錯的。Commented|w21|:
A.友元函數(shù)是成員函數(shù),它被說明在類體內(nèi)
B.友元函數(shù)可直接訪問類中的私有成員
C.友元函數(shù)破壞封裝性,使用時盡量少用
D.友元類中的所有成員函數(shù)都是友元函數(shù)
17.下列對派生類的描述中,()是錯誤的。
A.一個派生類可以作為另一個派生類的基類
B.派生類至少應(yīng)有一個基類
C.基類中成員訪問權(quán)限繼承到派生類中都保持不變
D.派生類的成員除了自己定義的成員外,還包含了它的基類成員
18.C++類體系中,能被派生類繼承的有()。
A.構(gòu)造函數(shù)B.虛函數(shù)C.友元函數(shù)D.析構(gòu)函數(shù)
19.關(guān)于下列虛函數(shù)的描述中,()是正確的。
A.虛函數(shù)是一個static存儲類的成員函數(shù)
B.虛函數(shù)是一個非成員函數(shù)
C.基類中說明了虛函數(shù)后,派生類中將其對應(yīng)的函數(shù)可不必說明為虛函數(shù)
D.派生類的虛函數(shù)與基類的虛函數(shù)應(yīng)具有不同的類型或個數(shù)
(Commented
20.以下有關(guān)靜態(tài)數(shù)據(jù)成員函數(shù)的敘述不正確的是(
A.靜態(tài)成員函數(shù)屬于整個類
B.對靜態(tài)成員函數(shù)的引用不允許使用對象名
C.在靜態(tài)成員函數(shù)中不能直接引用類的非靜態(tài)成員
D.使用類名可以直接調(diào)用其靜態(tài)成員函數(shù)
21.下列有關(guān)運算符重載的描述中,()是正確的。Commented|w23|:)
A.運算符重載可改變其優(yōu)先級B.運算符重載不改變其語法結(jié)構(gòu)
C.運算符重載可改變其結(jié)合性D.運算符重載可改變其操作數(shù)的個數(shù)
22.對new運算符的下列描述中,()是錯誤的。
A.它可以動態(tài)創(chuàng)建對象和對象數(shù)組
B.用它創(chuàng)建對象數(shù)組時必須指定初始值
C.用它創(chuàng)建對象時要調(diào)用構(gòu)造函數(shù)
D.用它創(chuàng)建的對象可以使用運算符delete來釋放
23.下列是為字符數(shù)組賦字符串的語句組,其中錯誤是().
A.chars[10];s="programw;B.chars□:“programw;「Commented|L24]:數(shù)組名字是指針常量,不可改變)
C.chars[10]=wHello!";D.chars[10];strcpy(s,nhello!");
24.當調(diào)用函數(shù)時,實參是一個一維數(shù)組名a,則向函數(shù)傳送的是()o
A.數(shù)組的長度B.數(shù)組所有元素的值
C.數(shù)組元素a[0]的值D.數(shù)組元素a[0]的地址
25.下列有關(guān)類的說法不正確的是()。
A.對象是類的一個實例
B.任何一個對象只能屬于一個具體的類
C.一個類只能有一個對象
D.類與對象的關(guān)系和數(shù)據(jù)類型與變量的關(guān)系相似
答案:1?5:BADBC6M0:DBBDC
11?15:BBACC16?20:ACBCB
_______21?25:BBADC
1:指出下列對定義重載函數(shù)的要求中,哪些是錯誤的提法。
A.要求參數(shù)的個數(shù)相同。B.要求參數(shù)中至少有一個類型不同。
C.求函數(shù)的返回值不同。D.要求參數(shù)的個數(shù)相同時,參數(shù)類型不同。
答案:C
2:下列運算符中,()運算符在C++中不能重載。
A.?:B.|]C.newD.&&
答案:A
3:下面關(guān)于友元的描述中,錯誤的是()o
A.友元函數(shù)可以訪問該類的私有數(shù)據(jù)成員
B.一個類的友元類中的成員函數(shù)都是這個類的友元函數(shù)
C.友元可以提高程序的運行效率
D.類與類之間的友元關(guān)系可以繼承
答案:D
4:下述靜態(tài)成員的特性中,()是錯誤的。
A.錚態(tài)成員函數(shù)不能利用this指針
B.靜態(tài)數(shù)據(jù)成員要在類體外進行初始化
C.引用靜態(tài)數(shù)據(jù)成員時,要在靜態(tài)數(shù)據(jù)成員名前加〈類名〉和作用域運算符
D.靜態(tài)數(shù)據(jù)成員不是所有對象所共有的
答案:D
5:關(guān)于虛函數(shù)的描述中,()是正確的。
A.虛函數(shù)是一個靜態(tài)成員函數(shù)
B.虛函數(shù)是一個非成員函數(shù)
C.虛函數(shù)既可以在函數(shù)說明時定義,也可以在函數(shù)實現(xiàn)時定義
D.派生類的虛函數(shù)與基類中對應(yīng)的虛函數(shù)具有相同的參數(shù)個數(shù)和類型
答案:D
6:下列關(guān)于動態(tài)聯(lián)編的描述中,錯誤的是()。
A.動態(tài)聯(lián)編是以虛函數(shù)為基礎(chǔ)
B.動態(tài)聯(lián)編是運行時確定所調(diào)用的函數(shù)代碼的
C.動態(tài)聯(lián)編調(diào)用函數(shù)操作是指向?qū)ο蟮闹羔樆驅(qū)ο笠?/p>
D.動態(tài)聯(lián)編是在編譯時確定操作函數(shù)的
答案:D
8:下面4個選項中,()是用來聲明虛函數(shù)的。
A.virtualB.publicC.usingD.false
答案:A
9:編譯時的多態(tài)性可以通過使用()獲得。
A.虛函數(shù)和指針B.重載函數(shù)和析構(gòu)函數(shù)C.虛函數(shù)和對象D.虛函數(shù)和引
用
答案:A
10:美于純虛函數(shù)和抽象類的描述中,錯誤的是()。
A.純虛函數(shù)是一種特殊的虛函數(shù),它沒有具體的實現(xiàn)
B.抽象類是指具體純虛函數(shù)的類
C.一個基類中說明有純虛函數(shù),該基類派生類一定不再是抽象類
D.抽象類只能作為基類來使用,其純虛函數(shù)的實現(xiàn)由派生類給出
答案:B
11:下列描述中,()是抽象類的特征。
A.可以說明虛函數(shù)B.可以進行構(gòu)造函數(shù)重載C.可以定義友元函數(shù)D.不能說
明其對象
答案:D
12:以下()成員函數(shù)表示虛函數(shù)。
A.virtualintvf(int);B.voidvf(int)=0;
C.virtualvoidvf()=0;D.virtualvoidvf(int){};
答案:D
13:如果一個類至少有一個純虛函數(shù),那么就稱該類為(A
A.抽象類B.虛函數(shù)C.派生類D.以上都不對
答案:A
14:要實現(xiàn)動態(tài)聯(lián)編,必須通過()調(diào)用虛函數(shù)。
A.對象指針B.成員名限定C.對象名D.派生類
名
答案:A
15:下面描述中,正確的是()<>
A.virtual可以用來聲明虛函數(shù)
B.含有純虛函數(shù)的類是不可以用來創(chuàng)建對象的,因為它是虛基類Commented|L25):抽象類不能創(chuàng)建對象,只能使用該類
C.即使基類的構(gòu)造函數(shù)沒有參數(shù),派生類也必須建立構(gòu)造函數(shù)作為其他類的基類
D.靜態(tài)數(shù)據(jù)成員可以通過成員初始化列表來初始化
答案:A
(
16:已知inta,*pa=&a;輸出指針pa十進制的地址值的方法是()。Commented|w26|:
A.cout?pa;B.cout?*pa;
C.cout?&pa;D.cout?long(&pa);
答案:D
17:關(guān)于read。函數(shù)的下列描述中,()是對的。
A.函數(shù)只能從鍵盤輸入中獲取字符串
B.函數(shù)所獲取的字符多少是不受限制的
C.該函數(shù)只能用于文本文件的操作中
D.該函數(shù)只能按規(guī)定讀取所指定的字符數(shù)
答案:D
18:下列一維數(shù)組定義正確的是(Commented|w27|:數(shù)組維數(shù)只能包含整形字面值常量、
A.x=6;intnum[x];B.constintx=6;floata[x];枚舉常量或者常量表達式
B.constfloatx=6;intb[x];D.constintx=6;intc[x];
答案:B,
19:下面選項中等價的是()o
A.inta[2][3]={1,0,2,2,4,5}與inta[2][]={1,0,2,2,4,5};
B.inta[][3]={1,0,2,2,4,5}與inta[2][3]={1,0,2,2,4,5);
C.inta[2][3]={3,4,5}與inta[][3]={3,4,5};
D.inta[2][3]={0,1}與inta[2][3]={{0},{1});
答案:B,
20:下面程序的輸出結(jié)果是()o
#include<iostream.h>
voidmain()
{inta[3][3]={{1,2},{3,4},{5}};
intsum=0;
for(intI=1;I<3;I++)
for(intj=O;j<=I;j++)
sum+=a[I][j];
cout?sum?endl;
}
A.12B.14C.15D.13
答案:A
21:下列數(shù)組的定義中,()是錯誤的。
A.charcal口={'c','m','n'};B.charca2=,,name,z;
C.charca3[4]=z,yourzz;D.intarray[]={1,2,3,4};
答案:C
22:下面程序的輸出結(jié)果是(),,
#include<iostream.h>
#include〃string.h〃
voidmain()
,,//=,,z,
{chara[]=welcome>b[]well;
strcpy(a,b);
cout?a?endl;
)
A.wellomeB.wellomC.wellD.wellwe
答案:C
23:下面關(guān)于數(shù)組的說法正確的是()o
A.它與普通變量沒什么區(qū)別B.它的元素的數(shù)據(jù)類型可以相同,也可以不同
C.它用數(shù)組名標識其元素D.數(shù)組的元素的數(shù)據(jù)類型是相同的
D
24:下列說法正確的是()<,
A.字符型數(shù)組與整型數(shù)組可通用
B.字符型數(shù)組與字符串其實沒什么區(qū)別
C.當字符串放在字符數(shù)組中,這時要求字符數(shù)組長度比字符串長1個單元,因為要放
字符串終結(jié)符,\0,
D.字符串的輸出可以用它所存儲的數(shù)組來輸出,也可以字符串的形式整體輸出,結(jié)果
沒區(qū)別
C
25:給出下面定義:
chara[]=,/abcdz,;
charb[]={'a,Jb,,,c','d,};
則下列說法正確的是
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 山西省2024七年級道德與法治上冊第二單元成長的時空第四課幸福和睦的家庭情境基礎(chǔ)小練新人教版
- 2025年臨時租房協(xié)議考研范文(2篇)
- 2025年倉儲租賃合同例文(三篇)
- 游戲廳裝修工程協(xié)議
- 主題公園商鋪居間合同
- 體育館裝修施工合同協(xié)議書
- 鹽田古典聲學裝修施工方案
- 機場候機廳墻面裝修協(xié)議
- 木材短途運輸協(xié)議
- 服裝店內(nèi)部裝修項目協(xié)議
- 父母贈與協(xié)議書
- 2025節(jié)后復工安全工作重點(培訓課件)
- 員工之愛崗敬業(yè)培訓課件1
- 高校鑄牢中華民族共同體意識教育的路徑研究
- 《宗教與文化》課件
- 醫(yī)療機構(gòu)依法執(zhí)業(yè)自查管理辦法
- 《個人所得稅征管問題及對策研究》
- 2020-2024年五年高考歷史真題分類匯編(全國)專題14 中國古代史(非選擇題)(原卷版)
- JGJT46-2024《施工現(xiàn)場臨時用電安全技術(shù)標準》條文解讀
- 2022年云南省公務(wù)員錄用考試《申論》真題(縣鄉(xiāng)卷)及答案解析
- 大學輔導員崗位考核參考指標
評論
0/150
提交評論