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++;