第 1 頁:試題 |
第 2 頁:參考答案 |
點擊查看:2018年12月計算機二級C++提分練習題及答案匯總
選擇題
1.可以用P.a的形式訪問派生類對象P的基類成員a,其中a是( )。
A.私有繼承的公有成員
B.公有繼承的私有成員
C.公有繼承的保護成員
D.公有繼承的公有成員
2.下面程序的運行結果為( )。
#include
classA
{
intnum;
public:
A(inti){num=i;)
A(A&a){num=a.num++;}
voidprint(){cout< };
voidmain()
{
Aa(1),b(a);
a.print();
b.print();
}
A.11B.12
C.21D.22
3.設有定義charstr[80];以下不能將輸入數據first\nsecond\n讀取到數組str中的語句是( )。
A.cin.get(str,strlen(str));
B.cin.getline(str,strlen(str));
C.cin>>str;
D.cin.read(str,strlen(str));
4.下列程序的輸出結果為( )。
#include
classTestClass
{
public:
TestClass(){val++;}
static,intval;
};
intTestClass::val=0;
voidmain()
{
TestClasscsl;
cout< TestClasscs2;
TestClasscs3,cs4;
cout< }
A.O3
B.13
C.14
D.24
5.有以下類定義:
classMyClass
{
private:
intid;
chargender;
char*phone;
public:
MyClass():id(0),gender(’#’),phone(NULl){}
MyClass(intn0,charge=’#’,char*ph=NULL)
{id=no;gender=ge;phone=ph;}
};
下列類對象定義語句中錯誤的是( )。
A.MyClassmyObj;
B.MyClassmyObj(11,"13301111155");
C.MyClassmyObj(12,’m’);
D.MyClassmyObj(12);
6.下列是關于派生類聲明的開始部分,其中正確的是( )。
A.classvirtualB:publicA
B.virtualclassB:publicA
C.classB:publicAvirtual
D.classB:virtualpublicA
7.如果類A被說明成類B的友元,則( )。
A.類A的成員即類B的成員
B.類B的成員即類A的成員
C.類A的成員函數不得訪問類B的成員
D.類B不一定是類A的友元
8.下列關于虛基類的描述,錯誤的是( )。
A.設置虛基類的目的是為了消除二義性
B.虛基類的構造函數在非虛基類之后調用
C.若同一層中包含多個虛基類,這些虛基類的構造函數按它們說明的次序調用
D.若虛基類由非虛基類派生而來,則仍然先調用基類構造函數,再調用派生類的構造函數
9.下列關于多態(tài)性的描述,錯誤的是( )。
A.C++語言中的多態(tài)性分為編譯時的多態(tài)性和運行時的多態(tài)性
B.編譯時的多態(tài)性可通過函數重載實現
C.運行時的多態(tài)性可通過模板和虛函數實現
D.實現運行時多態(tài)性的機制稱為動態(tài)綁定
10.若有如下程序:
#include
usingnamespacestd;
classTestClassl
{
private:
inta;
public:
TestClassl(inti)
{
a=i:
}
voiddisp( )
{
cout< }
};
classTestClass2
{
private:
intb:
public:
TestClass2(intj)
{
b=j;
}
voiddisp()
{
cout< }
};
classTestClass3:publicTestClass2,publicTestClassl
{
private:
intc;
public:
TestClass3(intk):TestClass1(k-2),TestClass2(k+2)
{
c=k:
}
voiddisp()
{
TestClasssl::disp();
TestClasss2::disp();
cout< }
};
intmain()
{
TestClass30bj(10);
obj.disp();
return0;
}
程序執(zhí)行后的輸出結果是( )。
A.10,10,10
B.10,12,14
C.8,10,12
D.8,12,10
微信搜索"考試吧"了解更多考試資訊、下載備考資料
相關推薦: