最新全國計算機等級考試二級c++題庫6共17套_第1頁
最新全國計算機等級考試二級c++題庫6共17套_第2頁
最新全國計算機等級考試二級c++題庫6共17套_第3頁
最新全國計算機等級考試二級c++題庫6共17套_第4頁
最新全國計算機等級考試二級c++題庫6共17套_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第六套1、下列敘述中正確的是。A、棧是先進先出的線性表日隊列是先進后出”的線性表C循環(huán)隊列是非線性結構D有序線性表既可以采用順序存儲結構,也可以采用鏈式存儲結構棧是一種特殊的線性表,這種線性表只能在固定的一端進行插入和刪除操作,允許插入和刪除的一端稱為棧頂,另一端稱為棧底。一個新元素只能從棧頂一端進入,刪除時,只能刪除棧頂?shù)脑?,即剛剛被插入的元素。所以棧又稱后進先出表,所以選項A是錯誤的。隊列可看作是插入在一端進行,刪除在另一端進行的線性表,允許插入的一端稱為隊尾,允許刪除的一端稱為隊頭。在隊列中,只能刪除隊頭元素,隊列的最后一個元素一定是最新入隊的元素。因此隊列又稱先進先出表,所以選項B是

2、錯誤的。循環(huán)隊列是將隊列存儲空間的最后一個位置繞到第一個位置,形成邏輯上的環(huán)狀空間,供隊列循環(huán)使用。它的邏輯結構仍然是線性結構,所以選項湛錯誤的。有序線性表既可以采用順序存儲結構,也可以采用鏈式存儲結構,所以選項或正確的。故本題答案為Do2、將E-R圖轉換為關系模式時,實體和聯(lián)系都可以表示為。A屬性日鍵G關系DX域將E-R圖轉換為關系模式時,實體和聯(lián)系都可以表示成關系,E-R圖中屬性也可以轉換成關系的屬性。實體集也可以轉換成關系。故本題答案為Co3、下面敘述中錯誤的是oA、軟件測試的目的是發(fā)現(xiàn)錯誤并改正錯誤日對被調試的程序進行錯誤定位是程序調試的必要步驟C程序調試通常也稱為DebugDX軟件測

3、試應嚴格執(zhí)行測試計劃,排除測試的隨意性1983年IEEE將軟件測試定義為:使用人工或自動手段來運行或測定某個系統(tǒng)的過程,其目的在于檢驗它是否滿足規(guī)定的需求或是弄清預期結果與實際結果之間的差別。因此選項A的敘述是錯誤的。軟件測試的基本準則為:所有測試都應追溯到需求。嚴格執(zhí)行測試計劃,排除測試的隨意性。充分注意測試中的群集現(xiàn)象。程序員應避免檢查自己的程序。窮舉測試不可能。妥善保存測試計劃、測試用例、出錯統(tǒng)計和最終分析報告,為維護提供方便。因此選項D正確。在對程序進行了成功的測試之后將進入程序調試(通常稱Debug,即排錯)。因此選項C正確。程序調試的任務是診斷和改正程序中的錯誤。程序調試的基本步驟

4、:錯誤定位。修改設計和代碼,以排除錯誤。進行回歸測試,防止引進新的錯誤。因此選項B是正確的。故本題答案為Ao4、下列排序方法中,最壞情況下比較次數(shù)最少的是。A、冒泡排序以簡單選擇排序C直接插入排序D堆排序(1)冒泡排序法:是一種最簡單的交換類排序法,它是通過相鄰數(shù)據(jù)元素的交換逐步將線性表變成有序。假設線性表的長度為n,則在最壞情況下,冒泡排序需要經(jīng)過n/2遍的從前往后的掃描和n/2遍的從后往前的掃描,需要比較的次數(shù)為n(n-1)/2次。(2)簡單插入排序法:在簡單插入排序法中,每一次比較后最多移掉一個逆序,因此,這種排序方法的效率與冒泡排序法相同。在最壞情況下,簡單插入排序需要n(n-1)/2

5、次比較。(3)簡單選擇排序法:對于長度為n的序列,選擇排序需要掃描n-1遍,每一遍掃描均從剩下的子表中選出最小的元素,然后將該最小的元素與子表中的第一個元素進行交換。簡單選擇排序法在最壞情況下需要比較n(n-1)/2次。(4)堆排序法:堆排序的方法為:首先將一個無序序列建成堆。然后將堆頂元素(序列中的最大項)與堆中最后一個元素交換(最大項應該在序列的最后)。在最壞情況下,堆排序需要比較的次數(shù)為口心1。假設線性表的長度為16,那么冒泡排序、直接插入排序、簡單選擇排序都需要比較120次,而堆排序需要比較64次。故本題答案為Do5、耦合性和內聚性是對模塊獨立性度量的兩個標準。下列敘述中正確的是。A、

6、提高耦合性降低內聚性有利于提高模塊的獨立性日降低耦合性提高內聚性有利于提高模塊的獨立性C耦合性是指一個模塊內部各個元素間彼此結合的緊密程度D內聚性是指模塊間互相連接的緊密程度內聚性:內聚性是一個模塊內部各個元素間彼此結合的緊密程度的度量。耦合性:耦合性是模塊間互相連接的緊密程度的度量。因此選項C、D是錯誤的。在程序結構中,各模塊的內聚性越強,則耦合性越弱。一般較優(yōu)秀的軟件設計,應盡量做到高內聚,低耦合,即減弱模塊之間的耦合性和提高模塊內的內聚性,有利于提高模塊的獨立性。因此選項A1錯誤的,應該降低耦性合提高內聚性,所以選項B是正確的。故本題答案為Bo6、有兩個關系R,S如下:由關系R通過運算彳

7、I到關系S,則所使用的運算為。A選擇日投影C插入D連接專門的關系運算包括:選擇、投影和連接。1、選擇:從關系中找出滿足給定條件的元組的操作稱為選擇。選擇是從行的角度進行的運算,即從水平方向抽取記錄。2、投影:從關系模式中指定若干個屬性組成新的關系。投影是從列的角度進行的運算,相當于對關系進行垂直分解。3、連接:連接是關系的橫向結合。連接運算將兩個關系模式拼接成一個更寬的關系模式,生成的新關系中包含滿足連接條件的元組。連接過程是通過連接條件來控制的,連接條件中將出現(xiàn)兩個表中的公共屬性名,或者具有相同語義、可比的屬性。選擇和投影運算的操作對象只是一個表。相當于對一個二維表進行切割。連接運算需要兩個

8、表作為操作對象。由圖可知關系R通過運算彳I到關系S,關系SJt關系R相比,記錄的條數(shù)沒有發(fā)生變化,屬性的個數(shù)發(fā)生了變化。因此所使用的運算應該是投影。選項鼐入運算會增加記錄的條數(shù)。所以選項B是正確的。故本題答案為Bo7、數(shù)據(jù)庫應用系統(tǒng)中的核心問題是。A數(shù)據(jù)庫設計日數(shù)據(jù)庫系統(tǒng)設計C數(shù)據(jù)庫維護D數(shù)據(jù)庫管理員培訓數(shù)據(jù)庫應用系統(tǒng)是數(shù)據(jù)庫系統(tǒng)再加上應用軟件及應用界面這三者所組成,具體包括:數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫管理員、硬件平臺、軟件平臺、應用軟件、應用界面。在數(shù)據(jù)庫應用系統(tǒng)中的一個核心問題就是設計一個能滿足用戶要求,性能良好的數(shù)據(jù)庫,這就是數(shù)據(jù)庫設計。所以選項A1正確的。故本題答案為Ao8、支持子

9、程序調用的數(shù)據(jù)結構是_一A棧日樹C隊列D二叉樹子程序調用是一種層次關系,子程序調用功能模塊,調用功能模塊的個數(shù)也不確定,可以是一個,也可以是多個。選項A、C中元素之間是一種前后件關系,前后元素之間沒有層次之分,每個結點有一個前件也只有一個后件。二叉樹是一種很有用的非線性結構,二叉樹不同于樹形結構。二叉樹具有以下兩個特點:非空二叉樹只有一個根結點;每一個結點最多有兩棵子樹,且分別稱為該結點的左子樹與右子樹。選項D規(guī)定每個結點只能有兩個后件。在子程序調用中,調用的功能模塊可以是多個,可以調用超過兩個功能模塊。所以選項A、CD均不正確。故本題答案為Bo9、某二叉樹有5個度為2的結點,則該二叉樹中的葉

10、子結點數(shù)是oA10日8C6D4在任意一棵二叉樹中,度為0的結點(即葉子結點)總是比度為2的結點多一個。本題中度為2的結點數(shù)為5,故葉子結點數(shù)為5+1=6個。故本題答案為Co10、軟件按功能可以分為:應用軟件、系統(tǒng)軟件和支撐軟件(或工具軟件)。下面屬于應用軟件的是(A、編譯程序日操作系統(tǒng)C教務管理系統(tǒng)D匯編程序軟件按功能可以分為:應用軟件、系統(tǒng)軟件、支撐軟件(或工具軟件)。應用軟件是為解決特定領域的應用而開發(fā)的軟件。例如,事務處理軟件、工程與科學計算軟件,實時處理軟件,嵌入式軟件,人工智能軟件等應用性質不同的軟件。因此選項O務管理系統(tǒng)屬于應用軟件。系統(tǒng)軟件是計算機管理自身資源,提高計算機使用效率

11、并為計算機用戶提供各種服務的軟件。如操作系統(tǒng),編譯程序,匯編程序,網(wǎng)絡軟件,數(shù)據(jù)庫管理系統(tǒng)等。因此選項A、B、沸8屬于系統(tǒng)軟件。故本題答案為Co11、有如下程序:#includeusingnamespacestd;classONEintc;public:ONE():c(0)cout1;ONE(intn):c(n)cout2;classTWOONEone1;ONEone2;public:TWO(intm):one2(m)cout3;intmain()TWOt(4);return0;運行時的輸出結果是。A、3以23C123DX213本題主要考查了成員對象。當一個類的成員是另外一個類的對象時,該對象

12、就稱為成員對象。建立一個類的對象時,要調用它的構造函數(shù)。如果這個類有成員對象,要首先執(zhí)行所有的成員對象的構造函數(shù),當全部成員對象的初始化都完成之后,再執(zhí)行當前類的構造函數(shù)體。當類中有多個成員對象時,要按照定義成員對象的順序建立各個子對象,即成員對象構造函數(shù)的執(zhí)行順序僅與成員對象在類中聲明的順序有關,而與成員初始化列表中給出的成員對象的順序無關。如果在構造函數(shù)的成員初始化列表中沒有給出對成員對象的初始化,則表示使用成員對象的缺省構造函數(shù)。如果所有的成員對象都是調用缺省構造函數(shù)建立的,那么該類的構造函數(shù)的成員初始化列表可以省略。類TWOJ數(shù)據(jù)成員是類ONE勺對象one1和one2,main()函數(shù)

13、中首先創(chuàng)建類TW6對象t并提供初始值4,先執(zhí)行成員對象one1的構造函數(shù)體,輸出1;再執(zhí)行成員對象one2的構造函數(shù)體,輸出2,最后執(zhí)行類TWO)構造函數(shù)體,輸出3。因此本題程序運行時的輸出結果是123。故本題答案為Co12、假設下列語句都是程序運行后首次執(zhí)行的輸出語句,其中輸出結果與另外三條語句不同的語句是Acoutsetfill(*)123setw(9)coutsetfill(*)setw(6)left123setw(6)right321;Ccout123setfill(*)setw(6)321;DXcoutsetfill(*)setw(9)left123operator+(a)Coper

14、ator+(a,1)Da.operator+()本題主要考查了運算符重載。C+把重載的運算符視為特殊的函數(shù),稱為運算符函數(shù),函數(shù)名就是在運算符前加上保留字operator。一般而言,如果a是類X的對象,在類冊重載前置單目運算符則下列兩種函數(shù)調用方法是等價的:第一種是通過運算符構成表達式的形式進行調用,即a第二種是像一般函數(shù)那樣用函數(shù)名進行調用:當把幽為成員函數(shù)重載時,調用形式為a.operator();當把幽為非成員函數(shù)重載時,調用形式為operator(a)。本題是把前置單目運算符+重載為成員函數(shù),因此與表達式+a等效的表示為a.operator+()。故本題答案為Do14、已知有數(shù)組定義c

15、hara34;下列表達式中錯誤的是。Aa2=WIN曰strcpy(a2,WIN)Ca23=WDa01=a01本題主要考查了數(shù)組。如果把二維數(shù)組a34看作3行4列矩陣,a2是第三行數(shù)據(jù)的首地址,是一個常量,不能對其賦值。本題答案為Ao15、運算符重載時不需要保持的性質是。A操作數(shù)個數(shù)以操作數(shù)類型C優(yōu)先級DX結合性本題主要考查了運算符重載。重載的運算符應盡可能保持其原有的基本語義,重載的運算符應該體現(xiàn)為原運算符的功能在新的數(shù)據(jù)類型上的延伸。重載的運算符應盡可能保持其原有的特性,運算符的操作數(shù)個數(shù)、優(yōu)先級和結合性是三個最基本的特性。因此運算符重載時不需要保持的性質是操作數(shù)類型。故本題答案為Bo16、

16、當使用ifstream流類定義一個流對象并打開一個磁盤文件時,文件的默認打開方式為。Aios_base:inBios_base:inios_base:outCios_base:outDkios_base:in&ios_base:out本題主要考查了文件輸入流。當使用ifstream流類定義一個流對象并打開一個磁盤文件時,文件的默認打開方式為ios_base:in。故本題答案為Ao17、有如下類定義和變量定義:classParentspublic:intpublicData;private:intprivateData;);classChildA:publicParents/*類體略*/;cla

17、ssChildB:privateParents/*類體略*/;ChildAa;ChildBb;下列語句中正確的是。Acouta.publicDataendl;Ekcouta.privateDataendl;Ccoutb.publicDataendl;Dcoutb.privateDataendl;本題主要考查了派生類對基類成員的訪問?;愔泄谐蓡T在派生類中的訪問控制屬性將隨著繼承方式而改變:派生類從基類公有繼承時,基類的公有成員在派生類中仍然是公有成員;派生類從基類私有繼承時,基類的公有成員在派生類中改變?yōu)樗接谐蓡T。通過類的對象只能訪問類的公有成員,故選項A1正確的。故本題答案為Ao18、有如

18、下程序段:inti=4;intj=1;intmain()inti=8,j=i;coutijMyClassx22=newMyClass(1),newMyClass(2);CMyClass*x32;DMyClass*x42=MyClass(1),MyClass(2);本題主要考查了對象數(shù)組、指針數(shù)組和ne應算符。new運算符返回指向指定類型的一個指針。對象數(shù)組是指數(shù)組元素為對象的數(shù)組,該數(shù)組中的每一個元素都是同一個類的對象。定義對象數(shù)組時,系統(tǒng)將自動調用構造函數(shù)創(chuàng)建每一個對象元素,因為類MyClass中定義了一個有一個整型參數(shù)的構造函數(shù),編譯器將不再為其生成缺省構造函數(shù),所以定義對象數(shù)組時必須分別

19、調用有參構造函數(shù)為每一個數(shù)組元素指定初始值。因此選項A錯誤,沒有初始化對象數(shù)組;選項B中,用指向對象的指針初始化對象數(shù)組,類型不匹配,因此選項Bt誤;指針數(shù)組是由指針組成的數(shù)組,即數(shù)組中的每一個元素都是指向同一類型對象的指針。選項Ct義了指向MyClass類對象的指針數(shù)組x3,該定義語句正確;選項D中,只能用指向MyClass類對象的指針或用已有的MyClass類對象的地址來初始化指針數(shù)組x4的每一個元素,不能用對象進行初始化,因此選項Dt誤。故本題答案為Co20、有如下程序:#include#includeusingnamespacestd;classXCFinta;public:XCF(i

20、ntaa=0):a(aa)cout1;XCF(XCF&x)a=x.a;cout2;XCF()couta;intGeta()returna;intmain()XCFd1(5),d2(d1);XCF*pd=newXCF(8);coutGeta();deletepd;return0;運行時的輸出結果是。A1215588Bk1218855C12185D128512本題主要考查了構造函數(shù)、拷貝構造函數(shù)和析構函數(shù)。構造函數(shù)在對象被創(chuàng)建的時候由系統(tǒng)自動調用,析構函數(shù)在對象的生存期即將結束的時刻被系統(tǒng)自動調用,拷貝構造函數(shù)發(fā)生在用一個已知的對象初始化一個正在創(chuàng)建的同類對象的時候。在main()函數(shù)中,語句XC

21、Fd1(5),d2(d1);先后創(chuàng)建了兩個對象d1和d2。在創(chuàng)建對象d1時,系統(tǒng)自動調用了構造函數(shù),d1數(shù)據(jù)成員a的值為5,輸出字符1;在創(chuàng)建對象d2時是用已創(chuàng)建的對象d1初始化,系統(tǒng)自動調用拷貝構造函數(shù),對象d2數(shù)據(jù)成員a的值為5,輸出字符2;然后執(zhí)行語句XCF*pd=newXCF(8);系統(tǒng)再次調用構造函數(shù)通過new運算符動態(tài)創(chuàng)建了一個XCFI的對象,該對象的數(shù)據(jù)成員a的值為8,輸出字符1,并將首地址賦給XC噗的指針pdo成員函數(shù)Geta()的功能是獲取數(shù)據(jù)成員a,因此執(zhí)行語句coutGeta();輸出8。接著執(zhí)行語句deletepd;系統(tǒng)自動調用析構函數(shù),輸出指針pd所指向對象的數(shù)據(jù)成員

22、a,即輸出8,當main()函數(shù)結束時,系統(tǒng)先自動調用析構函數(shù)刪除對象d2,輸出又象d2的數(shù)據(jù)成員a的值5,然后再次調用析構函數(shù)刪除對象d1,輸出又象d1的數(shù)據(jù)成員a的值5。因此程序輸出結果為1218855。故本題答案為B。21、已知函數(shù)fun的原型為intfun(int,int,int);下列重載函數(shù)原型中錯誤的是。A、charfun(int,int);Bdoublefun(int,int,double);Cintfun(int,clar*);Dfloatfun(int,int,int);本題主要考查了函數(shù)重載。函數(shù)重載允許用同一個函數(shù)名定義多個函數(shù)。被重載的函數(shù)必須要有不同的形參列表(即參

23、數(shù)個數(shù)不同或參數(shù)類型不同),不可以根據(jù)函數(shù)返回值類型來重載函數(shù)。故本題答案為Do22、下列關于函數(shù)模板的描述中,錯誤的是。A、從模板實參表和從模板函數(shù)實參表獲得信息矛盾時,以模板實參的信息為準日對于常規(guī)參數(shù)所對應的模板實參,任何情況下都不能省略C虛擬類型參數(shù)沒有出現(xiàn)在模板函數(shù)的形參表中時,不能省略模板實參DX模板參數(shù)表不能為空本題主要考查了函數(shù)模版。在調用一個模板函數(shù)時,編譯系統(tǒng)需要足夠的信息來判別每個虛擬類型參數(shù)所對應的實際類型,可以從兩個不同的渠道獲得這樣的信息:從模板實參表(用括起來的參數(shù)表)或從模板函數(shù)實參表(用(和)括起來的參數(shù)表),模板實參的信息優(yōu)先于函數(shù)實參的信息,因此選項AE確

24、。如果從后者獲得的信息已經(jīng)能夠判定其中部分或全部虛擬類型參數(shù)所對應的實際參數(shù),而且它們又正好是參數(shù)表中最后的若干參數(shù),則模板實參表中的那幾個參數(shù)可以省略。如果模板實參表中的實參都被省略了,則空表&可以不要,因此選項Dt誤。反之,對于某個模板實參,如果從模板函數(shù)的實參表中無法獲得同樣的信息,就不能省略;或者雖然能夠獲得同樣的信息,但在它后面還有其他不能省略的實參,則其自身還是不能省略。下面列舉幾種模板實參不能省略的情況。從模板函數(shù)實參表獲得的信息有矛盾。需要獲得特定類型的返回值,而不管參數(shù)的類型如何。虛擬類型參數(shù)沒有出現(xiàn)在模板函數(shù)的形參表中,因此選項C正確。函數(shù)模板含有常規(guī)形參,因此選項B正確。

25、故本題答案為Do23、有如下程序:#includeusingnamespacestd;classPairintm;intn;public:Pair(inti,intj):m(i),n(j)booloperator(Pairp)const;/須在類體外給出定義;Pairp1(3,4),p2(4,3),p3(4,5);coutp2)p1)p3)p2);return0;運算符函數(shù)operator的功能是比較兩個Pair對象的大小,當左邊對象大時,返回true,否則返回false。比較規(guī)則是首先比較兩對象的m成員,m大者為大;當nf目等時比較n,n大者為大。程序輸出0101,下列對運算符重載函數(shù)的正確

26、定義是。A、boolPair:operator(Pairp)constif(m!=p.m)returnmp.m;returnnp.n;BboolPair:operator(Pairp)if(m!p.m)returnmp.m;returnnp.n;CboolPair:operator(Pairp)constif(mp.m)returntrue;returnnp.n;DboolPair:operator(Pairp)if(mp.m)returntrue;returnnp.n;本題主要考查了常成員函數(shù)和運算符重載。因為const關鍵字可以用于對重載函數(shù)的區(qū)分,所以在類外定義常成員函數(shù)時不能省略con

27、st關鍵字,因此選項口選項D1昔誤。選項C中,如果mp.n返回彳I為true,但題目要求返回值應為false,因此選項G昔誤。故本題答案為Ao24、有如下類定義:classXXintxx;public:XX():xx(0)coutA;XX(intn):xx(n)coutB;classYY:publicXXintyy;public:YY():yy(0)coutyy;YY(intn):XX(n+1),yy(n)coutyy;YY(intm,intn):XX(m),yy(n)coutyy;下列選項中,輸出結果為A0的語句是oAYYy1(0,0);BkYYy2(1);CYYy3(0);DYYy4;本題

28、主要考查了派生類構造函數(shù)執(zhí)行順序。建立派生類對象時,構造函數(shù)的執(zhí)行順序為:執(zhí)行基類的構造函數(shù),調用順序按照各個基類被繼承時聲明的順序(自左向右);執(zhí)行成員對象的構造函數(shù),調用順序按照各個成員對象在類中聲明的順序(自上而下);執(zhí)行派生類的構造函數(shù)。根據(jù)聲明類YY勺對象時提供的初始值個數(shù)和類型,確定和其匹配的構造函數(shù),再根據(jù)該構造函數(shù)中在初始化基類時給出的初始值的個數(shù)和類型,確定和其匹配的基類的構造函數(shù)。選項A中構造函數(shù)的執(zhí)行順序為:先執(zhí)行基類XX勺有一個整型參數(shù)的構造函數(shù),輸出字符B,再執(zhí)行派生類YY勺有兩個整型參數(shù)的構造函數(shù),輸出數(shù)據(jù)成員yy的值0,因此選項A的輸出結果為B0;選項B中構造函數(shù)

29、的執(zhí)行順序為:先執(zhí)行基類XX的有一個整型參數(shù)的構造函數(shù),輸出字符B,再執(zhí)行派生類YY勺有一個整型參數(shù)的構造函數(shù),輸出數(shù)據(jù)成員yy的值1,因此選項B的輸出結果為B1;選項C勺輸出結果為B0;選項D中構造函數(shù)的執(zhí)行順序為:先執(zhí)行基類XX勺缺省構造函數(shù),輸出字符A,再執(zhí)行派生類YY勺缺省構造函數(shù),輸出數(shù)據(jù)成員yy的值0,因此選項D的輸出結果為A0o故本題答案為Do25、有下列程序:#include#includeusingnamespacestd;classXCDchar*a;intb;public:XCD(char*aa,intbb)a=newcharstrlen(aa)+1;strcpy(a,a

30、a);b=bb;char*Geta()returna;intGetb()returnb;intmain()char*p1=abcd,*p2=weirong;intd1=6,d2=8;XCDx(p1,d1),y(p2,d2);coutstrlen(x.Geta()+y.Getb()endl;return0;運行時的輸出結果是。A、12以16C14D11本題主要考查了構造函數(shù)。構造函數(shù)在對象被創(chuàng)建的時候由系統(tǒng)自動調用。在mian()函數(shù)中,語句XCDX(p1,d1),y(p2,d2);創(chuàng)建了兩個對象x和y,在創(chuàng)建對象x時系統(tǒng)自動調用類的構造函數(shù),使對象x的數(shù)據(jù)成員字符指針a指向的內存空間的值為字符

31、串a(chǎn)bcd;成員函數(shù)Geta的功能是獲取數(shù)據(jù)成員a,庫函數(shù)strlen()的功能是獲取字符串的長度,故strlen(x.Geta()的值為4;在創(chuàng)建對象y時系統(tǒng)自動調用類的構造函數(shù),使對象y的數(shù)據(jù)成員b的值為8,成員函數(shù)Getb的功能是獲取數(shù)據(jù)成員b,故y.Getb()的值為8。因此程序運行的輸出結果是4+8,即12。故本題答案為Ao26、下列描述中,不屬于面向對象思想主要特征的是。A、封裝性以跨平臺性C繼承性D多態(tài)性本題主要考查了面向對象思想。C+是一種面向對象的程序設計語言,它充分支持面向對象思想中的三個主要特征:封裝性、繼承性、多態(tài)性。故本題答案為Bo27、有如下程序:#includeu

32、singnamespacestd;classAAintk;protected:intn;voidsetK(intk)this-k=k;public:voidsetN(intn)this-n=n;classBB:publicAA/*類體略*/;intmain()BBx;x.n=1;/1x.setN(2);/2x.k=3;/3x.setK(4);/4return0;在標注號碼的四條語句中正確的是。A1日2C3D4本題主要考查了派生類對象對基類成員的訪問。類B必有繼承類AA,類AA勺公有成員函數(shù)setN()成為類BB的公有成員,類AA勺保護數(shù)據(jù)成員n和保護成員函數(shù)setK()成為類BB勺保護成員,通

33、過派生類對象只能訪問派生類的公有成員,因此選項B正確,不能訪問派生類的私有成員和保護成員,因此選項府口選項承昔誤;無論哪種繼承方式,派生類BB勺對象都不能訪問基類AA中的私有成員,因此選項C錯誤。故本題答案為Bo28、在定義一個類模板時,模板形參表是用一對括號括起來的,所采用的括號是。A、()日CD本題主要考查了類模版。類模板聲明的語法形式是:template模板形參表class類名類成員聲明因此本題答案為Co29、對C+播譯器區(qū)分重載函數(shù)無任何意義的信息是。A參數(shù)類型B參數(shù)個數(shù)C返回值類型D常成員函數(shù)關鍵字const本題主要考查了函數(shù)重載。進行函數(shù)重載時,要求同名函數(shù)在參數(shù)個數(shù)上不同,或者參

34、數(shù)類型上不同,不可以根據(jù)函數(shù)返回值類型來重載函數(shù);const關鍵字可以用于參與對重載函數(shù)的區(qū)分。因此對C+播譯器區(qū)分重載函數(shù)無任何意義的信息是返回值類型。故本題答案為Co30、有如下程序段:inti=5;while(inti=0)cout*;i-;運行時輸出的個數(shù)是。A、0日1C5D無窮本題主要考查了while循環(huán)語句的使用。while語句的語法格式為:while(表達式)語句while語句的執(zhí)行過程是:(1)計算表達式的值,如果此值不等于0(即循環(huán)條件為真),則轉向步驟(2);如果此值等于0(即循環(huán)條件為假),則轉向步驟(4)。(2)執(zhí)行一遍循環(huán)體語句;(3)轉向步驟(1);(4)結束whi

35、le循環(huán)。本題的表達式聲明了變量i并賦初值0,因此循環(huán)條件為假,結束while循環(huán)。故while語句循環(huán)了0次,因此輸出*的個數(shù)是0。故本題答案為Ao31、建立一個類對象時,系統(tǒng)自動調用。A析構函數(shù)以構造函數(shù)C靜態(tài)函數(shù)D友元函數(shù)本題主要考查了構造函數(shù)。構造函數(shù)的作用是在對象被創(chuàng)建時利用特定的值構造對象,將對象初始化為一種特定的狀態(tài),使該對象具有區(qū)別于其他對象的特征。構造函數(shù)在對象被創(chuàng)建的時候由系統(tǒng)自動調用。故本題答案為Bo32、有如下類定義和變量定義classApublic:A()data=0;-A()intGetData()constreturndata;voidSetData(intn)d

36、ata=n;private:intdata;constAa;Ab;下列函數(shù)調用中錯誤的是。A、a.GetData();日a.SetData(10);Cb.GetData();Db.SetData(10);本題主要考查了常對象和常成員函數(shù)。使用const關鍵字修飾的對象稱為常對象,使用const關鍵字說明的成員函數(shù)稱為常成員函數(shù)。由于常對象不能被更新,因此,在將一個對象說明為常對象后,通過這個常對象只能調用它的常成員函數(shù),而不能調用其他成員函數(shù)。一般對象既可以調用常成員函數(shù),也可以調用一般成員函數(shù)。選項B中對象a為常對象,而成員函數(shù)SetData()不是常成員函數(shù),所以這樣調用會發(fā)生編譯錯誤。故

37、本題答案為Bo33、有如下程序:#includeusingnamespacestd;classApublic:virtualvoidf()cout1;voidg()cout2;classB:publicApublic:virtualvoidf()cout3;voidg()coutifstream*fin=newifstream(file.dat);Cifstreamfin;fin.open(file.dat);Dkifstream*fin=newifstream();fin-open(file.dat);本題主要考查了文件輸入流的建立。每個文件流都應當與一個打開的文件相聯(lián)系??梢杂脙煞N不同的方式打開文件。在建立文

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論