2016計算機二級《C++》上機強化練習題
2016年全國計算機等級考試時間為3月26日-29日,為了幫助大家順利通過計算機二級考試,下面本站小編為大家帶來2016計算機二級《C++》上機強化練習題,供大家參考學習,預祝考生備考成功!
一、選擇題(每小題1分,共40分)
1、有如下程序:
#inClude using namespaCe std; Class B{
publiC:
virtual void show(){Cout<<”B”;} };
Class D:publiC B{ . publiC:
void show(){Cout<<”D”;} };
void funl(B * ptr){ptr一>show();} void fUN2(B&ref){();}
voidfhIl3(B B.{();} int main()
{
B b,* P=new D; D d;
funl(P); fun2(B.; fun3(D);
delete P; return 0; }
執行這個程序的輸出結果是( )。
2、下面描述中錯誤的是( )。
A.系統總體結構圖支持軟件系統的詳細設計
B.軟件設計是將軟件需求轉換為軟件表示的過程
C.數據結構與數據庫設計是軟件設計的任務之一
圖是軟件詳細設計的表示工具
3、已知函數FA調用函數FB,若要把這兩個函數定義在同一個文件中,則( )。
必須定義在FB之前
必須定義在FA之前
C.若FA定義在FB之後,則FA的原型必須出現在FB的定義之前
D.若FB定義在FA之後,則FB的原型必須出現在FA的定義之前
4、有如下函數定義:
void funC(int a,int&B. {a++;b++;}
若執行代碼段:
int x=0,Y = 1; funC(X,Y);
則變量x和y的值分別是( )。
A.0和1
B.1和1
C.0和2
D.1和2
5、下面程序的輸出結果是( )。
#include
class example
{
int a;
public:
example(int B.{a=b++;}
void print(){a=a+1;eout< void print()const{cout< };
void main()
{
example x(3);
const example Y(2);
A print();
B print();
}
A.2 2
B.4 3
C.4 2
D.3 2
6、下列有關類繼承的敍述中,錯誤的是( )。
A.繼承可以實現軟件複用
B.虛基類可以解決由多繼承產生的二義性問題
C.派生類構造函數要負責調用基類的構造函數
D.派生類沒有繼承基類的私有成員
7、下面程序的運行結果是( )。
#include
int fun(int a[],int n) {
int resuh=1;
for(inl i=1;i<11;1‘++)
result=result * a[i];
retum result;
} void main()
int a[3]={3,4,5}:
cout< }
A.12
B.15
C.20
D.60
8、下列敍述中正確的是( )。
A.在棧中,棧中元素隨棧底指針與棧頂指針的變化而動態變化
B.在棧中,棧頂指針不變,棧中元素隨棧底指針的變化而動態變化
C.在棧中,棧底指針不變,棧中元素隨棧頂指針的變化而動態變化
D.以上説法都不正確
9、在滿足實體完整性約束的條件下( )。
A.一個關係中應該有一個或多個候選關鍵字
B.一個關係中只能有一個候選關鍵字
C.一個關係中必須有多個候選關鍵字
D.一個關係中可以沒有候選關鍵字
10、下面關於c+十語言變量的敍述錯誤的是( )。
A.c++語言中變量分為aut0、static、extem和register4種存儲類型
B.自動變量和外部變量的作用域為整個程序
C.內部靜態變量的作用域是定義它的函數
D.外部靜態變量的作用域是定義它的文件
11、 下面程序的運行結果是( )。
#include void main()
{
int num=1:
int&ref=num; ref=ref+2:
cout< }
A.13
B.16
C.36
D.33
12、 有以下程序:
#include float tun(int X,int Y) {return(X+Y);} void main()
{int a=2,b=5,c=8;
cout< 程序運行後的輸出結果是( )。
A.編譯出錯
B.9
C.21
D.9.0
13、 下列運算符中,不能被重載的是( )。
A.&&
B.!=
C..
D.++
14、 算法的空間複雜度是指( )。
A.算法在執行過程中所需要的計算機存儲空間
B.算法所處理的數據量
C.算法程序中的語句或指令條數
D.算法在執行過程中所需要的臨時工作單元數
15、 c++語言類體系中,不能被派生類繼承的有( )。
A.轉換函數
B.構造函數
C.虛函數
D.靜態成員函數
16、 對C++編譯器區分重載函數無任何意義的信息是( )。
A.參數類型
B.參數個數
C.返回值類型
D.常成員函數關鍵字Const
17、 對類成員訪問權限的控制,是通過設置成員的訪問控制屬性實現的,下列不是訪問控制屬性的是( )。
A.公有類型
B.私有類型
C.保護類型
D.友元類型
18、 下列程序的運行結果為( )。
#include int i=0;
class A{ public: A(){i++;}
};
void main() {
A a,b[3],*C; C=b;
cout< }
A.2
B.3
C.4
D.5
19、 以下關鍵字不能用來聲明類的訪問權限的是( )。
iC
iC
eCted
ate
20、 設有定義int a=1;float f=1.2;char C='a';,則下列表示錯誤的'是( )。
A.++a;
B.f一一;
C.c++;
D.8++;