為大家收集整理了《2014年計算機(jī)等級二級C++考前押密試卷》供大家參考,希望對大家有所幫助!!!
1、假定int類型變量占用兩個字節(jié),其有定義int x[10]={0,2,4};,則數(shù)組x在內(nèi)存中所占字節(jié)數(shù)是( )。
A.3
B.6
C.10
D.20
2、
由關(guān)系R通過運(yùn)算得到關(guān)系s,則所使用的運(yùn)算為( )。
A.選擇
B.投影
C.插入
D.連接
3、對于循環(huán)隊列,下列敘述中正確的是( )。
A.隊頭指針是固定不變的
B.隊頭指針一定大于隊尾指針
C.隊頭指針一定小于隊尾指針
D.隊頭指針可以大于隊尾指針,也可以小于隊尾指針
4、下列有關(guān)函數(shù)重載的敘述中,錯誤的是( )。
A.函數(shù)重載就是用相同的函數(shù)名定義多個函數(shù)
B.重載函數(shù)的參數(shù)列表必須不同
C.重載函數(shù)的返回值類型必須不同
D.重載函數(shù)的參數(shù)可以帶有默認(rèn)值
5、有三個關(guān)系R S和T如下.
則由關(guān)系R和S得到關(guān)系T的操作是( )。
A.自然連接
B.并
C.交
D.差
6、下面關(guān)于類和對象的描述中,錯誤的是( )。
A.類就是C語言中的結(jié)構(gòu)體類型,對象就是C語言中的結(jié)構(gòu)體變量
B.類和對象之間的關(guān)系是抽象和具體的關(guān)系
C.對象是類的實(shí)例,一個對象必須屬于一個已知的類
D.類是具有共同行為的若干對象的統(tǒng)一描述體
7、有如下程序:
#inClude using namespaCe std; Class test{
private: int a;
publiC:
test( ?。﹞Cout<<”ConstruCtor”< test(Const test&_test){ a=test.a(chǎn):
Cout<<”Copy ConstruCtor”< test( ?。﹞Cout<<”destruCtor”< };
int main( ?。﹞ test A(3); return 0;
}
執(zhí)行這個程序的輸出結(jié)果是( ?。?。
A.3
B.ConstruCtor
destruCtor
C.Copy ConstruCtor
destruCtor
D.3
destruCtor
8、有如下函數(shù)模板:
template
T east(U u)i return u;}
其功能是將U類型數(shù)據(jù)轉(zhuǎn)換為T類型數(shù)據(jù)。已知i為int型變量,下列對模板函數(shù)cast的調(diào)用中正確的是( ?。?。
A.cast(i);
B.cast<>(i);
C.east(i);
D.east(i);
9、下面程序的運(yùn)行結(jié)果是( )。
#include
void fun(int *a,int *B. {
int x=*a:
*a=*b;*b=X;
cout<<*a<<*b<<””:
void main() {
int X=1,Y=2; fun(&x,&y);
cout< }
A.12 12
B.12 21
C.21 12
D.21 21
10、在C++語言中,打開一個文件就是將這個文件與一個( )建立關(guān)聯(lián)。
A.流
B.類
C.結(jié)構(gòu)
D.對象
11、 下列語句中,錯誤的是( )。
A.const int buffer:256;
B.const int temp;
C.const double*point;
D.const double*rt=new double(5.5);
12、 下列程序的輸出結(jié)果為( )。
#include
void main()
{
char*a[]={”hell0”,”the”,”world”};
char** pa = a:
pa++;
cout<<*pa< }
A.hello
B.the
C.world
D.hellotheworld
13、 關(guān)于運(yùn)算符重載,下列表述中正確的是( )。
A.C++已有的任何運(yùn)算符都可以重載
B.運(yùn)算符函數(shù)的返回類型不能聲明為基本數(shù)據(jù)類型
C.在類型轉(zhuǎn)換符函數(shù)的定義中不需要聲明返回類型
D.可以通過運(yùn)算符重載來創(chuàng)建C++中原來沒有的運(yùn)算符
14、 可以用P.a(chǎn)的形式訪問派生類對象P的基類成員a,其中a是( )。
A.私有繼承的公有成員
B.公有繼承的私有成員
C.公有繼承的保護(hù)成員
D.公有繼承的公有成員
15、 在下列原型所示的C++函數(shù)中,按“傳值”方式傳遞參數(shù)的是( ?。?BR> A.void fl(int X);
B.void t2(int*X);
C.void f3(Const int*X);
D.void f4(int&x);
16、 以下關(guān)鍵字不能用來聲明類的訪問權(quán)限的是( ?。?。
A.public
B.static
C.protected
D.private
17、下面程序的運(yùn)行結(jié)果為( )。
#include class A
{
int hum;
public:
A(int i){nuln=i;}
A(A&A.{num=a.num十+;} void print(){eout( void main()
A a(1),b(A.; a.print();
A print();
A.11
B.12
C.21
D.22
18、 下面是重載為非成員函數(shù)的運(yùn)算符的函數(shù)原型,其中錯誤的是( )。
A.Fraction operator+(Fraction,F(xiàn)raction);
B.Fraction operator一(Fraction);
C.Fraction&operator=(Fraction&,F(xiàn)raction);
D.Fraction&operator+=(Fraction&,F(xiàn)raction);
19、 下列語句中錯誤的是( )。
A.Const int a;
B.Const int a=10;
C.Const int * point=0;
D.Const int * point=new int(10);
20、 下列關(guān)于函數(shù)的描述中,錯誤的是( )。
A.函數(shù)可以沒有返回值
B.函數(shù)可以沒有參數(shù)
C.函數(shù)可以是一個類的成員
D.函數(shù)不能被定義為模板
21、 下列語句都是程序運(yùn)行時的第1條輸出語句,其中一條語句的輸出效果與其他三條語句不同,該語句是( )。
A.cout
1、假定int類型變量占用兩個字節(jié),其有定義int x[10]={0,2,4};,則數(shù)組x在內(nèi)存中所占字節(jié)數(shù)是( )。
A.3
B.6
C.10
D.20
2、
由關(guān)系R通過運(yùn)算得到關(guān)系s,則所使用的運(yùn)算為( )。
A.選擇
B.投影
C.插入
D.連接
3、對于循環(huán)隊列,下列敘述中正確的是( )。
A.隊頭指針是固定不變的
B.隊頭指針一定大于隊尾指針
C.隊頭指針一定小于隊尾指針
D.隊頭指針可以大于隊尾指針,也可以小于隊尾指針
4、下列有關(guān)函數(shù)重載的敘述中,錯誤的是( )。
A.函數(shù)重載就是用相同的函數(shù)名定義多個函數(shù)
B.重載函數(shù)的參數(shù)列表必須不同
C.重載函數(shù)的返回值類型必須不同
D.重載函數(shù)的參數(shù)可以帶有默認(rèn)值
5、有三個關(guān)系R S和T如下.
則由關(guān)系R和S得到關(guān)系T的操作是( )。
A.自然連接
B.并
C.交
D.差
6、下面關(guān)于類和對象的描述中,錯誤的是( )。
A.類就是C語言中的結(jié)構(gòu)體類型,對象就是C語言中的結(jié)構(gòu)體變量
B.類和對象之間的關(guān)系是抽象和具體的關(guān)系
C.對象是類的實(shí)例,一個對象必須屬于一個已知的類
D.類是具有共同行為的若干對象的統(tǒng)一描述體
7、有如下程序:
#inClude using namespaCe std; Class test{
private: int a;
publiC:
test( ?。﹞Cout<<”ConstruCtor”< test(Const test&_test){ a=test.a(chǎn):
Cout<<”Copy ConstruCtor”< test( ?。﹞Cout<<”destruCtor”< };
int main( ?。﹞ test A(3); return 0;
}
執(zhí)行這個程序的輸出結(jié)果是( ?。?。
A.3
B.ConstruCtor
destruCtor
C.Copy ConstruCtor
destruCtor
D.3
destruCtor
8、有如下函數(shù)模板:
template
T east(U u)i return u;}
其功能是將U類型數(shù)據(jù)轉(zhuǎn)換為T類型數(shù)據(jù)。已知i為int型變量,下列對模板函數(shù)cast的調(diào)用中正確的是( ?。?。
A.cast(i);
B.cast<>(i);
C.east(i);
D.east(i);
9、下面程序的運(yùn)行結(jié)果是( )。
#include
void fun(int *a,int *B. {
int x=*a:
*a=*b;*b=X;
cout<<*a<<*b<<””:
void main() {
int X=1,Y=2; fun(&x,&y);
cout< }
A.12 12
B.12 21
C.21 12
D.21 21
10、在C++語言中,打開一個文件就是將這個文件與一個( )建立關(guān)聯(lián)。
A.流
B.類
C.結(jié)構(gòu)
D.對象
11、 下列語句中,錯誤的是( )。
A.const int buffer:256;
B.const int temp;
C.const double*point;
D.const double*rt=new double(5.5);
12、 下列程序的輸出結(jié)果為( )。
#include
void main()
{
char*a[]={”hell0”,”the”,”world”};
char** pa = a:
pa++;
cout<<*pa< }
A.hello
B.the
C.world
D.hellotheworld
13、 關(guān)于運(yùn)算符重載,下列表述中正確的是( )。
A.C++已有的任何運(yùn)算符都可以重載
B.運(yùn)算符函數(shù)的返回類型不能聲明為基本數(shù)據(jù)類型
C.在類型轉(zhuǎn)換符函數(shù)的定義中不需要聲明返回類型
D.可以通過運(yùn)算符重載來創(chuàng)建C++中原來沒有的運(yùn)算符
14、 可以用P.a(chǎn)的形式訪問派生類對象P的基類成員a,其中a是( )。
A.私有繼承的公有成員
B.公有繼承的私有成員
C.公有繼承的保護(hù)成員
D.公有繼承的公有成員
15、 在下列原型所示的C++函數(shù)中,按“傳值”方式傳遞參數(shù)的是( ?。?BR> A.void fl(int X);
B.void t2(int*X);
C.void f3(Const int*X);
D.void f4(int&x);
16、 以下關(guān)鍵字不能用來聲明類的訪問權(quán)限的是( ?。?。
A.public
B.static
C.protected
D.private
17、下面程序的運(yùn)行結(jié)果為( )。
#include class A
{
int hum;
public:
A(int i){nuln=i;}
A(A&A.{num=a.num十+;} void print(){eout( void main()
A a(1),b(A.; a.print();
A print();
A.11
B.12
C.21
D.22
18、 下面是重載為非成員函數(shù)的運(yùn)算符的函數(shù)原型,其中錯誤的是( )。
A.Fraction operator+(Fraction,F(xiàn)raction);
B.Fraction operator一(Fraction);
C.Fraction&operator=(Fraction&,F(xiàn)raction);
D.Fraction&operator+=(Fraction&,F(xiàn)raction);
19、 下列語句中錯誤的是( )。
A.Const int a;
B.Const int a=10;
C.Const int * point=0;
D.Const int * point=new int(10);
20、 下列關(guān)于函數(shù)的描述中,錯誤的是( )。
A.函數(shù)可以沒有返回值
B.函數(shù)可以沒有參數(shù)
C.函數(shù)可以是一個類的成員
D.函數(shù)不能被定義為模板
21、 下列語句都是程序運(yùn)行時的第1條輸出語句,其中一條語句的輸出效果與其他三條語句不同,該語句是( )。
A.cout

