




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、一、單選題1、關(guān)于面向?qū)ο蟮某绦蛟O(shè)計(jì)方法,下列說法正確的是_。A:封裝性指的是將不同類型的相關(guān)數(shù)據(jù)組合在一起,作為一個(gè)整體進(jìn)行處理 B:多態(tài)性指的是對(duì)象的狀態(tài)會(huì)根據(jù)運(yùn)行時(shí)要求自動(dòng)變化 C:基類的私有成員在派生類的對(duì)象中不可訪問,也不占內(nèi)存空間 D:在面向?qū)ο蟮某绦蛟O(shè)計(jì)中,結(jié)構(gòu)化程序設(shè)計(jì)方法仍有著重要作用答案:D 封裝性是指將數(shù)據(jù)和算法捆綁成一個(gè)整體,這個(gè)整體就是對(duì)象,描述對(duì)象的數(shù)據(jù)被封裝在其內(nèi)部;多態(tài)性是指當(dāng)多種事物繼承自一種事物時(shí),同一種操作在它們之間表現(xiàn)出不同的行為;基類的私有成員對(duì)派生類來說是不可訪問的,因此在派生類中直接引用基類的私有變量成員是不允許的,可以通過基類的公用成員函數(shù)來引用
2、基類的私有變量成員;C+是一種優(yōu)秀的高級(jí)程序設(shè)計(jì)語言,它是以C語言為基礎(chǔ)而逐漸發(fā)展起來的。C+語言既保留了傳統(tǒng)的結(jié)構(gòu)化程序設(shè)計(jì)方法,又對(duì)流行的面向?qū)ο蟪绦蛟O(shè)計(jì)方法提供了完整的支持。知識(shí)點(diǎn):C+部分/C+語言概述/掌握C+程序的基本框架2、判斷字符型變量ch是否為大寫英文字母,應(yīng)使用表達(dá)式_。 A:ch=A&ch=Z B:ch=Z C:A=ch=A&chn;switch(n) case 1: case 2:cout1; case 3: case 4:cout2;break; default:cout3;時(shí),若鍵盤輸入1,則屏幕顯示_。 A:1 B:2 C:3 D:12答案:D switch語句又
3、稱為開關(guān)語句,它也是一種選擇語句。switch語句的功能是根據(jù)給定表達(dá)式的不同取值來決定從多個(gè)語句序列中的哪里開始執(zhí)行。 break語句又稱為跳出語句。break語句只能用在switch語句和循環(huán)語句中。在switch語句中,break用來使執(zhí)行流程跳出switch語句,而繼續(xù)執(zhí)行switch后面的語句。在循環(huán)語句中,break用來使執(zhí)行流程無條件地跳出本層循環(huán)。知識(shí)點(diǎn):C+部分/C+的基本語句/用switch語句實(shí)現(xiàn)多分支選擇結(jié)構(gòu)5、下列程序的輸出結(jié)果是_。#includeusing namespace std;int main()char a=Hello,World;char *ptr=a
4、;while(*ptr) if(*ptr=a&*ptr=z) coutchar(*ptr+A-a); else cout*ptr; ptr+;return 0; A:HELLO,WORLD B:Hello,World C:hELLO,wORLD D:hello,world答案:A 此程序段的功能是將字符串中的小寫字母轉(zhuǎn)換為大寫字母并將其輸出。知識(shí)點(diǎn):C+部分/C+的基本語句/用if語句實(shí)現(xiàn)分支結(jié)構(gòu)6、已知:int m=10;在下列定義引用的語句中,正確的是_。 A:int &x=m; B:int y=&m; C:int &z; D:int &t=&m;答案:A 本題主要考查了對(duì)引用及地址(&)
5、的理解,引用實(shí)際上就是別名,它與被引用變量擁有同一個(gè)地址空間,對(duì)于選項(xiàng)A而言,其操作實(shí)際上就是為m賦于一個(gè)別名x,因此選項(xiàng)A是對(duì)的。對(duì)于選項(xiàng)B,&m表示m的地址,而y是一個(gè)整型變量,在C+中不能從地址值隱式轉(zhuǎn)換為整型值,故選項(xiàng)B是錯(cuò)的。對(duì)于選項(xiàng)C,引用必須要用被引用的對(duì)象,即引用必須要初始化;選項(xiàng)D中t是一個(gè)整型應(yīng)用,而其被引用的對(duì)象卻是m的地址,存在著與選項(xiàng)B類似的錯(cuò)誤,因此選項(xiàng)D也是錯(cuò)的。知識(shí)點(diǎn):C+部分/數(shù)據(jù)類型、表達(dá)式和基本運(yùn)算/掌握C+運(yùn)算符的種類、運(yùn)算優(yōu)先級(jí)和結(jié)合性7、下列函數(shù)原型聲明中錯(cuò)誤的是_。 A:void Fun(int x=0,int y=0); B:void Fun(i
6、nt x,int y); C:void Fun(int x,int y=0); D:void Fun(int x=0,int y);答案:D 在C+中,可以為參數(shù)指定默認(rèn)值,在函數(shù)調(diào)用時(shí)沒有指定與形參相對(duì)應(yīng)的實(shí)參時(shí)就自動(dòng)使用默認(rèn)值。默認(rèn)參數(shù)可以簡(jiǎn)化復(fù)雜函數(shù)的調(diào)用。 默認(rèn)參數(shù)通常在函數(shù)名第一次出現(xiàn)在程序中的時(shí)候,如在函數(shù)原型中,指定默認(rèn)參數(shù)值。指定默認(rèn)參數(shù)的方式從語法上看與變量初始化相似。例如:void myfunc(int x=0,int y=1); 如果一個(gè)函數(shù)中有多個(gè)參數(shù),則默認(rèn)參數(shù)應(yīng)從右至左逐個(gè)定義。知識(shí)點(diǎn):C+部分/掌握函數(shù)的有關(guān)使用/函數(shù)的定義方法和調(diào)用方法8、已知程序中已經(jīng)定義了函
7、數(shù)test,其原型是int test(int,int,int);,則下列重載形式中正確的是_。 A:char test(int,int,int) B:double test(int,int,double) C:int test(int,int,int=0); D:float test(int,int,float=);答案:B 在對(duì)函數(shù)進(jìn)行重載時(shí),不允許為其指定缺省參數(shù),故C、D是錯(cuò)的,同時(shí),對(duì)于重載的函數(shù)原型間不允許有類型完全相同的參數(shù)列表,故A是錯(cuò)的,對(duì)于返回類型,在重載時(shí)沒有特別的要求。知識(shí)點(diǎn):C+部分/掌握函數(shù)的有關(guān)使用/函數(shù)重載9、有以下程序#includeint i=0;void f
8、un() static int i=1; std:couti+,;std:couti,;int main()fun();fun();return 0;程序執(zhí)行后的輸出結(jié)果是_。 A:1,2,1,2, B:1,2,2,3, C:2,0,3,0, D:1,0,2,0,答案:D 本題主要考查了static型的變量,在C+中可以為函數(shù)或類指定static型的變量,如果將一個(gè)變量指定為static型,則該變量在內(nèi)存中僅有一個(gè)副本,同時(shí)在函數(shù)或類執(zhí)行完成后空間不會(huì)被釋放,以前的值將會(huì)被保留。同時(shí)還考查了C+中變量作用域的問題,在C+中如果要將一個(gè)變量限定在指定的范圍內(nèi),可以將該作用域用包含起來,同時(shí)可在函
9、數(shù)的外部指定全局變量,該變量的作用范圍是從當(dāng)前位置開始到程序結(jié)束。對(duì)于static int i=1;中的i,初始值為1,在調(diào)用std:couti+,后,將輸出1,,然后自加1,對(duì)于第二句std:couti,,該i所代表的應(yīng)該是全局變量i,故輸出0,。在第二次執(zhí)行fun()時(shí),由于第一i為static型變量,其值是保留的,故輸出2,,對(duì)于第二個(gè)i則輸出0,。知識(shí)點(diǎn):C+部分/掌握函數(shù)的有關(guān)使用/變量的作用域、生存周期和存儲(chǔ)類別10、已知函數(shù)f的原型是:void f(int *a,long &b);,變量v1、v2的定義是:int v1;long v2;,正確的調(diào)用語句是_。 A:f(v1,&v2
10、); B:f(v1,v2); C:f(&v1,v2); D:f(&v1,&v2);答案:C 對(duì)于函數(shù)f而言,其第一個(gè)參數(shù)為整型指針,第二個(gè)參數(shù)為一引用(實(shí)際上就是按地址傳遞參數(shù)),該引用是一長整型的引用。 對(duì)于選項(xiàng)A、B,實(shí)參變量 v1為整型,而所要傳遞的對(duì)應(yīng)的形參變量a是指針型,它接受的是地址,若將實(shí)參變量v1改為&v1,那么這一傳遞就是正確的;對(duì)于選項(xiàng)A、D,&v2為一地址,傳遞給整型引用,也將導(dǎo)致出錯(cuò)。知識(shí)點(diǎn):C+部分/掌握函數(shù)的有關(guān)使用/函數(shù)的定義方法和調(diào)用方法11、有以下類定義class MyClasspublic:MyClass()cout1;則執(zhí)行語句MyClass a,b2,*
11、p2;后,程序的輸出結(jié)果是_。 A:11 B:111 C:1111 D:11111答案:B class MyClass定義了一個(gè)類,其中MyClass()cout1;為其的構(gòu)造函數(shù),當(dāng)程序創(chuàng)建類MyClass的實(shí)例時(shí),該函數(shù)將會(huì)被調(diào)用,在執(zhí)行MyClass a,b2,*p2;時(shí),一共創(chuàng)建了3個(gè)這樣的實(shí)例,故一共執(zhí)行構(gòu)造函數(shù)3次,對(duì)于變量p,則是聲明了一個(gè)指針數(shù)組,該數(shù)組中的元素是指向類MyClass實(shí)例的指針,本身并沒有創(chuàng)建類的實(shí)例。知識(shí)點(diǎn):C+部分/熟練掌握類與對(duì)象的相關(guān)知識(shí)/類的定義方式、數(shù)據(jù)成員、成員函數(shù)及訪問權(quán)限13、關(guān)于動(dòng)態(tài)存儲(chǔ)分配,下列說法正確的是_。 A:new和delete是C
12、+語言中專門用于動(dòng)態(tài)內(nèi)存分配和釋放的函數(shù) B:動(dòng)態(tài)分配的內(nèi)存空間也可以被初始化 C:當(dāng)系統(tǒng)內(nèi)存不夠時(shí),會(huì)自動(dòng)回收不再使用的內(nèi)存單元,因此程序中不必用delete 釋放內(nèi)存空間 D:當(dāng)動(dòng)態(tài)分配內(nèi)存失敗時(shí),系統(tǒng)會(huì)立刻崩潰,因此一定要慎用new答案:B new和deleted在C+中用來申請(qǐng)與釋放內(nèi)存的運(yùn)算,不是函數(shù),故選項(xiàng)A錯(cuò)。動(dòng)態(tài)內(nèi)存分配時(shí)是可以對(duì)其進(jìn)行初始化的,如對(duì)類的初始化。在C+中,沒有垃圾回收裝置,系統(tǒng)本身不會(huì)自動(dòng)回收內(nèi)存,選項(xiàng)C也錯(cuò)。由于采用了new操作分配內(nèi)存,在內(nèi)存分配失敗時(shí),產(chǎn)生一個(gè)NULL指針,不會(huì)導(dǎo)致系統(tǒng)的崩潰,因此建議使用new操作,故選項(xiàng)D錯(cuò)。知識(shí)點(diǎn):C+部分/數(shù)組、指針
13、與引用/動(dòng)態(tài)存儲(chǔ)分配14、有以下程序#includeusing namespace std;class MyClasspublic:MyClass(int n)number=n;/ 拷貝構(gòu)造函數(shù)MyClass(MyClass& other)number=other.number;MyClass() private: int number;MyClass fun(MyClass p) MyClass temp(p); return temp;int main() MyClass obj1(10),obj2(0); MyClass obj3(obj1); obj2=fun(obj3); retur
14、n 0;程序執(zhí)行時(shí),MyClass類的拷貝構(gòu)造函數(shù)被調(diào)用的次數(shù)是_。 A:5 B:4 C:3 D:2答案:B obj1(10)將執(zhí)行一次構(gòu)造函數(shù),obj2(0)也將執(zhí)行一次構(gòu)造函數(shù);obj3(obj1)將以obj1作為參數(shù)執(zhí)行一次構(gòu)造函數(shù); fun(obj3)中的temp(p)也將執(zhí)行一次構(gòu)造函數(shù),而fun本身是按值傳遞參數(shù)的,形參在fun函數(shù)內(nèi)也要分配獨(dú)立的空間,故也要執(zhí)行一次構(gòu)造函數(shù),對(duì)于其返回結(jié)果也是MyClass類型的,同樣需要執(zhí)行一次構(gòu)造函數(shù),故一共要執(zhí)行4次。知識(shí)點(diǎn):C+部分/熟練掌握類與對(duì)象的相關(guān)知識(shí)/構(gòu)造函數(shù)與析構(gòu)函數(shù)15、在公有派生的情況下,派生類中定義的成員函數(shù)只能訪問原基
15、類的_。 A:公有成員和私有成員 B:私有成員和保護(hù)成員 C:公有成員和保護(hù)成員 D:私有成員、保護(hù)成員和公有成員答案:C 在一個(gè)派生類中,其成員由兩部分構(gòu)成:一部分是從基類繼承得到的,另一部分是自己定義的新成員,所有這些成員仍然分為公有、私有和保護(hù)三種訪問屬性。其中,從基類繼承下來的全部成員構(gòu)成派生類的基類部分,這部分的私有成員是派生類不能直接訪問的,公有成員和保護(hù)成員則是派生類可以直接訪問的,但是它們?cè)谂缮愔械脑L問屬性將隨著派生類對(duì)基類的繼承方式而改變。知識(shí)點(diǎn):C+部分/掌握類的繼承與派生知識(shí)/派生類的定義和訪問權(quán)限16、在C+中用來實(shí)現(xiàn)運(yùn)行時(shí)多態(tài)性的是_。 A:重載函數(shù) B:析構(gòu)函數(shù)
16、C:構(gòu)造函數(shù) D:虛函數(shù)答案:D 構(gòu)造函數(shù)是類在創(chuàng)建實(shí)例時(shí)自動(dòng)執(zhí)行的函數(shù),它不能實(shí)現(xiàn)運(yùn)行時(shí)多態(tài);析構(gòu)函數(shù)是類在銷毀其實(shí)例時(shí)創(chuàng)建的,也不能實(shí)現(xiàn)運(yùn)行時(shí)多態(tài),重載函數(shù)能夠使相同的的功能具有統(tǒng)一的接口,但可以有不同的參數(shù)。虛函數(shù)可 知識(shí)點(diǎn):C+部分/了解多態(tài)性概念/虛函數(shù)機(jī)制的要點(diǎn)_17、一個(gè)類可以同時(shí)繼承多個(gè)類,稱為多繼承。下列關(guān)于多繼承和虛基類的表述中,錯(cuò)誤的是_。 A:每個(gè)派生類的構(gòu)造函數(shù)都要為虛基類構(gòu)造函數(shù)提供實(shí)參 B:多繼承時(shí)有可能出現(xiàn)對(duì)基類成員訪問的二義性問題 C:使用虛基類可以解決二義性問題并實(shí)現(xiàn)運(yùn)行時(shí)的多態(tài)性 D:建立最遠(yuǎn)派生類對(duì)象時(shí),虛基類的構(gòu)造函數(shù)會(huì)首先被調(diào)用答案:C 虛基類的構(gòu)造
17、函數(shù)將在其派生類創(chuàng)建實(shí)例時(shí)被執(zhí)行,在執(zhí)行時(shí),派生類必須為虛基類的構(gòu)造函數(shù)提供實(shí)參。在多重繼承中,如果通過兩條以上的路徑對(duì)同一基類實(shí)行繼承,這樣,在派生類中將有多個(gè)基類的副本,從而產(chǎn)生二義性。在采用虛基類時(shí),其成員將僅存唯一的副本,這樣就可以解決二義性問題,但不能夠?qū)崿F(xiàn)運(yùn)行時(shí)多態(tài),可通過抽象類或虛擬函數(shù)來實(shí)現(xiàn),虛基類的構(gòu)造函數(shù)將會(huì)首先被執(zhí)行。知識(shí)點(diǎn):C+部分/掌握類的繼承與派生知識(shí)/虛基類18、在一個(gè)類體的下列聲明中,正確的純虛函數(shù)聲明是_。 A:virtual void vf()=0; B:void vf(int)=0; C:virtual int vf(int); D:virtual voi
18、d vf(int)答案:A 本題考查了純虛函數(shù)的定義,在C+中要定義一個(gè)函數(shù)為虛函數(shù),可在函數(shù)定義前加上virtual關(guān)鍵字,如果要定義一個(gè)函數(shù)為純虛函數(shù),只要在函數(shù)原型后加上=0就可以了。對(duì)于純虛函數(shù),必須要在其派生類中實(shí)現(xiàn),因此對(duì)于一個(gè)擁有純虛函數(shù)的類,實(shí)質(zhì)上就是一個(gè)抽象類。對(duì)于這種類,不能為其創(chuàng)建實(shí)例。知識(shí)點(diǎn):C+部分/了解多態(tài)性概念/純虛函數(shù)與抽象基類、虛函數(shù)19、在下面的運(yùn)算符重載函數(shù)的原型中,錯(cuò)誤的是_。 A:Volume operator-(double,double); B:double Volume:operator-(double); C:Volume Volume:ope
19、rator-(Volume); D:Volume operator-(Volume,Volume);答案:A 本題主要考查了運(yùn)算符的重載。對(duì)于運(yùn)算符的重載,通常有兩種形式。1、操作結(jié)果 operator 運(yùn)算符(操作數(shù)1,操作數(shù)2)2、操作結(jié)果 類:operator 運(yùn)算符(操作數(shù)) 對(duì)于上述選項(xiàng)中,B、C為第二種類型,A、D為第一種類型,在第一種類型中,兩個(gè)操作數(shù)必須至少有一個(gè)自定義類,對(duì)選項(xiàng)A而言,其兩個(gè)操作數(shù)均為double型數(shù)據(jù),因此選項(xiàng)A是錯(cuò)誤的運(yùn)算符重載。知識(shí)點(diǎn):C+部分/了解多態(tài)性概念/了解運(yùn)算符重載20、下列是模板聲明的開始部分,其中正確的是_。 A:template B:te
20、mplate C:template D:template答案:C 本題主要考查了模板的定義,在C+中可以在定義類時(shí)不指定具體的數(shù)據(jù)類型,而在編譯時(shí)進(jìn)行前期綁定,對(duì)于多參數(shù)的模板,在參數(shù)間用,隔開,如果模板參數(shù)為一個(gè)類,在模板參數(shù)前面必須加上class關(guān)鍵字。 知識(shí)點(diǎn):C+部分/模板/簡(jiǎn)單了解函數(shù)模板的定義和使用方式21、執(zhí)行語句序列ofstream outfile(DATA.DAT);if()coutOK;else cout是一個(gè)_。 A:用于輸出操作的非成員函數(shù) B:用于輸入操作的非成員函數(shù) C:用于輸出操作的成員函數(shù) D:用于輸入操作的成員函數(shù)答案:B C+流的輸入運(yùn)算符和輸出運(yùn)算符或聲明
21、為友元函數(shù)。 知識(shí)點(diǎn):C+部分/輸入輸出流/掌握C+流的概念23、有以下類定義class Pointpublic: Point(int x=0,int y=0)_x=x;_y=y; void Move(int xOff,int yOff) _x+=xOff;_y+=yOff; void Print() const cout(_x,_y)endl; private: int _x,_y;下列語句中會(huì)發(fā)生編譯錯(cuò)誤的是_。 A:Point pt;pt.Print(); B:const Point pt;pt.Print() C:Point pt;pt.Move(1,2); D:const Point
22、 pt;pt.Move(1,2);答案:D 本題主要考查了const關(guān)鍵字的使用??梢栽陬愋突蝾惷凹由蟘onst來聲明一個(gè)在運(yùn)行時(shí)不可改變的對(duì)象或變量。如果聲明了一個(gè)常量對(duì)象,則其內(nèi)部成員均不可改變,在編譯時(shí)會(huì)檢查其對(duì)應(yīng)類的成員變量是否為左值,如果是,則會(huì)出現(xiàn)錯(cuò)誤。對(duì)于B而言,由于在對(duì)象pt中的print方法中沒有發(fā)現(xiàn)存在左值成員變量,故在編譯時(shí)不會(huì)出錯(cuò)。知識(shí)點(diǎn):C+部分/熟練掌握類與對(duì)象的相關(guān)知識(shí)/類的定義方式、數(shù)據(jù)成員、成員函數(shù)及訪問權(quán)限24、有以下類定義class MyClassprivate:int id;char gender;char *phone;public:MyClass(
23、):id(0),gender(# ),phone(NULL)MyClass(int no,char ge=# ,char *ph=NULL)id=no;gender=ge;phone=ph;下列類對(duì)象定義語句中錯(cuò)誤的是_。 A:MyClass myObj; B: C:MyClass myObj(12,m); D:MyClass myObj(12);答案:B 對(duì)于A,由于在創(chuàng)建MyClass的實(shí)例myObj時(shí),沒有參數(shù),所以其調(diào)用了第一個(gè)構(gòu)造函數(shù)。對(duì)于B,由于有兩個(gè)參數(shù),故其調(diào)用了第二個(gè)構(gòu)造函數(shù),第二個(gè)構(gòu)造函數(shù)有兩個(gè)缺省參數(shù),在調(diào)用時(shí),實(shí)參會(huì)按從左到右的順序依次傳給形參,所以第二個(gè)參數(shù)會(huì)傳遞給形
24、參ge,而在原型中g(shù)e為字符型,實(shí)參為指向字符的指針,故在編譯時(shí)會(huì)出現(xiàn)錯(cuò)誤。C與D都能夠正確的實(shí)現(xiàn)參數(shù)的傳遞。知識(shí)點(diǎn):C+部分/熟練掌握類與對(duì)象的相關(guān)知識(shí)/對(duì)象和對(duì)象指針的定義與使用25、有以下程序#includeusing namespace std;class Complexpublic:Complex(double r=0,double i=0):re(r),im(i)double real() const return re; double imag() const return im; Complex operator+(Complex c)const return Complex(
25、re+c.re,im+c.im); private:double re,im;int main()Complex a=Complex(1,1)+Complex(5);couta.real()+a.imag()iendl;return 0;程序執(zhí)行后的輸出結(jié)果是_。 A:6+6i B:6+1i C:1+6i D:1+1i答案:B 本題定義了一個(gè)復(fù)數(shù)類,并在該類上重載了+運(yùn)算符。在main函數(shù)中,定義了一個(gè)復(fù)數(shù)類a,其值為兩個(gè)復(fù)數(shù)1+i與5的和。在復(fù)數(shù)類中,定義了real與imag方法,分別用來取出復(fù)數(shù)的實(shí)部與虛部。知識(shí)點(diǎn):C+部分/掌握類的繼承與派生知識(shí)/基類指針與派生類指針的使用26、關(guān)于C+
26、的特點(diǎn)下列說法不正確的是_。 A:C+是以C語言為基礎(chǔ)逐漸發(fā)展演變而成的 B:C+是一種面向?qū)ο蟮某绦蛟O(shè)計(jì)語言 C:C+是一種低級(jí)語言 D:C+是程序員和軟件開發(fā)者在實(shí)踐中創(chuàng)造的答案:C 本題考查的是c+的一些基本概念。 c+是一種面向?qū)ο蟮母呒?jí)語言,是從c語言發(fā)展演變過來的,是程序員在實(shí)際開發(fā)系統(tǒng)的工作中創(chuàng)造的。低級(jí)語言包括匯編語言和機(jī)器語言。知識(shí)點(diǎn):C+部分/C+語言概述/了解C+語言的詞匯27、關(guān)于字符常量的寫法,錯(cuò)誤的是_。 A:/ B:0 C:a D:a答案:D 本題考查的是字符常量的表示方法。 字符常量是以單引號(hào)作為起止符號(hào),中間有一個(gè)或者若干個(gè)字符。例如a,b,而x6E,n等單引
27、號(hào)內(nèi)有多個(gè)字符的表示轉(zhuǎn)定義字符。雙引號(hào)括起來的字符表示字符串常量。知識(shí)點(diǎn):C+部分/數(shù)據(jù)類型、表達(dá)式和基本運(yùn)算/掌握C+數(shù)據(jù)類型及其定義方法28、對(duì)于表達(dá)式bool x=5,int a=x=5,變量a的值為_。 A:0 B:1 C:5 D:false答案:A 本題考查的是運(yùn)算符的優(yōu)先級(jí)和變量之間的相互賦值。 如果對(duì)bool類型的變量賦予其一個(gè)非0的值。其值為true。而值為true的一個(gè)bool變量當(dāng)其和int類型的變量相互賦值時(shí),其值為1,所以x=5返回一個(gè)0值。知識(shí)點(diǎn):C+部分/數(shù)據(jù)類型、表達(dá)式和基本運(yùn)算/掌握C+運(yùn)算符的種類、運(yùn)算優(yōu)先級(jí)和結(jié)合性29、執(zhí)行下列語句:#includeusin
28、g namespace std;int main()int a=3;if(a=5)couta+endl;elsecoutaendl;return 0;程序的輸出是_。 A:3 B:4 C:5 D:6答案:C 本題考查的是if-else結(jié)構(gòu)和=運(yùn)算符與=運(yùn)算符的區(qū)別。 if條件語句1 else語句2,語句的執(zhí)行過程是:首先判斷條件是否為真(不為0),如果為真則執(zhí)行語句1,否則執(zhí)行語句2。本題的條件是a=5,意思是把5賦予變量a,它將a置5且返回一個(gè)真值。知識(shí)點(diǎn):C+部分/C+的基本語句/用if語句實(shí)現(xiàn)分支結(jié)構(gòu)30、下列for語句的循環(huán)次數(shù)為_。for(int i=0,x=0;!x&i=5;i+)
29、; A:0 B:5 C:6 D:無窮次答案:C 本題考查的是for語句的結(jié)構(gòu)和邏輯運(yùn)算符。 for語句的語法格式如下:for(表達(dá)式1;表達(dá)式2;表達(dá)式3)語句塊。其中表達(dá)式1是for循環(huán)的初始化部分,一般用來設(shè)置循環(huán)變量的初始值;表達(dá)式2是for循環(huán)的條件部分,用來判斷循環(huán)能否繼續(xù)進(jìn)行的條件;表達(dá)式3是for循環(huán)的增量部分,一般用來修改循環(huán)變量的值。語句塊為for循環(huán)的循環(huán)體,它是要被重復(fù)執(zhí)行的代碼。& 為邏輯運(yùn)算符,只有當(dāng)其兩邊的表達(dá)式都為真時(shí)它才返回一個(gè)真值。知識(shí)點(diǎn):C+部分/C+的基本語句/用for語句實(shí)現(xiàn)循環(huán)結(jié)構(gòu)31、關(guān)于break語句的描述不正確的是_。 A:break語句可用在循
30、環(huán)體中,它將是執(zhí)行的流程跳出本層循環(huán)。 B:break語句可用在switch語句中,它使執(zhí)行的流程跳出當(dāng)前switch語句。 C:break語句可用在if語句中,它可使執(zhí)行的流程跳出當(dāng)前的if語句。 D:break語句在一層循環(huán)體中可出現(xiàn)多次。答案:C 本題考查的是break語句的基本概念。 break語句只能用在switch語句和循環(huán)語句中。在switch語句中,break用來使執(zhí)行流程跳出switch語句,而繼續(xù)執(zhí)行switch后面的語句。在循環(huán)語句中,break用來使執(zhí)行流程無條件跳出本層循環(huán)。常與if語句結(jié)合使用,意思當(dāng)條件滿足跳出循環(huán)。但不是跳出當(dāng)前if語句的意思。知識(shí)點(diǎn):C+部分/
31、C+的基本語句/轉(zhuǎn)向語句(goto,continue,break和return)32、將數(shù)組int a4=1,2,3,4全部輸出,下列語句正確的是_。 A:couta; B:couta4; C:for(int i=0;i=4;i+)coutai; D:for(int i=0;i4;i+)coutai;答案:D 本題考查的是數(shù)組的輸出操作。 在C+中數(shù)組的下標(biāo)是從0開始的,最大的下標(biāo)比數(shù)組元素個(gè)數(shù)少1。不能將數(shù)值數(shù)組做為一個(gè)整體輸出,要對(duì)其進(jìn)行輸出必需通過循環(huán)語句逐個(gè)輸出。知識(shí)點(diǎn):C+部分/數(shù)組、指針與引用/掌握數(shù)組的定義、初始化和訪問33、關(guān)于指針,下列說法錯(cuò)誤的是_。 A:指針中存放的實(shí)際上
32、是內(nèi)存單元的地址 B:指針根據(jù)其所指向變量的類型的不同,其所占用內(nèi)存大小也不同 C:可以在指針定義的同時(shí)對(duì)其進(jìn)行初始化 D:相同類型的指針之間可以相互賦值答案:B 本題考查的是指針的一些基本概念。 指針是一種可以用來存放其它變量地址的特殊數(shù)據(jù)類型。其聲明的形式為:類型*變量名,例如 int *pi;char *pc;可以在其剛聲明的時(shí)候就對(duì)其初始化。由于其存放的是內(nèi)存單元的地址,所以其大小一般都是4個(gè)字節(jié)。 知識(shí)點(diǎn):C+部分/數(shù)組、指針與引用/指針與指針變量的概念,指針與地址運(yùn)算符,指針與數(shù)組34、執(zhí)行下列語句后,屏幕的輸出結(jié)果是_。#includeusing namespace std;in
33、t main()int a=5;int *pa=&a;int &b=a;b+;cout(*pa)+endl;return 0; A:5 B:6 C:7 D:8答案:B 本題主要考查指針和引用的使用。 引用是個(gè)別名,建立時(shí)須用另一個(gè)數(shù)據(jù)對(duì)象的名字進(jìn)行初始化,以確定該引用所代表的數(shù)據(jù)對(duì)象。此后對(duì)引用的任何操作實(shí)際上就是代表的數(shù)據(jù)對(duì)象的操作。知識(shí)點(diǎn):C+部分/數(shù)組、指針與引用/指針與指針變量的概念,指針與地址運(yùn)算符,指針與數(shù)組35、執(zhí)行下列程序后,屏幕的輸出是_。#includeusing namespace std;void swap(int a,int b)int tem=a;a=b;b=tem
34、;couta=a,b=bendl;int main()int a=3,b=2;swap(a,b);couta=a,b=bendl;return 0; A:a=2,b=3a=3,b=2 B:a=3,b=2a=3,b=2 C:a=2,b=3a=2,b=3 D:a=3,b=2a=2,b=3答案:A 本題主要考查了函數(shù)的參數(shù)傳遞。 C+中默認(rèn)的參數(shù)傳遞是傳值,是將實(shí)參的副本傳遞給被調(diào)用函數(shù)的形參。在被調(diào)用函數(shù)中對(duì)形參的任何改動(dòng)都不會(huì)影響實(shí)參。知識(shí)點(diǎn):C+部分/掌握函數(shù)的有關(guān)使用/形式參數(shù)與實(shí)在參數(shù),參數(shù)值的傳遞36、執(zhí)行下列程序語句后,屏幕輸出為_。#includeusing namespace st
35、d;int n=5;int main()int n=3;n+;:n+;coutnendl;return 0; A:3 B:4 C:5 D:6答案:B 本題考查的是變量的作用域。 C+中變量有全局變量和局部變量。不在任何函數(shù)之內(nèi)聲明的變量即為全局變量。當(dāng)在一個(gè)函數(shù)中聲明的局部變量與全局變量重名時(shí)。局部變量會(huì)將全局變量屏蔽掉。如果要引用全局變量可以變量名的前面加:。知識(shí)點(diǎn):C+部分/掌握函數(shù)的有關(guān)使用/變量的作用域、生存周期和存儲(chǔ)類別37、關(guān)于類的概念下列說法正確的是_。 A:類和結(jié)構(gòu)體是同一個(gè)概念 B:類的數(shù)據(jù)成員外界都不可訪問 C:類可以沒有顯式的構(gòu)造函數(shù) D:類一定要有顯式的析構(gòu)函數(shù)答案:C
36、 本題考查的是類的一些基本概念。 將數(shù)據(jù)和處理數(shù)據(jù)的函數(shù)封裝在一起就構(gòu)成一個(gè)類。相對(duì)于結(jié)構(gòu)體,類有一些更為先進(jìn)的特性。只有聲明為保護(hù)和私有的數(shù)據(jù)成員外界才是不和直接訪問的。類可以沒有顯式的構(gòu)造和析構(gòu)函數(shù),這時(shí)系統(tǒng)將會(huì)提供一個(gè)默認(rèn)的構(gòu)造函數(shù)或者析構(gòu)函數(shù)。 知識(shí)點(diǎn):C+部分/熟練掌握類與對(duì)象的相關(guān)知識(shí)/類的定義方式、數(shù)據(jù)成員、成員函數(shù)及訪問權(quán)限38、對(duì)于下面的類定義,如果要為其添加一個(gè)析構(gòu)函數(shù),對(duì)于析構(gòu)函數(shù)定義正確的是_。class MyFirstprivate:int a;public:MyFirst(int giva_a=0)a=give_a; A:void MyFirst() B:MyFir
37、st() C:void MyFirst() D:MyFirst void()答案:B 本題考查的是析構(gòu)函數(shù)的定義。 析構(gòu)函數(shù)是類中的一種特殊的成員函數(shù),它用來完成對(duì)象刪除前的一些清理工作。析構(gòu)函數(shù)不指定返回值類型。沒有參數(shù),同時(shí)不能重載。 知識(shí)點(diǎn):C+部分/熟練掌握類與對(duì)象的相關(guān)知識(shí)/構(gòu)造函數(shù)與析構(gòu)函數(shù)39、關(guān)于靜態(tài)數(shù)據(jù)成員說法錯(cuò)誤的是_。 A:靜態(tài)數(shù)據(jù)成員不單獨(dú)屬于任何一個(gè)對(duì)象,是屬于整個(gè)類的 B:在使用之前必需對(duì)靜態(tài)數(shù)據(jù)成員進(jìn)行初始化 C:靜態(tài)數(shù)據(jù)成員的初始化時(shí)前面不加static關(guān)鍵字 D:只有靜態(tài)的成員函數(shù)才能改變靜態(tài)數(shù)據(jù)成員的值答案:D 本題考查了靜態(tài)數(shù)據(jù)成員的概念。 對(duì)于一般的數(shù)據(jù)
38、成員在每一個(gè)對(duì)象中都會(huì)有其副本。而靜態(tài)數(shù)據(jù)成員只有一個(gè)副本,這個(gè)副本被所有的類所共享。對(duì)于所有的成員函數(shù)都可以訪問靜態(tài)數(shù)據(jù)成員。知識(shí)點(diǎn):C+部分/熟練掌握類與對(duì)象的相關(guān)知識(shí)/靜態(tài)數(shù)據(jù)成員與靜態(tài)成員函數(shù)的定義與使用方式40、關(guān)于友元說法錯(cuò)誤的是_。 A:友元函數(shù)可以訪問類中的所有數(shù)據(jù)成員 B:友元函數(shù)必須被聲明在public區(qū) C:友元類的所有成員函數(shù)都是另一個(gè)類友元函數(shù) D:友元函數(shù)不可以在類內(nèi)部被定義答案:B 本題主要考查友元函數(shù)和友元類的一些概念。 友元提供了不同類或?qū)ο蟮某蓡T函數(shù)之間、類的成員函數(shù)與一般函數(shù)之間進(jìn)行數(shù)據(jù)共享的機(jī)制。對(duì)于一個(gè)類可以利用friend將一般函數(shù)、其它類成員函數(shù)或
39、者其它類聲明為友元。友元的聲明可以放在類的任何一個(gè)區(qū)域。但是友元的實(shí)現(xiàn)不可以在類內(nèi)部。知識(shí)點(diǎn):C+部分/熟練掌握類與對(duì)象的相關(guān)知識(shí)/友元函數(shù)和友元類_41、對(duì)于下面聲明的類,對(duì)于所給的幾個(gè)語句,正確的是(假設(shè)所給語句是主函數(shù)中的語句)_。class MyClassprivate:int data;public:MyClass(int g_data)data=g_data;void show()coutdataendl; A:MyClass mfirst; B:MyClass *pm; C:MyClass.data=6; D:MyClass.show();答案:B 本題考查了類的定義和構(gòu)造函數(shù)的
40、調(diào)用。 對(duì)于類,如果沒有為其顯式的聲明構(gòu)造函數(shù)則系統(tǒng)會(huì)為其提供一個(gè)默認(rèn)的構(gòu)造函數(shù)。如果提供了構(gòu)造函數(shù)則會(huì)將系統(tǒng)提供的默認(rèn)的構(gòu)造函數(shù)覆蓋。構(gòu)造函數(shù)調(diào)用時(shí),實(shí)參必須與形參匹配。但是聲明一個(gè)對(duì)象指針的時(shí)候,不是定義一個(gè)對(duì)象,不調(diào)用對(duì)象的構(gòu)造函數(shù)。知識(shí)點(diǎn):C+部分/熟練掌握類與對(duì)象的相關(guān)知識(shí)/類的定義方式、數(shù)據(jù)成員、成員函數(shù)及訪問權(quán)限2、執(zhí)行下列語句后,屏幕的顯示為_。#includeusing namespace std;class Firstprotected:int fir_data;public:First(int g_data=0)fir_data=g_data;void show()cou
41、tfir_dataendl;class Second:public Firstprivate:int sec_data;public:Second(int g_f_data,int g_s_data):First(g_f_data),sec_data(g_s_data)void show()coutfir_data sec_dataendl;int main()Second sec(5,3);sec.show();return 0; A:5 3 B:3 C:5 D:3 5答案:A 本題考查了類的繼承。 類的繼承是新的類從已有的類那里得到已有的特性。派生類除了從基類繼承過來數(shù)據(jù)成員,還可以新增加
42、數(shù)據(jù)成員和成員函數(shù)。對(duì)于基類中已有成員函數(shù),派生類可以通過從定義將其覆蓋掉。本題的Second類的void show()方法就是將其基類的void show()方法覆蓋掉的。知識(shí)點(diǎn):C+部分/掌握類的繼承與派生知識(shí)/繼承基類的數(shù)據(jù)成員與成員函數(shù)43、虛函數(shù)主要是為了實(shí)現(xiàn)類的_。A:封裝性 B:抽象性 C:多態(tài)性 D:繼承性答案:C 本題主要考查多態(tài)的概念。 類的多態(tài)性包括編譯時(shí)多態(tài)和執(zhí)行時(shí)多態(tài)。編譯時(shí)多態(tài)通過函數(shù)重載實(shí)現(xiàn),運(yùn)行時(shí)多態(tài)通過虛函數(shù)實(shí)現(xiàn)。知識(shí)點(diǎn):C+部分/掌握類的繼承與派生知識(shí)/虛基類44、關(guān)于抽象類,下列表述正確的是_。 A:抽象類的成員函數(shù)至少有一個(gè)沒有實(shí)現(xiàn) B:派生類必須實(shí)現(xiàn)作
43、為基類的抽象類中的純虛函數(shù) C:派生類不可能成為抽象類 D:抽象類不能用來定義對(duì)象答案:D 本題考查了抽象類的概念。 擁有純虛函數(shù)的類稱為抽象類。抽象類不能用來定義對(duì)象。如果一個(gè)抽象類的派生類沒有重定義來自基類的某個(gè)純虛函數(shù),則該函數(shù)在派生類中仍是純虛函數(shù),該類仍為抽象類。知識(shí)點(diǎn):C+部分/了解多態(tài)性概念/純虛函數(shù)與抽象基類、虛函數(shù)45、執(zhí)行下列程序語句后,屏幕輸出為_。#includeusing namespace std;class Pointprivate:float x,y;public:Point(int g_x=0,int g_y=0)x=g_x,y=g_y;void show()
44、cout(x,y)* ,:,?:這五個(gè)運(yùn)算符是不能重載的。本題是對(duì)+的重載。 知識(shí)點(diǎn):C+部分/了解多態(tài)性概念/了解運(yùn)算符重載46、有如下模板定義:templateT func(T x,T y)return x*x+y*y;在下列對(duì)func的調(diào)用中不正確的是_。 A:func(3,5) B:func(3,5) C:func(3,5.5) D:func(3,5.5)答案:C 本題考查的是一個(gè)函數(shù)模板。 聲明一個(gè)函數(shù)模板的格式如下:template,模板函數(shù)的調(diào)用是可以省略實(shí)參模板的。但是實(shí)參模板的省略是有條件的。如果從模板函數(shù)實(shí)際參數(shù)列表獲得的信息有矛盾,則不能省略實(shí)際參數(shù)模板。 知識(shí)點(diǎn):C+部
45、分/模板/簡(jiǎn)單了解函數(shù)模板的定義和使用方式47、關(guān)于類模板下列說法不正確的是_。 A:用類模板定義一個(gè)對(duì)象時(shí),不能省略實(shí)際參數(shù) B:類模板只是虛擬類型的參數(shù) C:類模板本身在編譯中不會(huì)生成任何代碼 D:類模板的成員函數(shù)都是模板函數(shù)答案:B 本題考查了類模板的定義。 類模板的聲明格式為template,類模板的成員函數(shù)都是模板函數(shù)。知識(shí)點(diǎn):C+部分/模板/簡(jiǎn)單了解類模板的定義和使用方式48、在進(jìn)行了任何C+流的操作后,都可以用C+流的有關(guān)成員函數(shù)檢測(cè)流的狀態(tài);其中只能用于檢測(cè)輸入操作的函數(shù)名是_。 A:fail() B:eof() C:bad() D:good()答案:B 本題考查了C+中流的函
46、數(shù)。 可以用文件對(duì)象的下列成員函數(shù)來判別文件流的當(dāng)前狀態(tài):good():剛進(jìn)行的操作成功則返回true,否則返回false;fail():與good()相反;bad():如果進(jìn)行了非法操作返回true,否則返回false。eof():進(jìn)行輸入操作時(shí),若達(dá)到文件尾則返回true,否則返回false;知識(shí)點(diǎn):C+部分/輸入輸出流/掌握C+流的概念49、對(duì)于下列語句動(dòng)態(tài)分配的內(nèi)存,其釋放語句正確的是_。int *pa=new 10; A:delete pa0; B:delete pa; C:delete *pa; D:delete pa;答案:D 本題考查的是動(dòng)態(tài)分配空間和釋放。 對(duì)于用new分配的
47、多個(gè)內(nèi)存空間,可以用deletename,將所分配的所有內(nèi)存釋放掉。知識(shí)點(diǎn):C+部分/數(shù)組、指針與引用/動(dòng)態(tài)存儲(chǔ)分配50、C+流中重載了,它是一個(gè)_。 A:用于輸出操作的成員函數(shù) B:用于輸入操作的成員函數(shù) C:用于輸入操作的非成員函數(shù) D:用于輸出操作的非成員函數(shù)答案:C 本題考查了輸入流istream的運(yùn)算符,重載的的功能是從輸入流中提取數(shù)據(jù)賦值給一個(gè)變量。是流類的一個(gè)友元函數(shù)。 知識(shí)點(diǎn):C+部分/輸入輸出流/掌握文件的I/O操作51、關(guān)于C+的特點(diǎn)下列說法不正確的是_。 A:C+是C語言的超集,大多數(shù)C程序在不用修改的情況下就可以在C+的集成環(huán)境下運(yùn)行或調(diào)試 B:C+是面向?qū)ο蟮某绦蛟O(shè)計(jì)
48、語言 C:C+的執(zhí)行效率很高 D:C+中沒有結(jié)構(gòu)化編程的語句答案:D C+的基本概念。 C+是從C語言發(fā)展起來的一種面向?qū)ο蟮母呒?jí)語言,具有了面向?qū)ο蟪绦蛟O(shè)計(jì)語言的幾乎所有特征。但是幾乎每一種面向?qū)ο蟮某绦蛟O(shè)計(jì)語言,都有結(jié)構(gòu)化編程的思想在里面。 知識(shí)點(diǎn):C+部分/C+語言概述/掌握C+程序的基本框架52、下列字符串可以用做C+標(biāo)識(shí)符的是_。 A:_123 B:foobar C:case D:3var答案:A 本題考查的是C+標(biāo)識(shí)符的定義。 標(biāo)識(shí)符是用戶為程序中各種需要命名的元素所起的名字。標(biāo)識(shí)符的組成要符合一定的規(guī)則:(1)以字母或下劃線開頭,由字母、下劃線、數(shù)字組成。(2)區(qū)分大小寫。(3)
49、不能與C+中關(guān)鍵字重名。知識(shí)點(diǎn):C+部分/C+語言概述/了解C+語言的詞匯53、下列十六進(jìn)制常量的寫法中,錯(cuò)誤的是_。 A:0 xaf B:2f0 x C:0 x1b D:0 xAE答案:B 本題考查的是十六進(jìn)制數(shù)在C+中的表示。 對(duì)于十六進(jìn)制數(shù)在C+中的表示,可以在前面加上0 x。知識(shí)點(diǎn):C+部分/數(shù)據(jù)類型、表達(dá)式和基本運(yùn)算/掌握C+數(shù)據(jù)類型及其定義方法54、執(zhí)行下列語句后,輸出的結(jié)果是_。#includeusing namespace std;int main()int a=3,b=5;float c=b/a;coutcendl;return 0; A:1.66666 B:1 C:1.0
50、D:答案:B 本題考查的是基本數(shù)據(jù)之間的運(yùn)算。 C+中兩個(gè)同種類型的變量之間進(jìn)行運(yùn)算,得到的結(jié)果還是同類型的。所以b/a最后得到是1。所以最后屏幕輸出的結(jié)果是1。 知識(shí)點(diǎn):C+部分/數(shù)據(jù)類型、表達(dá)式和基本運(yùn)算/掌握變量的定義與使用方法55、執(zhí)行下列程序后,輸出的結(jié)果是_。float a=1.1234;double b=1.1234;if(a=b)coutequaln;elsecoutnot equaln; A:equal B:not equal C:equal not equal D:not equal equal答案:B 本題考查的是if-else基本語句和浮點(diǎn)數(shù)在計(jì)算機(jī)中的存放。 浮點(diǎn)數(shù)在
51、計(jì)算機(jī)中是不能夠精確存放的,只能存放其近似的值,所以當(dāng)兩個(gè)變量的精度不一樣時(shí),雖然他們的字面量一樣,但是他們?cè)谟?jì)算機(jī)中表現(xiàn)出來是不等的。知識(shí)點(diǎn):C+部分/C+的基本語句/用if語句實(shí)現(xiàn)分支結(jié)構(gòu)56、下列語句將輸出字符*的個(gè)數(shù)為_。int i=100;while(1)i-;if(i=0)break;cout*; A:101 B:100 C:99 D:98答案:C 本題考查的是while循環(huán)語句和break語句。 解題的思路是:i的初始值為100,循環(huán)的條件永遠(yuǎn)為真。但是當(dāng)i為0是循環(huán)就結(jié)束。這樣循環(huán)共進(jìn)行99次,所以最后輸出99個(gè)*; 知識(shí)點(diǎn):C+部分/C+的基本語句/用while語句實(shí)現(xiàn)循環(huán)結(jié)
52、構(gòu)57、執(zhí)行下列語句后,程序的輸出結(jié)果是_。#includeusing namespace std;int main()int n=10;while(n7)n-;coutn,;cout7而循環(huán)體是n-,coutn,; ,所當(dāng)循環(huán)體執(zhí)行時(shí),首先是n-,直到n=7為止,所以最后輸出的結(jié)果是9,8,7。知識(shí)點(diǎn):C+部分/C+的基本語句/用while語句實(shí)現(xiàn)循環(huán)結(jié)構(gòu)58、定義一個(gè)整型數(shù)a的引用,正確的是_。 A:int b=&a; B:int &b=&a; C:int b=a D:int &b=a;答案:D 本題考查的是引用的定義。 引用實(shí)際上是個(gè)別名,建立時(shí)必須用另一個(gè)數(shù)據(jù)對(duì)象初始化,以確定該引用所
53、代表的數(shù)據(jù)對(duì)象。在類型后加&以及引用名來創(chuàng)建一個(gè)引用。 知識(shí)點(diǎn):C+部分/數(shù)組、指針與引用/引用的基本概念,引用的定義與使用59、正確的定義一個(gè)整型數(shù)指針的語句是_。 A:int *pa; B:int &pa; C:int pa*; D:int pa&;答案:A 本題考查的是指針的定義。 指針是用來存放其它變量地址的數(shù)據(jù)類型。定義一個(gè)指針的格式如下:類型 *指針名。知識(shí)點(diǎn):C+部分/數(shù)組、指針與引用/指針與指針變量的概念,指針與地址運(yùn)算符,指針與數(shù)組60、執(zhí)行下列語句后,輸出的結(jié)果是_。#includeusing namespace std;int main()int j;int m32=10
54、,20,30,40,50,60;for(j=0;j2;j+)coutm2-jj ;return 0; A:10 30 B:20 40 C:50 40 D:60 40答案:C 本題考查的是二維數(shù)組的使用。 解題思路是:j的初始值為0所以第一次輸出m20,即50,第二次j變?yōu)?輸出m11,即40。所以最后輸出結(jié)果是50 40。 知識(shí)點(diǎn):C+部分/數(shù)組、指針與引用/掌握數(shù)組的定義、初始化和訪問61、設(shè)有如下程序:#includeiostreamusing namespace std;int main()int *x,*y,z=10;y=&z;x=&y;cout*x+1endl;return 0;以上
55、程序的輸出結(jié)果是_。 A:y的地址 B:z的地址 C:11 D:運(yùn)行錯(cuò)誤答案:C 本題考查的是指針應(yīng)用 解題思路為:x為一個(gè)二級(jí)指針,其存放的是指針變量y的地址,而y存放的又是z的地址。故式子*x相當(dāng)于對(duì)z的引用。所以最后輸出的結(jié)果為11。知識(shí)點(diǎn):C+部分/數(shù)組、指針與引用/指針與指針變量的概念,指針與地址運(yùn)算符,指針與數(shù)組62、執(zhí)行下面程序后,輸出的結(jié)果是_。#includeusing namespace std;char *x=First,Second,Third;void f(char *z)cout*+zendl;int main()char *y;y=x;f(y);return 0;
56、 A:First B:Second C:Third D:S答案:B 本題考查的是字符指針的用法。 解題思路如下:x是一個(gè)指針數(shù)組,當(dāng)將y傳遞給函數(shù)f時(shí),便將x的地址傳遞給f,式子*+z中,+的優(yōu)先級(jí)更高一點(diǎn)。所以執(zhí)行完后,z是指向second的。故最后輸出結(jié)果是Second。知識(shí)點(diǎn):C+部分/數(shù)組、指針與引用/指針與指針變量的概念,指針與地址運(yùn)算符,指針與數(shù)組63、下列函數(shù)原型的聲明語法不正確的是_。 A:int &func(int ,int ); B:int &func(int a=3,int b); C:void func(int &); D:char *func(char ch10);答
57、案:B 本題考查的是函數(shù)的定義。 函數(shù)原型的形式為:返回值類型函數(shù)名(形參列表);其中形參列表的形參名可以省略。對(duì)于函數(shù)有多個(gè)參數(shù),如果提供默認(rèn)的參數(shù)應(yīng)遵循從右至左的順序。知識(shí)點(diǎn):C+部分/掌握函數(shù)的有關(guān)使用/函數(shù)的定義方法和調(diào)用方法64、對(duì)于函數(shù)int &add(int *pa,int b);的重載函數(shù),不正確的是_。 A:int &add(int a,int b); B:float add(int *pa); C:float add(int *pb,int c); D:float add(int c);答案:C 本題考查的是函數(shù)的重載。 函數(shù)重載是用同一個(gè)函數(shù)名在不同的參數(shù)上做不同的事情。
58、對(duì)于僅僅是函數(shù)的返回值不同,其它參數(shù)全部相同,不是重載。如果出現(xiàn)這種情況,會(huì)在編譯產(chǎn)生錯(cuò)誤。知識(shí)點(diǎn):C+部分/掌握函數(shù)的有關(guān)使用/帶有缺省參數(shù)值的函數(shù)65、執(zhí)行下列程序后,輸出結(jié)果是_。#includeusing namespace std;void f(int x)if(x)cout.put(0+x%10);f(x/10);int main()f(11001);return 0; A:11001 B:10001 C:11100 D:10011答案:D 本題考查的是遞歸函數(shù)。 解題的思路是:函數(shù)每次將x%10得到的數(shù)轉(zhuǎn)換成相應(yīng)的字符輸出。直到x為0為止。 知識(shí)點(diǎn):C+部分/掌握函數(shù)的有關(guān)使用/
59、遞歸函數(shù)66、下面程序的輸出結(jié)果是_。#includeusing namespace std;void add()static int a;a+;couta ;int main()for(int i=0;i3;i+)add();return 0; A:1 1 1 B:1 2 3 C:2 2 2 D:3 3 3 答案:B 本題考查的是靜態(tài)變量的用法。 靜態(tài)變量在整個(gè)程序的運(yùn)行過程中,一直占有其分配的空間。每次運(yùn)行的結(jié)果將被保留。知識(shí)點(diǎn):C+部分/掌握函數(shù)的有關(guān)使用/函數(shù)的類型和返回值67、下列說法錯(cuò)誤的是_。 A:構(gòu)造函數(shù)可以設(shè)置默認(rèn)參數(shù) B:構(gòu)造函數(shù)可以在說明類變量時(shí)自動(dòng)執(zhí)行 C:構(gòu)造函數(shù)可以
60、對(duì)靜態(tài)數(shù)據(jù)成員進(jìn)行初始化 D:構(gòu)造函數(shù)可以重載答案:C 本題考查的是類的一些基本概念。 構(gòu)造函數(shù)的作用是在對(duì)象被創(chuàng)建時(shí)利用特定的值構(gòu)造對(duì)象,將對(duì)象初始化為一定的狀態(tài)。構(gòu)造函數(shù)將在對(duì)象被創(chuàng)建的時(shí)候由系統(tǒng)自動(dòng)調(diào)用。缺省構(gòu)造函數(shù)它的參數(shù)表或者為空或者它的所有參數(shù)都具有默認(rèn)值。靜態(tài)數(shù)據(jù)成員不可以在構(gòu)造函數(shù)內(nèi)被初始化。知識(shí)點(diǎn):C+部分/熟練掌握類與對(duì)象的相關(guān)知識(shí)/構(gòu)造函數(shù)與析構(gòu)函數(shù)68、假定MyClass為一個(gè)類,則該類的拷貝構(gòu)造函數(shù)的聲明語句為_。 A:MyClass &(MyClass x) B:MyClass(MyClass x) C:MyClass(MyClass &x) D:Myclass (
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- T-ZJWL 001-2024 大宗商品供應(yīng)鏈金融動(dòng)產(chǎn)質(zhì)押監(jiān)管倉儲(chǔ)服務(wù)規(guī)范
- T-ZNZ 264.3-2024 重金屬中度污染農(nóng)田土壤修復(fù)和安全利用技術(shù)規(guī)范 第3部分:超積累東南景天與芝麻輪作
- 二零二五年度服裝品牌廠家全國代理合作協(xié)議
- 2025年度電影院包場(chǎng)租賃及廣告合作合同
- 二零二五年度金融科技股權(quán)投資合同協(xié)議
- 二零二五年度工傷事故賠償調(diào)解協(xié)議(含傷殘?jiān)u定)
- 二零二五年度全包裝修合同模板含定制家具制作
- 2025年度離職賠償協(xié)議書中的離職員工離職通知及手續(xù)辦理
- 二零二五年度聯(lián)防聯(lián)控疫情防控科研合作合同
- 2025年度線上虛擬購物體驗(yàn)合同書
- 《住院患者身體約束的護(hù)理》團(tuán)體標(biāo)準(zhǔn)解讀課件
- 2024年黑龍江建筑職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)適應(yīng)性測(cè)試題庫全面
- MOOC 跨文化交際通識(shí)通論-揚(yáng)州大學(xué) 中國大學(xué)慕課答案
- 10000中國普通人名大全
- 綠化養(yǎng)護(hù)作業(yè)人員培訓(xùn)方案、綠化養(yǎng)護(hù)應(yīng)急預(yù)案
- 外研版英語(新標(biāo)準(zhǔn))八年級(jí)下冊(cè)教案(全冊(cè))
- 教師聽課評(píng)分表
- 項(xiàng)目章程模板范文
- 泰山產(chǎn)業(yè)領(lǐng)軍人才工程系統(tǒng)
- 輪扣架支模體系材料量計(jì)算
- 主題班會(huì)教案《讀書好讀好書好讀書》班會(huì)方案
評(píng)論
0/150
提交評(píng)論