點擊查看:2018年9月計算機二級C++考試考前過關練習題匯總
選擇題
1.在C++語言中函數(shù)返回值的類型是由( )決定的。
A.調(diào)用該函數(shù)時系統(tǒng)臨時
B.return語句中的表達式類型
C.定義該函數(shù)時所指定的函數(shù)類型
D.調(diào)用該函數(shù)時的主調(diào)函數(shù)類型
2.下列描述正確的是( )。
A.表示m>n為true或mn&&m B.switch語句結構中必須有default語句
C.if語句結構中必須有else語句
D.如果至少有一個操作數(shù)為true,則包含‖運算符的表達式為true
3.使用ifstream流類定義流對象并打開磁盤文件時,文件的隱含打開方式為( )。
A.ios::in
B.ios::out
C.ios::inlios::out
D.沒有默認
4.下列各類函數(shù)中,不是類的成員函數(shù)的是( )。
A.構造函數(shù)
B.抽象類
C.派生類
D.以上都不對
5.下面關于數(shù)組的初始化正確的是( )。
A.charstr[]={’a’,’b’,’e’}
B.charstr[2]={’a’,’b’,’e’)
C.charstr[2][3]={{’a’,’b’},{’C’,’d’},{’e’,’f’}}
D.charstr()={’a’,’b’,’C’}
6.類模板templateclassX{…},其中友元函數(shù)f對特定類型T(如int),使函數(shù)f(x)成為x模板類的友元,則其說明為( )。
A.friendvoidf();
B.friendvoidf(x);
C.friendvoidA::f();
D.friendvoidC::f(x);
7.類MyClass的定義如下:
classMyClass
{
public:
MyClass(){value=0;}
SetVariable(inti){valtic=i;}
private:
intvalue;
};
MyClass*P,my;p=&my;
則對下列語句序列正確的描述是( )。
A.語句p=&my;是把對象my賦值給指針變量P
B.語句MyClass*P,my;會調(diào)用兩次類MyClass的構造函數(shù)
C.對語句*P.SetVariable(5)的調(diào)用是正確的
D.語句P->SetVariable(5)與語句my.SetVariable(5)等價
8.下面關于break語句的描述中,不正確的是( )。
A.break可以用于循環(huán)體內(nèi)
B.break語句可以在for循環(huán)語句中出現(xiàn)多次
C.break語句可以在switch語句中出現(xiàn)多次
D.break語句可用于if條件判斷語句內(nèi)
9.如果表達式-x/y中的“--”和“/”是作為友元函數(shù)重載的運算符,采用運算符函數(shù)調(diào)用格式,該表達式還可表示為( )。
A.operator/(x.operator--(),y);
B.operator/(operator--(x),y);
C.X.operator--().operator/(y);
D.y.operator/(operator--(x));
10.已知類A有公用數(shù)據(jù)成員a,并重載了=運算符,且有Aobj2;constA*ptr=newA;,則下列語句錯誤的是( )。
A.ptr->a=100;
B.ptr=&obj2;
C.ptr++;
D.obj2=*ptr;
參考答案:
1.C!窘馕觥亢瘮(shù)類型決定了函數(shù)返回值的類型。函數(shù)值返回類型可以由編譯器自動完成類型轉換。在函數(shù)有返回值的調(diào)用中,編譯器將return后面的表達式的類型強制轉換為該函數(shù)定義時指定的返回值類型。
2.D!窘馕觥勘绢}主要考查C++語言的基本語法,選項A中應該為m>n‖m 13.D。【解析】使用ifstream流類定義流對象并打開磁盤文件時,文件沒有默認的打開方式。其中ios::in是為輸入而打開;iso::out是為輸出而打開。
4.C!窘馕觥繕嬙旌瘮(shù)包括默認構造函數(shù)和拷貝構造函數(shù)等,析構函數(shù)和構造函數(shù)一樣屬于類的特殊的成員函數(shù)。而友元函數(shù)則是為了增加類的訪問靈活性而允許其他類的成員函數(shù)或全局函數(shù)訪問類的內(nèi)部變量或成員函數(shù)的一種機制,其缺點是破壞了類的封裝性。
5.A!窘馕觥勘绢}考查的是字符數(shù)組的初始化。選項B中用三個元素初始化大小為2的數(shù)組,越界了;選項C中應該是2行3列的數(shù)組,題中使用3行2列初始化;選項D中數(shù)組應用方括號。
6.B。【解析】聲明一個函數(shù)模板的格式template<模板形參表聲明>函數(shù)聲明。調(diào)用模板函數(shù)時,如果與模板實參中最后的若干個參數(shù)有關的信息可以從模板函數(shù)的實參中獲得,則相關的模板實參可以省略。
7.D!窘馕觥空Z句p=&my;是把對象my的地址值賦給指針變量P。語句MyClass*P,my;,由于P只是一個指向對象的指針,因此定義指針P不調(diào)用構造函數(shù),所以此語句只調(diào)用一次構造函數(shù)。對成員函數(shù)的引用可以通過兩種形式:指針->成員函數(shù)(形參表)或者對象名.成員函數(shù)名(形參表)。
8.D!窘馕觥勘绢}考查break語句的使用。break可以結束switch語句和for循環(huán)語旬,但是不能使用在條件判斷語句內(nèi)。
9.B!窘馕觥勘绢}考核運算符的重載。假定已經(jīng)作為某個類的成員函數(shù)重載了二元運算符+,且c1、c2都是該類的對象,則c1.operator+(c2)與c1+c2含義相同。如果+作為該類的非成員函數(shù)重載,則operator+(c1,c2)與c1+c2含義相同。同理,運算符“/”作為友元函數(shù)重載,則(--x)/y與表達式operator/((…x),y)相同。前綴運算符“--”作為友元函數(shù)重載,則--x與operator--(x)相同,所以組合起來是operator/(operator--(x),y);,即B選項。
10.A!窘馕觥勘绢}考查const修飾符的作用。注意,const位置不同,其修飾的部分也是不同的。本題中const修飾的是ptr所指的對象本身,所以,ptr可以重新指向新的對象,而ptr->a則無法被更新。
微信搜索"考試吧"了解更多考試資訊、下載備考資料
相關推薦:
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |