




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 迅雷 2022 C+工程師面試題第1題: 一、單選題 下列運(yùn)算符中,在C+語言中不能重載的是: A * B = C : D delete C 在C+中,sizeof運(yùn)算符,.成員運(yùn)算符,.*成員指針運(yùn)算符,:作用域解析運(yùn)算符以及?:條件運(yùn)算符不能被重載,因此答案選C 第2題: 下面關(guān)于多態(tài)性的描述,錯(cuò)誤的是: A C+語言的多態(tài)性分為編譯時(shí)的多態(tài)性和運(yùn)行時(shí)的多態(tài)性 B 編譯時(shí)的多態(tài)性可通過函數(shù)重載實(shí)現(xiàn) C 運(yùn)行時(shí)的多態(tài)性可通過模板和虛函數(shù)實(shí)現(xiàn) D 實(shí)現(xiàn)運(yùn)行時(shí)多態(tài)性的機(jī)制稱為動(dòng)態(tài)綁定 C A,正確,分編譯時(shí)多態(tài)和運(yùn)行時(shí)多態(tài) B,編譯時(shí)多態(tài)可以通過函數(shù)重載實(shí)現(xiàn),詳細(xì)表現(xiàn)在依據(jù)參數(shù)的個(gè)數(shù)和類型不同
2、選擇合適的同名函數(shù) C,運(yùn)行時(shí)多態(tài)通過虛函數(shù)實(shí)現(xiàn),就是運(yùn)行時(shí)依據(jù)對(duì)象類型自動(dòng)選擇正確的調(diào)用接口。模板屬于編譯時(shí)多態(tài)性,由于編譯時(shí)自動(dòng)依據(jù)模板生成模板函數(shù)。 D,運(yùn)行時(shí)多態(tài)是依據(jù)對(duì)象類型自動(dòng)選擇正確的調(diào)用函數(shù),也叫動(dòng)態(tài)綁定。 第3題: 下面關(guān)于類和對(duì)象的描述中,錯(cuò)誤的是: A 類就是C語言中的結(jié)構(gòu)體類型,對(duì)象就是C語言中的結(jié)構(gòu)體變量 B 類和對(duì)象之間的關(guān)系是抽象和詳細(xì)的關(guān)系 C 對(duì)象是類的實(shí)例,一個(gè)對(duì)象必需屬于一個(gè)已知的類 D 類是具有共同行為的若干對(duì)象的統(tǒng)一描述體 A c語言中結(jié)構(gòu)體無成員函數(shù),而c+中的類是有成員函數(shù)的 第4題: 引用標(biāo)準(zhǔn)庫(kù)時(shí),下面的說法你認(rèn)為哪個(gè)是正確的: A 語句#inc
3、lude“stdlib.h”是正確的,而且程序編譯速度比#includestdlib.h要快 B 語句#includestdlib.h是正確的,而且程序編譯速度比#include“stdlib.h”要快 C 語句#includestdlib.h和#include“stdlib.h”都是正確的,程序編譯速度沒有區(qū)分 D 語句#include“stdlib.h”是錯(cuò)誤的 B #inlcude 首先 只搜尋系統(tǒng)名目,不會(huì)搜尋本地名目.比如你自己寫一個(gè)頭文件,你用#include 會(huì)出錯(cuò). #inlude 首先搜尋本地名目,假如本地名目沒有才會(huì)搜尋系統(tǒng)名目. 可以把系統(tǒng)的文件 放到當(dāng)前名目下 改成 可
4、以優(yōu)先使用 所以B是對(duì)的 第5題: 設(shè)a、b、c、d、m、n均為int型變量,且a=5、b=6、c=7、d=8、m=2、n=2,則規(guī)律表達(dá)式(m=ab)(n=cd)運(yùn)算后,n的值為: A 0 B 1 C 2 D 7 C 分析:m=ab后m=0,表達(dá)式為假,后半部分不會(huì)操作,因此n為初始值2 第6題: 不能作為重載函數(shù)的調(diào)用的依據(jù)是: A 參數(shù)個(gè)數(shù) B 參數(shù)類型 C 函數(shù)類型 D 函數(shù)名稱 C 函數(shù)的重載,發(fā)生在同名函數(shù)之間,區(qū)分同名函數(shù)是否是相同的函數(shù),要看同名函數(shù)的特征標(biāo),即參數(shù)列表是否相同,若參數(shù)列表的參數(shù)類型或個(gè)數(shù)不一樣,則函數(shù)不一樣,因此答案選C 第7題: 下列程序的輸出結(jié)果為: #i
5、ncludeiostream.h int func(int n) if(n1) return 1; else return n+func(n-1); return 0; void main() cout func(5) endl; A 0 B 10 C 15 D 16 D 這是一個(gè)求累加和的遞歸,留意 1 span class=kwd style=color: rgb(0, 0, 136);ifspan class=pun style=color: rgb(102, 102, 0);(span class=pln style=color: rgb(0, 0, 0);nspan class=pu
6、n style=color: rgb(102, 102, 0);span class=lit style=color: rgb(0, 102, 102);1span class=pun style=color: rgb(102, 102, 0);)span class=pln style=color: rgb(0, 0, 0); span class=kwd style=color: rgb(0, 0, 136);returnspan class=pln style=color: rgb(0, 0, 0); span class=lit style=color: rgb(0, 102, 102
7、);1span class=pun style=color: rgb(102, 102, 0);/span/span/span/span/span/span/span/span/span/span/span 即func(0)的值為1. func(5)=5+4+3+2+1+1=16 第8題: 建立派生類對(duì)象時(shí),3種構(gòu)造函數(shù)分別是a(基類的構(gòu)造函數(shù))、b(成員對(duì)象的構(gòu)造函數(shù))、c(派生類的構(gòu)造函數(shù))這3種構(gòu)造函數(shù)的調(diào)用挨次為: A abc B acb C cab D cba A 在繼承中派生類的對(duì)象調(diào)用構(gòu)造函數(shù)的挨次,應(yīng)當(dāng)是先調(diào)用基類的構(gòu)造函數(shù),然后是成員中的對(duì)象對(duì)應(yīng)類的構(gòu)造函數(shù),最終是派生類自己
8、的構(gòu)造函數(shù). 第9題: 假如友元函數(shù)重載一個(gè)運(yùn)算符時(shí),其參數(shù)表中沒有任何參數(shù)則說明該運(yùn)算符是: A 一元運(yùn)算符 B 二元運(yùn)算符 C 選項(xiàng)A)和選項(xiàng)B)都可能 D 重載錯(cuò)誤 D 分析:C+中用友元函數(shù)重載運(yùn)算符至少有一個(gè)參數(shù),重載一目運(yùn)算符要有一個(gè)參數(shù),重載二目運(yùn)算符要有兩個(gè)參數(shù)。 第10題: #define F(X,Y) (X)-, (Y)+, (X)*(Y); int i, a = 3, b = 4; for( i = 0; i5; i+) F(a,b) printf(“%d, %d”, a, b); 輸出結(jié)果是 A 3,4 B 3,5 C -2,5 D -2,9 D 宏會(huì)內(nèi)聯(lián)綻開,答案是
9、-2,9 第11題: 二、不定項(xiàng)選擇 已知一段文本有1382個(gè)字符,使用了1382個(gè)字節(jié)進(jìn)行存儲(chǔ),這段文本全部是由a、b、c、d、e這5個(gè)字符組成,a消失了354次,b消失了483次,c消失了227次,d消失了96次,e消失了232次,對(duì)這5個(gè)字符使用哈夫曼(Huffman)算法進(jìn)行編碼,則以下哪些說法正確() A 使用哈夫曼算法編碼后,用編碼值來存儲(chǔ)這段文本將花費(fèi)最少的存儲(chǔ)空間 B 使用哈夫曼算法進(jìn)行編碼,a、b、c、d、e這5個(gè)字符對(duì)應(yīng)的編碼值是唯一確定的 C 使用哈夫曼算法進(jìn)行編碼,a、b、c、d、e這5個(gè)字符對(duì)應(yīng)的編碼值可以有多套,但每個(gè)字符編碼的位(bit)數(shù)是確定的 D b這個(gè)字符
10、的哈夫曼編碼值位數(shù)應(yīng)當(dāng)最短,d這個(gè)字符的哈夫曼編碼值位數(shù)應(yīng)當(dāng)最長(zhǎng) A C D B答案:哈弗曼編碼不是唯一的,由于二叉樹左右字?jǐn)?shù)定義的0,1不同會(huì)影響到最終的編碼。D答案:次數(shù)最小的應(yīng)當(dāng)放在最底層葉子節(jié)點(diǎn),次數(shù)最大的應(yīng)當(dāng)最接近根節(jié)點(diǎn)。 第12題: 下面描述正確的是() A while循環(huán)語句的循環(huán)體至少執(zhí)行1次 B do-while循環(huán)可以寫成while循環(huán)的格式 C continue語句可以消失在各種循環(huán)體中 D break語句不行以消失在循環(huán)體內(nèi) BC break語句可以消失在switch語句塊中,while循環(huán)體可能不會(huì)執(zhí)行 第13題: 下面模板聲明中,哪些是非法的() A templat
11、eclass Typeclass C1; B templateclass T, U, class Vclass C2; C templateclass C1, ypename C2class C3; D templatetypename myT, class myTclass C4; B D 解釋: B選項(xiàng)的U參數(shù)沒有指定類型, D選項(xiàng)的 2個(gè)形參名同名。 函數(shù)模板的格式: templateclass形參名,class形參名,返回類型 函數(shù)名(參數(shù)列表) 函數(shù)體 類模板的格式為: templateclass 形參名 ,class形參名,class類名 . ; 第14題: 拷貝構(gòu)造函數(shù)的特點(diǎn)是(
12、) A 該函數(shù)名同類名,也是一種構(gòu)造函數(shù),該函數(shù)返回自身引用 B 該函數(shù)只有一個(gè)參數(shù),必需是對(duì)某個(gè)對(duì)象的引用 C 每個(gè)類都必需有一個(gè)拷貝初始化構(gòu)造函數(shù),假如類中沒有說明拷貝構(gòu)造函數(shù),則編譯器系統(tǒng)會(huì)自動(dòng)生成一個(gè)缺省拷貝構(gòu)造函數(shù),作為該類的愛護(hù)成員 D 拷貝初始化構(gòu)造函數(shù)的作用是將一個(gè)已知對(duì)象的數(shù)據(jù)成員值拷貝給正在創(chuàng)建的另一個(gè)同類的對(duì)象 D 拷貝函數(shù)和構(gòu)造函數(shù)沒有返回值,A錯(cuò); 拷貝構(gòu)造函數(shù)的參數(shù)可以使一個(gè)或多個(gè),但左起第一個(gè)必需是類的引用對(duì)象,B錯(cuò); 若類定義中沒有聲明拷貝構(gòu)造函數(shù),則編譯器會(huì)自動(dòng)生成一個(gè)缺省的拷貝構(gòu)造函數(shù),但是不會(huì)是該類的愛護(hù)成員,C錯(cuò); 通過拷貝函數(shù)可以將另一個(gè)對(duì)象作為對(duì)象的
13、初值,D對(duì) 第15題: 下列對(duì)函數(shù)double add(int a , int b)進(jìn)行重載,正確的是() A int add(int a ,int b ,int c) B int add(double a , double b) C double add(double a , double b) D int add(int a , int b) A B C 在C+中,函數(shù)的重載取決于函數(shù)的特征標(biāo)即函數(shù)的參數(shù)列表。同名的函數(shù),特征標(biāo)不一樣則函數(shù)不一樣,A、B、C 的參數(shù)列表與題目給出的特征標(biāo)數(shù)量或類型不一樣,因此正確答案為A、B、C 第16題: 三、問答題 有一幢100層高的大樓,給你兩個(gè)完全
14、相同的玻璃圍棋子。假設(shè)從某一層開頭,丟下玻璃棋子就會(huì)破裂。那么怎么利用手中的兩顆棋子,用一種什么樣的最優(yōu)策略,知道這個(gè)臨界的層高呢? 首先,為了保證勝利,兩顆棋子不能全碎. 那么經(jīng)過計(jì)算,第一次應(yīng)當(dāng)在16層嘗試.如棋子碎則從1-15層連續(xù)嘗試.這樣最多嘗試16次可以得到結(jié)果. 如16層棋子未碎,則其次次應(yīng)當(dāng)在16+16-1=31層嘗試.這樣可以保證最多嘗試次數(shù)仍舊為16次.往下類似. 這樣得到最終結(jié)果是: 第一顆棋子應(yīng)當(dāng)依次在16,31,45,58,70,81,91這七層嘗試.如在其中某層碎了則連續(xù)用第2顆在相鄰兩次嘗試樓層中間連續(xù)嘗試.這樣最多只需要16次嘗試可以確定此臨界值. 第17題:
15、用c+寫一個(gè)函數(shù),如Foo(const char *str),打印出str的全排列,如abc的全排列:abc, acb, bca, dac, cab,cba #include iostream #include algorithm#include stringvoid Foo(const char * str)using namespace std;if (str=NULL | *str=NULL) return; string s(str);int c=0;sort(s.begin(),s.end();coutsendl;c+;for (;next_permutation(s.begin(),s.end();) coutsendl; c+; coutc種排列endl;int main()using namespace std;string s;cinws;getline(cin,s);Foo(s.c_str();return 0; 第18題: 求出一字符串中最長(zhǎng)的數(shù)字串。比如as123cdf1234f,返回1234,char* FindNumber(char * out
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 買房有物業(yè)合同范本
- bt合同ppp合同范本
- 企業(yè)人事聘用合同范本
- 出租保安服裝合同范本
- 單位購(gòu)儀器合同范本
- 先打款后開票合同范本
- 協(xié)議付款合同范例
- 上門宴席服務(wù)合同范本
- 東莞企業(yè)勞務(wù)合同范本
- 兒童游泳班合同范本
- 2025年企業(yè)法務(wù)顧問聘用協(xié)議范本
- 教育部人文社科 申請(qǐng)書
- 無菌手術(shù)臺(tái)鋪置的細(xì)節(jié)管理
- 《康復(fù)評(píng)定技術(shù)》課件-第五章 運(yùn)動(dòng)控制
- 議論文8(試題+審題+范文+點(diǎn)評(píng)+素材)-2025年高考語文寫作復(fù)習(xí)
- 【理特咨詢】2024生成式人工智能GenAI在生物醫(yī)藥大健康行業(yè)應(yīng)用進(jìn)展報(bào)告
- 2025新人教版英語七年級(jí)下單詞默寫表(小學(xué)部分)
- 2025年春新外研版(三起)英語三年級(jí)下冊(cè)課件 Unit6第1課時(shí)Startup
- 2025江蘇蘇州高新區(qū)獅山商務(wù)創(chuàng)新區(qū)下屬國(guó)企業(yè)招聘9人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 《蒙牛集團(tuán)實(shí)施財(cái)務(wù)共享過程中存在的問題及優(yōu)化建議探析》8800字(論文)
- 平拋運(yùn)動(dòng)的經(jīng)典例題
評(píng)論
0/150
提交評(píng)論