第 1 頁(yè):試題 |
第 2 頁(yè):參考答案 |
點(diǎn)擊查看:2018年9月計算機二級C++強化練習題及答案匯總
1.下列關(guān)于成員函數特征的描述中,錯誤的是( )。
A.成員函數一定是內聯(lián)函數
B.成員函數可以重載
C.成員函數可以設置參數的默認值
D.成員函數可以是靜態(tài)的
2.考慮以下的函數原型:
voldA(inta,intb=5,charZ=’*’);
下面的函數調用中,不正確的是( )。
A.A(7)
B.A(3,4)
C.A(16,’#’)
D.A(0,2,’*’)
3.關(guān)于靜態(tài)數據成員的描述中正確的是( )。
A.類(lèi)的靜態(tài)數據成員不是類(lèi)的所有對象共享的數據
B.類(lèi)的靜態(tài)數據成員不能被類(lèi)的成員函數調用
C.類(lèi)的靜態(tài)數據成員不能被類(lèi)的構造函數調用
D.類(lèi)的靜態(tài)數據成員必須進(jìn)行初始化
4.設有以下類(lèi)和對象的定義:
ClaSSA
{public:
intm;
};
Ak1,k2,*p1,*p2;
則下面針對成員變量m的引用,錯誤的是( )。
A.k1.m=1
B.k2→m=2
C.p1→m=3
D.(*p2).m=4
5.有以下程序:
classDate
{
public:
Date(inty,intm,intd);
{
year=Y:
month=m;
day=d;
}
Date(inty=2000)
{
year=y;
month=10;
day=1;
}
Date(Date&d)
{
year=d.year;
month=d.month;
day=d.day;
}
voidprint( )
{
cout<}
private:
intyear,month,day;
};
Datefun(Dated)
{
Datetemp;
temp=d;
returntemp;
}
intmain( )
{
Datedatel(2000,1,1),date2(0,0,0);
Datedate3(datel);
date2=fun(date3);
return0;
}
程序執行時(shí),Date類(lèi)的拷貝構造函數被調用的次數是( )。
A.2
B.3
C.4
D.5
6.下列關(guān)于純虛函數與抽象類(lèi)的描述巾,錯誤的是( )。
A.純虛函數是一種特殊的虛函數,它沒(méi)有具體的實(shí)現
B.抽象類(lèi)是指具有純虛函數的類(lèi)
C.一個(gè)基類(lèi)聲明了純虛函數,該基類(lèi)的派生類(lèi)一定不是抽象類(lèi)
D.抽象類(lèi)只能作為基類(lèi)來(lái)使用,其純虛函數的實(shí)現由派生類(lèi)給出
7.以下程序的輸出結果是( )。
#include
longfun(intn)
{longs;
if(n=-1‖n==2)s=2;
elses=n-fun(n-l):
returns;
}
voidmain( ){cout
B.2
C.3
D.4
8.對于模板定義關(guān)鍵字class和typename說(shuō)法不正確的是( )。
A.程序中的class并不能都替換為typename
B.class和typename都可互相替換
C.程序中的typename都能替換為class
D.程序中的部分class可以替換為typename
9.有如下程序:
#include(iostream>
usingnamespacestd;
classCon
{
charID;
public:
Con( ):ID(’A){cout<<1;}
Con(charID):ID(ID){cout((2;)
Con(Con8Lc):ID(c.getlD( )){cout<<3;}
chargetID( )const{returnID;}
};
voidshow(Conc){cout
{
Conc1;
show(c1);
Conc2(’B’);
show(c2);
return0;
執行上面程序的輸出結果是( )。
A.13A23A
B.23A13B
C.13A23B
D.13823A
10.有如下程序
#include(iostream.h>
voidmain( )
{charch[2][5]={"6937","8254"),*p[2];
inti,j,s=0;
for(i=0;i<2;i++)p[i]=ch[i];
for(i=0;i<2;i++)
for(j=0;p[i][j])’\0’;j+=2)
s=10*s+p[i][j]一’0’;
cout<該程序的輸出結果是( )。
A.69825
B.63825
C.6385
D.693825
11.閱讀以下程序
#include(iostream.h>
voidmain( )
{
charline[10];
cin>>line;
cout<<1ine<}
如運行時(shí)輸入“Thisisanexample.”,則程序的輸出結果是( )。
A.This
B.Thisis
C.Thisisa
D.Thisisanexample
12.類(lèi)MyClass的定義如下,若要對value賦值,則下面語(yǔ)句正確的是( )。
classMyClass
{
public:
MyClass( ){}
MyClass(inti){value=newint(i);}
int*value;
};
A.MyClassmy;my.value=10;
B.MyClassmy;*my.value=10;
C.MyClassmy;my.*value=10;
D.MyClassmy(10);
13.類(lèi)A是類(lèi)B的友元,類(lèi)B是類(lèi)C的友元,則下列說(shuō)法正確的是( )。
A.類(lèi)B是類(lèi)A的友元
B.類(lèi)C是類(lèi)A的友元
C.類(lèi)A是類(lèi)C的友元
D.以上都不對
14.如有以下程序:
#include(iostream>
usingnamespacestd;
longfun(intn)
{
if(n)2)
return(fun(n-1)+fun(n-2));
else
return2;
}
intmain( )
{
cout
}
則該程序的輸出結果應該是( )。
A.2
B.3
C.4
D.5
15.下列程序執行結果是( )。
#include(iostream.h)
classA
{public:
inta;
A( ):a(10){cout<};
voidmain( )
{Aobj1;
Aobj2(obj1);
cout<<""<}
A.1010
B.編譯錯誤缺少拷貝構造函數
C.10隨機數
D.隨機數隨機數
16.關(guān)于類(lèi)和對象描述錯誤的是( )。
A.對象(Object)是現實(shí)世界中的客觀(guān)事物,對象具有確定的屬性
B.類(lèi)是具有相同屬性和行為的一組對象的集合
C.對象是類(lèi)的抽象,類(lèi)是對象的實(shí)例
D.類(lèi)是對象的抽象,對象是類(lèi)的實(shí)例
17.下列對重載函數的描述中,錯誤的是( )。
A.重載函數中不允許使用默認參數
B.重載函數中編譯是根據參數表進(jìn)行選擇的
C.不要使用重載函數來(lái)描述毫不相干的函數
D.構造函數重載將會(huì )給初始化帶來(lái)多種方式
18.以下程序的運行結果是( )。
#include(iostream.h>
voidsub(intx,inty,int*z)
{*z=y-x;}
voidmain( )
{inta,b,c;
sub(10,5,&a);
sub(7,a,&b);
sub(a,b,&c);
cout((a<<","
B.-5,-12,-7
C.-5,-12,-17
D.5,-2,-7
19.以下程序不用第3個(gè)變量實(shí)現將兩個(gè)數進(jìn)行對調的操作,畫(huà)線(xiàn)處應為( )。
voidmain( )
{inta,b;
scanf("%d%d",&a,&b);
cin>>a>>b;
cout<<"a="
B.intp=a;
C."p=a;
D.p=a;
微信搜索"考試吧"了解更多考試資訊、下載備考資料
相關(guān)推薦:
2018年全國計算機等級考試復習知識點(diǎn)匯總(各科目)
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內蒙古 |