資源描述:
《網(wǎng)龍筆試題及答案》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、一.題型:?jiǎn)柎鹞孱},程序兩題,選擇10來(lái)題二.題目1.堆和棧的區(qū)別與聯(lián)系(C/C++的內(nèi)容,不是數(shù)據(jù)結(jié)構(gòu)的內(nèi)容)1、棧區(qū)(stack)由編譯器自動(dòng)分配釋放,存放函數(shù)的參數(shù)值,局部變量的值等。其操作方式類(lèi)似于數(shù)據(jù)結(jié)構(gòu)中的棧。2、堆區(qū)(heap)一般由程序員分配釋放,若程序員不釋放,程序結(jié)束時(shí)可能由OS回收。注意它與數(shù)據(jù)結(jié)構(gòu)中的堆是兩回事。區(qū)別:1.管理方式:對(duì)于棧來(lái)講,是由編譯器自動(dòng)管理,無(wú)需我們手工控制;對(duì)于堆來(lái)說(shuō),釋放工作由程序員控制,容易產(chǎn)生內(nèi)存溢出。2.空間大小:堆內(nèi)存幾乎是沒(méi)有什么限制。棧一般都是有一定的空間大小。3.碎片問(wèn)
2、題:對(duì)于堆來(lái)講,頻繁的new/delete會(huì)造成內(nèi)存空間的不連續(xù),從而造成大量的碎片,使程序效率降低。對(duì)于棧來(lái)講,則不會(huì)存在這個(gè)問(wèn)題。4.分配方式:堆都是動(dòng)態(tài)分配的,沒(méi)有靜態(tài)分配的堆。棧有2種分配方式:靜態(tài)分配和動(dòng)態(tài)分配。5.分配效率:棧的效率比較高。堆的效率比棧要低得多。見(jiàn):hi.baidu.com/sige_online/blog/item/f06097ecb006bb3f2797918b.html2.重載和覆蓋的區(qū)別與聯(lián)系重載是指不同的函數(shù)使用相同的函數(shù)名,但函數(shù)的參數(shù)個(gè)數(shù)或類(lèi)型不通。調(diào)用的使用根據(jù)函數(shù)的參數(shù)來(lái)區(qū)別不同的函數(shù)。
3、覆蓋是指派生類(lèi)中重新對(duì)基類(lèi)的虛函數(shù)重新實(shí)現(xiàn)。即函數(shù)名和參數(shù)都一樣,只是函數(shù)的實(shí)現(xiàn)體不一樣。3.什么是多重繼承,好處及缺點(diǎn)多重繼承指的是一個(gè)類(lèi)別可以同時(shí)從多于一個(gè)父類(lèi)繼承行為與特征的功能。優(yōu)點(diǎn):可以使用多重繼承編寫(xiě)非常復(fù)雜、但很緊湊的代碼,如C++ATL庫(kù)。缺點(diǎn):出現(xiàn)二義性、虛函數(shù)、訪問(wèn)權(quán)限等問(wèn)題,容易產(chǎn)生混淆。4.做過(guò)什么項(xiàng)目.遇到什么問(wèn)題(不寫(xiě)似乎沒(méi)事)自己想吧,根據(jù)自己情況寫(xiě)5.不用第三個(gè)變量交換兩個(gè)int型的值(必須用C實(shí)現(xiàn))inta=2,b=3;a=a+b;b=a-b;a=a-b;6.鏈表刪除操作此處實(shí)現(xiàn)刪除鏈表中的第二個(gè)元
4、素。int*p,*q,*list;//p,q為指針類(lèi)型,list為已存在的鏈表p=list;//p指向list的第一個(gè)元素q=list;//q指向list的第一個(gè)元素if(p->next!=null){//list鏈表的元素超過(guò)一個(gè)q=q->next;//q指向第二個(gè)元素p->next=q->next;//p->next指向第三個(gè)元素deleteq;//釋放鏈表的第二個(gè)元素空間}7.寫(xiě)一個(gè)程序,堆可以訪問(wèn),棧不可以訪問(wèn)。寫(xiě)一個(gè)程序,??梢栽L問(wèn),堆不可以訪問(wèn)。堆可以訪問(wèn),棧不可以訪問(wèn)把構(gòu)造函數(shù)設(shè)為privateclassheap{pr
5、ivate:heap(){cout<<"堆可以訪問(wèn),棧不可以訪問(wèn)"<#include#defineN100voidmain(){
6、chara[N];charb[N];charc[2*N];inti;cin>>a;cin>>b;intlength1,length2;length1=strlen(a);length2=strlen(b);for(i=0;i