(30)有如下程序?
class Base{
public:
int data;
};
class Derived1:public Base{};
class Derived2:protected Base{};
int main(){
Derived1 d1;
Derived2 d2;
d1. data=0; //①
d2. data=0; //②
return 0;
}
下列關(guān)于程序編譯結(jié)果的描述中?正確的是( )。
A) ①②皆無編譯錯誤 B) ①有編譯錯誤?②無編譯錯誤
C) ①無編譯錯誤?②有編譯錯誤 D) ①②皆有編譯錯誤
(31)有如下程序?
#include?iostream?
using namespace std;
class Base1{
public:
Base1(int
D) {cout??d;}
~Base1(){}
};
class Base2{
public:
Base2(int D) {cout??d;}
~Base2 (){}
};
class Derived:public Base1, Base2{
public:
Derived(int a, int b, int c, int D) ;
Base1(B) , Base2(A) , b1(D) , b2(C) {}
Private:
int b1; www.docin.comint b2;
};
int main(){
Derived d(1, 2, 3, 4);
return 0;
}
運行時的輸出結(jié)果是( )。
A) 1234 B) 2134 C) 12 D) 21
(32)有如下程序?
#include?iostream?
using namespace std;
class Base{
public:
virtual void function1(){cout??'0';}
void function2(){cout??'1';}
};
class Derived:public Base{
public:
void function1(){cout??'2';}
void function2(){cout??'3';}
};
int main(){
Base*P=new Derived();
p-?function1()?
p-?function2()?
return 0;
};
運行時的輸出結(jié)果是( )。
A) O1 B) 21 C) 03 D) 23
(33)若為Fraction類重載前增1運算符++?應(yīng)在類體中將其聲明為( )。
A) Fraction& operator++();
B) Fraction& operator++(int)?
C) friend Fraction& operator++();
D) friend Fraction& operator++(int);
(34)有如下程序?
#include?iomanip?
#include?iostream?
using namespace std;
int main(){
cout??setfill('*')??setw(6)??123??456;
return 0;
}
運行時的輸出結(jié)果是( )。
A) ***123***456 B) ***123456*** www.docin.comC) ***123456 D) 123456
(35)有如下程序?
#include?iostream?
using namespace std;
void function2(int n);
void function1(int n){
if(n?=0)retum;
function2(n-2);
}
void function2(int n){
if(n?
=0)return;
function1(n-1);
}
int main(){
function1(5);
return 0;
}
下列關(guān)于程序運行情況的描述中?正確的是( )。
A) function1運行1次?function2運行2次
B) function1運行2次?function2運行1次
C) function1運行2次?function2運行3次
D) function1運行2次?function2運行2次
二、填空題
(1)數(shù)據(jù)結(jié)構(gòu)分為線性結(jié)構(gòu)與非線性結(jié)構(gòu)?帶鏈的棧屬于______。
(2)在長度為n的順序存儲的線性表中插入一個元素?最壞情況下需要移動表中
______個元素。
(3)常見的軟件開發(fā)方法有結(jié)構(gòu)化方法和面向?qū)ο蠓椒āδ硲?yīng)用系統(tǒng)經(jīng)過需求
分析建立數(shù)據(jù)流圖(DFD) ?則應(yīng)采用______方法。
(4)數(shù)據(jù)庫系統(tǒng)的核心是______。
(5)在進行關(guān)系數(shù)據(jù)庫的邏輯設(shè)計時?E-R圖中的屬性常被轉(zhuǎn)換為關(guān)系中的屬
性?聯(lián)系通常被轉(zhuǎn)換為______。
(6)若有“intx=15, y=20;”?則執(zhí)行表達式y(tǒng)-=x++后?表達式x+y的值為
______。
(7)執(zhí)行語句序列“int k=0; do k++; while(k*k?20);”后?k的值為
______。
(8)下列程序運行時的輸出結(jié)果是______。
#include?iostream?
using namespace std;
int Xfun(int*a, int n);
int main()
int b[6]={-2, 6, 8, -3, 5, 4);
cout??Xfun(b, 6)??end1;
return 0;
} www.docin.comint Xfun(int*a, int n){
int x=0;
for(int*p=a; p?a+n; p++)if(*p?0)x+=*p;
return X;
}
(9)下列程序運行時的輸出結(jié)果是______。
#include?iostream?
using namespace std;
void Xfun(int&, int&);
int main(){
int a=3, b=4;
Xfun(a, B) ;
cout??a*a+b??end1;
return 0;
}
void Xfun(int& x, int& y){
int z=x;
x=y; y=z;
}
(10)若Xcs是一個類?該類中具有一個函數(shù)體為空的不帶參數(shù)的構(gòu)造函數(shù)?此
構(gòu)造函數(shù)的類外定義為______。
(11)有如下程序?
#include?iostream?
using namespace std;
class Sac{
int n;
public:
Sac():n(4){cout??n;}
Sac(int k):n(k){cout??n;}
~Sac(){cont??n+n;}
};
int main(){
Sac s1,*s2;
s2=new Sac(3);
delete s2;
return 0;
}
以上是考試頻道小編為你收集整理2011年9月計算機等級考試二級筆試C++語言程序設(shè)計。