點擊查看:2018年9月計算機二級C++考前基礎練習題及答案匯總
1.為了提高函數調用的實際運行速度,可以將較簡單的函數定義為( )。
A.內聯函數
B.重載函數
C.遞歸函數
D.函數模板
2.若AA為一個類,a為該類的非靜態數據成員,在該類的一個成員函數定義中訪問a時,其書寫格式為( )。
A.a
B.AA.a
C.a{}
D.AA:a{}
3.當派生類從一個基類保護繼承時,基類中的一些成員在派生類中成為保護成員,這些成員在基類中原有的訪問屬性是( )。
A.任何
B.公有或保護
C.保護或私有
D.私有
4.若要對Date類中重載的加法運算符成員函數進行聲明,下列選項中正確的是( )。
A.Data+(Data);
B.Dataoperator+(Data);
C.Data+operator(Data);
D.operator+(Data.Data);
5.下列關于函數模板的描述中,正確的是( )。
A.函數模板是一個實例函數
B.使用函數模板定義的函數沒有返回類型
C.函數模板的類型參數與函數的參數相同
D.通過使用不同的類型參數,可以從函數模板得到不同的實例函數
6.C++系統預定義了3個用于標準數據流的對象,下列選項中不屬于此類對象的是( )。
A.cout
B.cin
C.cerr
D.cset
7.Windows環境下,由C++源程序文件編譯而成的目標文件的擴展名是( )。
A.cpp
B.exe
C.obj
D.lik
8.字符串“a+b=12\n\t”的長度為( )。
A.12
B.10
C.8
D.6
9.有如下程序:
#include
usingnamespacestd;
intmain( ){
intf,f1=0,f2=1;
for(inti=3;i<=6;i++){
f=f1+f2:
f1=f2;f2=f;
}
cout
}
運行時的輸出結果是( )。
A.2
B.3
C.5
D.8
10.有如下程序:
#include
usingnamespacestd;
intmain( ){
inta[6]={23,15,64,33,40,58};
ints1,s2;
s1=s2=a[0];
for(int*p=a+1;pif(s1>*p)s1=*p;
if(s2<*p)s2=*p;
}
cout
}
運行時的輸出結果是( )。
A.23
B.58
C.64
D.79
參考答案:
1.A。【解析】內聯函數一般是程序代碼少于10行的函數,在編譯過程中,直接在調用點處被展開,不會因函數調用帶來巨大的系統開銷,因此能提高實際運行速度。
2.A。【解析】a是類AA的非靜態數據成員,在類AA的成員函數中可以直接訪問。B是訪問靜態數據成員的方式,C和D都是訪問函數的方式。
3.B。【解析】保護繼承時基類的public和proteeted是保護的,私有繼承時基類的public和protected是私有的。
4.B:【解析】重載運算符的函數一般格式如下:函數類型0perator運算符名稱(形參列表)因此選B。
5.D。【解析】函數模板只是聲明了一個函數的描述即模板,不是一個可以直接執行的函數,只有根據實際情況用實參的數據類型參數標識符之后,才能產生真正的函數。
6.D。【解析】C++的標準數據流對象有3個:cout標注輸出流,cin標準輸入流,cerr標準錯誤流。
7.C。【解析】cpp是C++源文件的擴展名;exe是可執行文件的擴展名;lik是連接文件的擴展名。
8.C。【解析】\n表示回車,\t是制表符。
9.C。【解析】循環3次,分別每次計算出f1,f2和f的值,該題比較簡單,只需要細心即可。
10.D。【解析】根據程序的意思,找出數組a中最大值s1和最小值s2并計算二者的和。
微信搜索"考試吧"了解更多考試資訊、下載備考資料
相關推薦: