【MOOC答案】《C++程序設(shè)計(jì)實(shí)踐》(北京科技大學(xué))章節(jié)作業(yè)慕課答案_第1頁(yè)
【MOOC答案】《C++程序設(shè)計(jì)實(shí)踐》(北京科技大學(xué))章節(jié)作業(yè)慕課答案_第2頁(yè)
【MOOC答案】《C++程序設(shè)計(jì)實(shí)踐》(北京科技大學(xué))章節(jié)作業(yè)慕課答案_第3頁(yè)
【MOOC答案】《C++程序設(shè)計(jì)實(shí)踐》(北京科技大學(xué))章節(jié)作業(yè)慕課答案_第4頁(yè)
【MOOC答案】《C++程序設(shè)計(jì)實(shí)踐》(北京科技大學(xué))章節(jié)作業(yè)慕課答案_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

【MOOC答案】《C++程序設(shè)計(jì)實(shí)踐》(北京科技大學(xué))章節(jié)作業(yè)慕課答案

有些題目順序不一致,下載后按鍵盤(pán)ctrl+F進(jìn)行搜索第一章RAPTOR:描述問(wèn)題的分析和設(shè)計(jì)第一章作業(yè)1.分段電費(fèi)【問(wèn)題描述】夏天到了,各家各戶的用電量都增加了許多,相應(yīng)的電費(fèi)也交的更多了。小玉家今天收到了一份電費(fèi)通知單。小玉看到上面寫(xiě):月用電量在150千瓦時(shí)及以下部分按每千瓦時(shí)0.4463元執(zhí)行,月用電量在151~400千瓦時(shí)的部分按每千瓦時(shí)0.4663元執(zhí)行,月用電量在401千瓦時(shí)及以上部分按每千瓦時(shí)0.5663元執(zhí)行;小玉想自己驗(yàn)證一下,電費(fèi)通知單上應(yīng)交電費(fèi)的數(shù)目到底是否正確呢。請(qǐng)編寫(xiě)一個(gè)程序,已知用電總計(jì),根據(jù)電價(jià)規(guī)定,計(jì)算出應(yīng)交的電費(fèi)應(yīng)該是多少。【輸入形式】輸入一個(gè)整數(shù),表示用電總計(jì)(單位以千瓦時(shí)計(jì)),不超過(guò)10000?!据敵鲂问健枯敵鲆粋€(gè)數(shù),保留到小數(shù)點(diǎn)后1位(單位以元計(jì),保留到小數(shù)點(diǎn)后1位)?!緲永斎搿?67【樣例輸出】121.5

答案:【測(cè)試用例1正確。1分輸入50輸出:22.3測(cè)試用例2正確。1分輸入150輸出:66.9測(cè)試用例3正確。1分輸入250輸出:113.6測(cè)試用例4正確。1分輸入350輸出:160.2測(cè)試用例5正確。1分輸入450輸出:211.8】2.奇偶排序【問(wèn)題描述】給出數(shù)組a=[a_1,a_2,a_3,a_4,...,a_n],其中每個(gè)數(shù)均不相同,n為奇數(shù)。給定一個(gè)操作f(i),當(dāng)a_i>a_(i+1)時(shí),交換a_i與a_(i+1),否則不進(jìn)行交換?,F(xiàn)在我們想通過(guò)一種名叫“奇偶排序”的辦法,將該數(shù)組按增序排序,排序方法如下:在第k趟排序中:如果k為奇數(shù),則進(jìn)行f(1),f(3),f(5),....,f(n-2)的操作。如果k為偶數(shù),則進(jìn)行f(2),f(4),f(6),....,f(n-1)的操作??梢宰C明,通過(guò)這樣的辦法,一定可以將數(shù)組實(shí)現(xiàn)升序排序?,F(xiàn)在請(qǐng)你輸出,哪一趟排序完之后,數(shù)組第一次實(shí)現(xiàn)了升序排序。(如果已經(jīng)為升序,則輸出0)【輸入形式】第一行輸入一個(gè)數(shù)t(t<100),代表一共有t組數(shù)據(jù)。對(duì)每組數(shù)據(jù),輸入兩行,第一行為一個(gè)數(shù)n(3<=n<=999,n為奇數(shù)),代表數(shù)組的長(zhǎng)度。第二行輸入n個(gè)不同的數(shù)a_1,a_2,...,a_n(a_i<=1000)?!据敵鲂问健恳还灿衪行,對(duì)每組數(shù)據(jù),輸出一行答案,代表數(shù)組第一次實(shí)現(xiàn)了升序排序的趟數(shù)?!緲永斎搿?332174571326512345【樣例輸出】350【樣例說(shuō)明】第一組數(shù)據(jù)中,對(duì)應(yīng)排序過(guò)程為:在第一次排序后,對(duì)應(yīng)數(shù)組為[2,3,1];在第二次排序后,對(duì)應(yīng)數(shù)組為[2,1,3];在第三次排序后,對(duì)應(yīng)數(shù)組為[1,2,3];故答案為3。

答案:【測(cè)試用例1正確1分輸入10515432541325525431542531513542515324521435535142523154545213輸出:4355441435測(cè)試用例2正確1分輸入15925897413631237645327117171672148361113121011554931232342081622114231310123919617152152187115241357513642719111063151724918167125181314191119248113105679689147235935168724999847513621915851431317918191612211671014177161412515171048921363111輸出:70717019341287691417測(cè)試用例3正確輸入29693485217101100543910266095496851981973527289858101873680752072151330402148241152619689573770998831418142908619337153231617256482745448836241412329434747679676524785439156629596384937873315655692227746385069輸出:899測(cè)試用例4正確。1分輸入5761437525512343321523145514235輸出:64333測(cè)試用例5正確。1分輸入1171215397161451061241713118輸出:12】3.輸入任意整數(shù)存入變量n中,若n≤0則輸出“Error!”;否則組織循環(huán)結(jié)構(gòu)流程計(jì)算sum=1/2+2/3+3/4+…+n/(n+1)的值,然后分別輸出變量n和sum的值。

答案:【輸入n:1分輸出sum:1分判斷n<=0:1分循環(huán)賦初值:2分i=1,sum=0循環(huán)結(jié)構(gòu):1分Loop循環(huán)條件:1分i>n循環(huán)體:2分sum賦值,i賦值開(kāi)始結(jié)束:1分】第一章測(cè)驗(yàn)1.單選題:算法的空間復(fù)雜度是指【】

選項(xiàng):

A、算法程序的長(zhǎng)度

B、算法程序中的指令條數(shù)

C、算法程序所占的存儲(chǔ)空間

D、算法執(zhí)行過(guò)程中所需要的存儲(chǔ)空間

答案:【算法執(zhí)行過(guò)程中所需要的存儲(chǔ)空間】2.單選題:算法的時(shí)間復(fù)雜度是指【】

選項(xiàng):

A、執(zhí)行算法程序所需要的時(shí)間

B、算法程序的長(zhǎng)度

C、算法執(zhí)行過(guò)程中所需要的基本運(yùn)算次數(shù)

D、算法程序中的指令條數(shù)

答案:【算法執(zhí)行過(guò)程中所需要的基本運(yùn)算次數(shù)】3.單選題:下面敘述正確的是【】

選項(xiàng):

A、算法的執(zhí)行效率與數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)無(wú)關(guān)

B、算法的空間復(fù)雜度是指算法程序中指令(或語(yǔ)句)的條數(shù)

C、算法的有窮性是指算法必須能在執(zhí)行有限個(gè)步驟之后終止

D、以上三種描述都不對(duì)

答案:【算法的有窮性是指算法必須能在執(zhí)行有限個(gè)步驟之后終止】4.單選題:算法的有窮性是指:

選項(xiàng):

A、算法程序的運(yùn)行時(shí)間是有限的

B、算法程序所處理的數(shù)據(jù)量是有限的

C、算法程序的長(zhǎng)度是有限的

D、算法只能被有限的用戶使用

答案:【算法程序的運(yùn)行時(shí)間是有限的】5.單選題:程序流程圖中帶有箭頭的線段表示的是:

選項(xiàng):

A、圖元關(guān)系

B、數(shù)據(jù)流

C、控制流

D、調(diào)用關(guān)系

答案:【控制流】6.單選題:某算法的時(shí)間復(fù)雜度為O(),表明該算法的【】。

選項(xiàng):

A、問(wèn)題規(guī)模是

B、執(zhí)行時(shí)間等于

C、執(zhí)行時(shí)間與成正比

D、問(wèn)題規(guī)模與成正比

答案:【執(zhí)行時(shí)間與成正比】7.單選題:下列敘述中正確的是【】

選項(xiàng):

A、一個(gè)算法的空間復(fù)雜度大,則其時(shí)間復(fù)雜度也必定大

B、一個(gè)算法的空間復(fù)雜度大,則其時(shí)間復(fù)雜度必定小

C、一個(gè)算法的時(shí)間復(fù)雜度大,則其空間復(fù)雜度必定小

D、上述三種說(shuō)法都不對(duì)

答案:【上述三種說(shuō)法都不對(duì)】8.單選題:下列選項(xiàng)中不屬于結(jié)構(gòu)化程序設(shè)計(jì)方法的是【】

選項(xiàng):

A、自頂向下

B、逐步求精

C、模塊化

D、可復(fù)用

答案:【可復(fù)用】9.單選題:結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)的是【】

選項(xiàng):

A、程序的規(guī)模

B、程序的易讀性

C、程序的執(zhí)行效率

D、程序的可移植性

答案:【程序的易讀性】10.單選題:一個(gè)算法應(yīng)該是【】。

選項(xiàng):

A、程序

B、問(wèn)題求解步驟的描述

C、要滿足五個(gè)基本屬性

D、A和C

答案:【問(wèn)題求解步驟的描述】第二章鏈表與簡(jiǎn)單數(shù)據(jù)結(jié)構(gòu)第二章作業(yè)1.采用遞歸的方法逆序打印單鏈表:輸入一組字符,按順序建立單鏈表,最后逆序輸出。輸入的數(shù)據(jù)為字符型,輸入格式:第1行,字符的個(gè)數(shù)k;第2行,用空格分開(kāi)的k個(gè)字符。輸出格式:一行輸出,空格為分隔符。例:輸入:5abcde輸出:edcba

鏈表節(jié)點(diǎn)定義:0-2分構(gòu)建鏈表:0-2分遞歸實(shí)現(xiàn):0-2分輸出結(jié)果正確:0-2分】第二章測(cè)驗(yàn)1.單選題:已知H為不帶頭節(jié)點(diǎn)的單鏈表。在H的表頭插入一個(gè)新結(jié)點(diǎn)t的語(yǔ)句段是:()

選項(xiàng):

A、t->next=H;H=t;

B、H=t;t->next=H;

C、t->next=H->next;H=t;

D、t->next=H->next;H->next=t

答案:【t->next=H;H=t;】2.單選題:判斷帶頭結(jié)點(diǎn)的單鏈表H為空的條件是()

選項(xiàng):

A、H==NULL

B、H=NULL

C、H->next==NULL

D、H->next==H

答案:【H->next==NULL】3.單選題:已知H是帶頭節(jié)點(diǎn)的單鏈表,節(jié)點(diǎn)p既不是第一個(gè)節(jié)點(diǎn),也不是尾節(jié)點(diǎn),刪除p節(jié)點(diǎn)直接后繼的語(yǔ)句是()

選項(xiàng):

A、p->next=null;

B、p=p->next;

C、p=p->next->next;

D、p->next=p->next->next;

答案:【p->next=p->next->next;】4.單選題:某線性表中最常用的操作是“在最后一個(gè)元素之后插入一個(gè)元素”和“刪除第一個(gè)元素”,則采用哪種數(shù)據(jù)結(jié)構(gòu)最節(jié)省操作時(shí)間()。

選項(xiàng):

A、單鏈表

B、僅有頭指針的單循環(huán)鏈表

C、僅有尾指針的單循環(huán)鏈表

D、以上三種都一樣

答案:【僅有尾指針的單循環(huán)鏈表】5.單選題:在一個(gè)單向循環(huán)鏈表中,若要在p所指的節(jié)點(diǎn)之后插入一個(gè)新結(jié)點(diǎn)s,則需要執(zhí)行下面哪個(gè)語(yǔ)句段()。

選項(xiàng):

A、p->next=s;s->next=p;

B、s->next=p->next;p->next=s;

C、s->next=p->next;p=s;

D、s->next=p;p->next=s;

答案:【s->next=p->next;p->next=s;】6.單選題:在一個(gè)以H為頭節(jié)點(diǎn)的單循環(huán)鏈表中,指針p指向鏈表尾的條件是()。

選項(xiàng):

A、p->next==H

B、p->next==NULL

C、p->next->next==H

D、p->next=H

答案:【p->next==H】7.單選題:已知鏈表H,指針p指向H中某結(jié)點(diǎn),執(zhí)行語(yǔ)句p=p->next不會(huì)刪除該鏈表中結(jié)點(diǎn)。

選項(xiàng):

A、正確

B、錯(cuò)誤

答案:【正確】8.單選題:鏈表的長(zhǎng)度是鏈表所占用的存儲(chǔ)空間的大小。

選項(xiàng):

A、正確

B、錯(cuò)誤

答案:【錯(cuò)誤】9.單選題:在單鏈表中,只要知道某個(gè)節(jié)點(diǎn)的指針即可訪問(wèn)該節(jié)點(diǎn)。因此,單鏈表是一種隨機(jī)存取結(jié)構(gòu)。

選項(xiàng):

A、正確

B、錯(cuò)誤

答案:【錯(cuò)誤】[vk-content]10.單選題:線性表采用鏈?zhǔn)酱鎯?chǔ),便于插入和刪除操作。

選項(xiàng):

A、正確

B、錯(cuò)誤

答案:【正確】第三章數(shù)據(jù)存儲(chǔ)及內(nèi)存管理第三章測(cè)驗(yàn)1.單選題:執(zhí)行以下語(yǔ)句后,變量a的值是?inta=1;int*p1=&a;*p1=2;a=3;int*p2=p1;*p2=4;

選項(xiàng):

A、1

B、2

C、3

D、4

答案:【4】2.單選題:下列函數(shù)的輸出內(nèi)容是:chara[10]={"abcdefg"};char*p=&a[3];cout<<p;

選項(xiàng):

A、“defg”

B、“defg”

C、“de”

D、“de”

答案:【“defg”】3.單選題:下列函數(shù)的運(yùn)行結(jié)果是:inta[6]={1,2,3,4,5,6};int*p=a;cout<<*p++;cout<<*(p++);cout<<*(++p);cout<<*++p;

選項(xiàng):

A、1234

B、1245

C、2345

D、2356

答案:【1245】4.單選題:已知有如下代碼,執(zhí)行后*p1和*p2的值是?int*p1,p2;inta=1;p1=&a;p2=p1;*p1=2;*p2=3;

選項(xiàng):

A、23

B、33

C、21

D、無(wú)法編譯

答案:【無(wú)法編譯】5.單選題:閱讀以下代碼,請(qǐng)問(wèn)函數(shù)的輸出結(jié)果是?#includeusingnamespacestd;intmain(){inta=1;intb=2;intc=3;intd=4;int*p1=&a;int*p2=&b;int*p3=&c;p2=p3;p1=&d;p3=p1;cout<<a<<<<<*p1<<*p2<<*p3;<span=""><<<<*p1<<*p2<<*p3;<>}

選項(xiàng):

A、4344434

B、1234434

C、4344411

D、1234411

答案:【1234434】6.多選題:已知inta=1;下列四句話,能夠成功編譯的是:

選項(xiàng):

A、int*p1=a;

B、int*p2=&a;

C、int*p3=*p1;

D、int*p4=&*p2;

答案:【int*p2=&a;;int*p4=&*p2;】第三章作業(yè)1.【題目描述】用鏈表實(shí)現(xiàn)插入排序,從小到大排序?!据斎敫袷健康谝恍幸粋€(gè)數(shù)n表示數(shù)的個(gè)數(shù)第二行n個(gè)數(shù)表示待排序的序列【輸出格式】一行n個(gè)數(shù)表示排序的結(jié)果?!緲永斎搿?321【樣例輸出】123

答案:【正確定義了鏈表結(jié)點(diǎn)類(lèi)(或結(jié)構(gòu)體)類(lèi)的數(shù)據(jù)成員定義正確類(lèi)的構(gòu)造函數(shù)正確類(lèi)的析構(gòu)函數(shù)正確鏈表能夠被正確建立,不發(fā)生運(yùn)行時(shí)錯(cuò)誤鏈表能夠正確完成插入排序的功能能夠正確按順序輸出排序后的答案防止了內(nèi)存泄漏問(wèn)題】2.【題目描述】給你一個(gè)字符串,其中有若干數(shù)字,利用鏈表相關(guān)知識(shí)從頭開(kāi)始將數(shù)字按順序移動(dòng)至字符串末端。如19js98ss移動(dòng)后是jsss1998【樣例輸入】19js98ss【樣例輸出】jsss1998

答案:【正確定義了數(shù)據(jù)存儲(chǔ)(例如數(shù)組、鏈表)正確遍歷整個(gè)數(shù)組正確完成輸入字符串的讀入正確判斷數(shù)字正確完成將所有數(shù)字移動(dòng)至末尾的功能能夠正確輸出答案能夠正確按順序輸出排序后的答案】第四章面向?qū)ο蟮母拍罴皯?yīng)用第四章測(cè)驗(yàn)1.多選題:以下關(guān)于智能指針,描述正確的是

選項(xiàng):

A、make_unique()函數(shù)不會(huì)創(chuàng)建新的對(duì)象。

B、智能指針本質(zhì)是函數(shù)模板。

C、share_ptr指針與其他指針一起管理動(dòng)態(tài)對(duì)象,只有當(dāng)管理此對(duì)象的所有指針生存期結(jié)束之后,此對(duì)象才能被釋放。

D、weak_ptr可以指向share_ptr所管理的動(dòng)態(tài)對(duì)象。

答案:【share_ptr指針與其他指針一起管理動(dòng)態(tài)對(duì)象,只有當(dāng)管理此對(duì)象的所有指針生存期結(jié)束之后,此對(duì)象才能被釋放。;weak_ptr可以指向share_ptr所管理的動(dòng)態(tài)對(duì)象。】2.多選題:關(guān)于對(duì)象的復(fù)制和移動(dòng)語(yǔ)義,以下描述正確的是

選項(xiàng):

A、將一個(gè)對(duì)象賦值給另一個(gè)對(duì)象時(shí),會(huì)調(diào)用復(fù)制構(gòu)造函數(shù)。

B、用一個(gè)舊對(duì)象去初始化新對(duì)象時(shí),會(huì)調(diào)用復(fù)制構(gòu)造函數(shù)。

C、在實(shí)現(xiàn)移動(dòng)構(gòu)造函數(shù)時(shí)要將動(dòng)態(tài)數(shù)組的控制權(quán)由傳入對(duì)象轉(zhuǎn)移給當(dāng)前對(duì)象。

D、左值引用可以引用匿名對(duì)象。

答案:【用一個(gè)舊對(duì)象去初始化新對(duì)象時(shí),會(huì)調(diào)用復(fù)制構(gòu)造函數(shù)。;在實(shí)現(xiàn)移動(dòng)構(gòu)造函數(shù)時(shí)要將動(dòng)態(tài)數(shù)組的控制權(quán)由傳入對(duì)象轉(zhuǎn)移給當(dāng)前對(duì)象。】3.多選題:關(guān)于迭代器,以下描述正確的是

選項(xiàng):

A、由std::set::const_iteratorit;定義的迭代器it,僅適用于set型容器。

B、由std::set::const_iteratorit;定義的迭代器it,可以進(jìn)行自增自減運(yùn)算。

C、容器stack、容器queue、容器priority_queue沒(méi)有迭代器。

D、使用間址運(yùn)算可獲取迭代器所指元素的值。

答案:【由std::set::const_iteratorit;定義的迭代器it,僅適用于set型容器。;容器stack、容器queue、容器priority_queue沒(méi)有迭代器。;使用間址運(yùn)算可獲取迭代器所指元素的值?!?.多選題:關(guān)于容器,描述正確的是

選項(xiàng):

A、vector容器本質(zhì)上是類(lèi)模板

B、deque容器具備vector容器所沒(méi)有的功能,即將新元素添加到序列尾端。

C、array、vector和deque中的元素會(huì)被按序存放在一塊連續(xù)的內(nèi)存中。

D、在刪除頭尾元素的情形下,list容器與vector容器效率一樣。

答案:【vector容器本質(zhì)上是類(lèi)模板;array、vector和deque中的元素會(huì)被按序存放在一塊連續(xù)的內(nèi)存中。;在刪除頭尾元素的情形下,list容器與vector容器效率一樣?!?.多選題:關(guān)于類(lèi)模板,描述正確的是

選項(xiàng):

A、類(lèi)模板制作出的類(lèi)中數(shù)據(jù)成員個(gè)數(shù)相同并且函數(shù)成員個(gè)數(shù)也相同。

B、類(lèi)模板如果有數(shù)組型的數(shù)據(jù)成員,數(shù)組的長(zhǎng)度可以用變量定義。

C、類(lèi)模板內(nèi)部有可能出現(xiàn)對(duì)全局函數(shù)的定義。

D、對(duì)類(lèi)模板中的成員函數(shù)進(jìn)行專(zhuān)門(mén)化處理的目的是讓成員函數(shù)適用于特殊場(chǎng)景。

答案:【類(lèi)模板制作出的類(lèi)中數(shù)據(jù)成員個(gè)數(shù)相同并且函數(shù)成員個(gè)數(shù)也相同。;類(lèi)模板如果有數(shù)組型的數(shù)據(jù)成員,數(shù)組的長(zhǎng)度可以用變量定義。;類(lèi)模板內(nèi)部有可能出現(xiàn)對(duì)全局函數(shù)的定義。;對(duì)類(lèi)模板中的成員函數(shù)進(jìn)行專(zhuān)門(mén)化處理的目的是讓成員函數(shù)適用于特殊場(chǎng)景?!?.多選題:關(guān)于函數(shù)模板,描述正確的是()

選項(xiàng):

A、函數(shù)模板的功能是制作一組參數(shù)類(lèi)型相同的函數(shù)。

B、編譯器在編譯由模板定義的函數(shù)時(shí),對(duì)于函數(shù)調(diào)用語(yǔ)句,會(huì)根據(jù)形參的類(lèi)型,對(duì)實(shí)參進(jìn)行類(lèi)型轉(zhuǎn)換。

C、template中的T可以作為返回類(lèi)型、參數(shù)類(lèi)型和函數(shù)中的變量類(lèi)型。

D、編譯器負(fù)責(zé)實(shí)現(xiàn)函數(shù)模板的實(shí)例化。

答案:【template中的T可以作為返回類(lèi)型、參數(shù)類(lèi)型和函數(shù)中的變量類(lèi)型。;編譯器負(fù)責(zé)實(shí)現(xiàn)函數(shù)模板的實(shí)例化。】7.多選題:以下關(guān)于類(lèi)間關(guān)系,描述正確的是()

選項(xiàng):

A、有類(lèi)A和類(lèi)B,如果A包含B類(lèi)型的數(shù)據(jù)成員,則類(lèi)A和B是has-a關(guān)系。

B、有類(lèi)A和類(lèi)B,如果A包含B類(lèi)型的指針或引用,則A和B是part-of關(guān)系。

C、use-a和has-a關(guān)系在代碼中的表現(xiàn)形式是相同的,我們只能從語(yǔ)義的角度區(qū)分這兩種關(guān)系。

D、part-of、has-a、uses-a這三種關(guān)系的共同點(diǎn)是A類(lèi)中包含B類(lèi)型的成員。

答案:【use-a和has-a關(guān)系在代碼中的表現(xiàn)形式是相同的,我們只能從語(yǔ)義的角度區(qū)分這兩種關(guān)系。;part-of、has-a、uses-a這三種關(guān)系的共同點(diǎn)是A類(lèi)中包含B類(lèi)型的成員?!?.多選題:以下關(guān)于類(lèi)的繼承關(guān)系,描述正確的是()

選項(xiàng):

A、類(lèi)之間的繼承關(guān)系具有傳遞性。

B、父類(lèi)具有子類(lèi)的特征。

C、一個(gè)基類(lèi)可以有多個(gè)派生類(lèi)。

D、一個(gè)派生類(lèi)可以有多個(gè)基類(lèi)。

答案:【類(lèi)之間的繼承關(guān)系具有傳遞性。;一個(gè)基類(lèi)可以有多個(gè)派生類(lèi)。;一個(gè)派生類(lèi)可以有多個(gè)基類(lèi)?!?.單選題:weak_ptr僅能存儲(chǔ)動(dòng)態(tài)對(duì)象的地址,不能訪問(wèn)對(duì)象的成員。

選項(xiàng):

A、正確

B、錯(cuò)誤

答案:【正確】10.單選題:move()函數(shù)可將賦值運(yùn)算符的右操作數(shù)強(qiáng)制轉(zhuǎn)換為左值。

選項(xiàng):

A、正確

B、錯(cuò)誤

答案:【錯(cuò)誤】11.單選題:右值引用的宿主生存期非常短,通常是用完就會(huì)被釋放掉。

選項(xiàng):

A、正確

B、錯(cuò)誤

答案:【正確】12.單選題:可以用下標(biāo)訪問(wèn)list容器中的元素。

選項(xiàng):

A、正確

B、錯(cuò)誤

答案:【錯(cuò)誤】13.單選題:派生類(lèi)對(duì)象不會(huì)建立基類(lèi)的私有數(shù)據(jù)成員。

選項(xiàng):

A、正確

B、錯(cuò)誤

答案:【錯(cuò)誤】14.單選題:派生類(lèi)公有繼承基類(lèi)時(shí),可以訪問(wèn)基類(lèi)的所有數(shù)據(jù)成員。

選項(xiàng):

A、正確

B、錯(cuò)誤

答案:【錯(cuò)誤】第四章作業(yè)1.繼續(xù)完善大學(xué)數(shù)據(jù)處理程序。要求:思考在處理大學(xué)數(shù)據(jù)時(shí)可使用哪些容器模板,并利用容器模板改寫(xiě)代碼。思考在處理大學(xué)數(shù)據(jù)時(shí)可使用哪些算法模板,并利用算法模板改寫(xiě)代碼。思考在處理大學(xué)數(shù)據(jù)時(shí)有哪些功能相近的操作,自定義并使用函數(shù)模板。思考在處理對(duì)象之間的復(fù)制操作時(shí),如何利用移動(dòng)構(gòu)造函數(shù)使復(fù)制操作更有效率。提交:源代碼(壓縮成rar文件上傳)。實(shí)驗(yàn)報(bào)告(填寫(xiě)到答題框中),需包含:體現(xiàn)程序功能的多張運(yùn)行截圖、體現(xiàn)使用容器模板的關(guān)鍵代碼及其文字分析、體現(xiàn)使用算法模板的關(guān)鍵代碼及其文字分析、體現(xiàn)自定義函數(shù)模板的關(guān)鍵代碼和文字分析、體現(xiàn)移動(dòng)構(gòu)造函數(shù)的關(guān)鍵代碼及其文字分析。

答案:【所提交文件的完整性和規(guī)范性:提交了實(shí)驗(yàn)報(bào)告,并且實(shí)驗(yàn)報(bào)告書(shū)寫(xiě)清晰規(guī)范(1分)提交了源代碼,源代碼書(shū)寫(xiě)清晰規(guī)范,包含適當(dāng)?shù)淖⑨專(zhuān)?分)實(shí)驗(yàn)報(bào)告中包含體現(xiàn)容器模板使用的關(guān)鍵代碼(1分),對(duì)關(guān)鍵代碼有合理的文字分析(1分)實(shí)驗(yàn)報(bào)告中包含體現(xiàn)算法模板使用的關(guān)鍵代碼(1分),對(duì)關(guān)鍵代碼有合理的文字分析(1分)實(shí)驗(yàn)報(bào)告中包含體現(xiàn)自定義函數(shù)模板的關(guān)鍵代碼(1分),對(duì)關(guān)鍵代碼有合理的文字分析(1分)實(shí)驗(yàn)報(bào)告中包含體現(xiàn)移動(dòng)構(gòu)造函數(shù)的關(guān)鍵代碼(1分),對(duì)關(guān)鍵代碼有合理的文字分析(1分)】2.編寫(xiě)C++程序處理某大學(xué)的數(shù)據(jù),大學(xué)的數(shù)據(jù)包括學(xué)生信息、教師信息、課程信息、選課信息、教室信息等。(1)思考并定義所需的類(lèi)以及類(lèi)間關(guān)系。(2)類(lèi)的數(shù)目需在三個(gè)以上,類(lèi)間關(guān)系需體現(xiàn)part-of、has-a、use-a、is-a。(3)在處理繼承關(guān)系時(shí),需用到虛函數(shù)和抽象類(lèi)。提交:(1)源代碼(壓縮成rar文件上傳)。(2)實(shí)驗(yàn)報(bào)告(填寫(xiě)到答題框中),需包含:包含所有類(lèi)和類(lèi)間關(guān)系的類(lèi)圖、體現(xiàn)程序功能的多張運(yùn)行截圖、體現(xiàn)以上四種類(lèi)間關(guān)系的關(guān)鍵代碼及其文字分析、體現(xiàn)虛函數(shù)和抽象類(lèi)使用的關(guān)鍵代碼和文字分析。

答案:【所提交文件的完整性和規(guī)范性:提交了實(shí)驗(yàn)報(bào)告,并且實(shí)驗(yàn)報(bào)告書(shū)寫(xiě)清晰規(guī)范(1分)提交了源代碼,源代碼書(shū)寫(xiě)清晰規(guī)范,包含適當(dāng)?shù)淖⑨專(zhuān)?分)類(lèi)圖清晰規(guī)范(包含三個(gè)以上類(lèi)以及它們之間的關(guān)系)(1分)實(shí)驗(yàn)報(bào)告中包含體現(xiàn)part-of關(guān)系的關(guān)鍵代碼(1分),對(duì)關(guān)鍵代碼有準(zhǔn)確的文字分析(1分)實(shí)驗(yàn)報(bào)告中包含體現(xiàn)has-a關(guān)系的關(guān)鍵代碼(1分),對(duì)關(guān)鍵代碼有準(zhǔn)確的文字分析(1分)實(shí)驗(yàn)報(bào)告中包含體現(xiàn)use-a關(guān)系的關(guān)鍵代碼(1分),對(duì)關(guān)鍵代碼有準(zhǔn)確的文字分析(1分)實(shí)驗(yàn)報(bào)告中包含體現(xiàn)is-a關(guān)系的關(guān)鍵代碼(1分),對(duì)關(guān)鍵代碼有準(zhǔn)確的文字分析(1分)實(shí)驗(yàn)報(bào)告中包含體現(xiàn)虛函數(shù)定義及其使用的關(guān)鍵代碼(1分),對(duì)關(guān)鍵代碼有合理的文字分析(1分)實(shí)驗(yàn)報(bào)告中包含體現(xiàn)抽象類(lèi)定義的關(guān)鍵代碼(1分),對(duì)關(guān)鍵代碼有合理的文字分析(1分)】第五章程序規(guī)范與調(diào)試第五章作業(yè)1.邏輯錯(cuò)誤示例2:交換a和b的值#includeintmain(){inta,b;a=3;b=4;a=b;b=a;cout<<”交換后,a的值為:”<<<”,b的值為:”<<<<”,b的值為:”<<

答案:【修改后程序能正常運(yùn)行使用臨時(shí)變量存儲(chǔ)a或b的值,成功交換a、b的值】2.邏輯錯(cuò)誤示例1:求1+2+……+99的值#includeUsingnamespacestd;intmain(){intsum=0;for(i=1;i<=100;i++){sum=sum+i;}cout<<”和為”<<<

答案:【修改后程序能正常運(yùn)行for循環(huán)中i終止的判斷條件為i<100或i<=99或for(i=99;i>0;i--)等,答案合理即可】3.找出語(yǔ)法錯(cuò)誤:#includeUsingnamespacestd;intmain()(intn,n2;n=5;n2=n*n;cout<<“n=“<<<”,n的平方=”<<<<”,n的平方=”<<

答案:【找到程序出錯(cuò)點(diǎn),即使用小括號(hào)包圍函數(shù)體將小括號(hào)改為花括號(hào)】第五章測(cè)驗(yàn)1.單選題:對(duì)于給定的整數(shù)數(shù)組,求出最大值,程序運(yùn)行結(jié)果沒(méi)有求出最大值。這種錯(cuò)誤屬于()

選項(xiàng):

A、語(yǔ)法錯(cuò)誤

B、運(yùn)行錯(cuò)誤

C、邏輯錯(cuò)誤

D、調(diào)用錯(cuò)誤

答案:【邏輯錯(cuò)誤】2.單選題:在某段代碼代碼中,如果函數(shù)沒(méi)有定義出現(xiàn)的錯(cuò)誤屬于()

選項(xiàng):

A、語(yǔ)法錯(cuò)誤

B、運(yùn)行錯(cuò)誤

C、邏輯錯(cuò)誤

D、調(diào)用錯(cuò)誤

答案:【語(yǔ)法錯(cuò)誤】3.單選題:注釋不但為了提高可讀性,而且會(huì)被計(jì)算機(jī)編譯。

選項(xiàng):

A、正確

B、錯(cuò)誤

答案:【錯(cuò)誤】4.單選題:注釋是編寫(xiě)程序的人給一條語(yǔ)句、程序段、函數(shù)、類(lèi)和文件等的解釋或提示,能提高程序代碼的可讀性。

選項(xiàng):

A、正確

B、錯(cuò)誤

答案:【正確】5.單選題:代碼閱讀的次數(shù)多于編寫(xiě)的次數(shù),但是為了保證程序員很好的編寫(xiě)代碼,應(yīng)該確保索取的名字更側(cè)重于編寫(xiě)方便,而不是閱讀方便。

選項(xiàng):

A、正確

B、錯(cuò)誤

答案:【錯(cuò)誤】第六章如何用算法解決問(wèn)題第六章作業(yè)1.給定一個(gè)由十位阿拉伯?dāng)?shù)字組成的密碼,通過(guò)枚舉所有的可能情況破解出正確的密碼。給定的密碼為9090909011。

答案:【定義正確的密碼定義組成密碼的所有可能字符的密碼字典定義枚舉函數(shù)枚舉函數(shù)能輪詢(xún)所有的值能破解正確密碼】2.有五個(gè)物品,他們各自的重量和價(jià)值如下:·物品1:weight=2,value=3·物品2:weight=3,value=4·物品3:weight=4,value=5·物品4:weight=5,value=6·物品5:weight=6,value=9而背包能夠承受的最大重量為10,如何才能讓背包里裝入的物品的價(jià)值總和最大?

答案:【定義物品重量和價(jià)值的數(shù)組代碼中體現(xiàn)出問(wèn)題的解法數(shù)量對(duì)每一種解法與當(dāng)前解法的物品價(jià)值對(duì)比,選擇不超過(guò)最大重量且價(jià)值較高的解法輸出最優(yōu)解法使在不超過(guò)最大重量,物品的總價(jià)值最高】3.有四個(gè)物品,他們各自的重量和價(jià)值如下:·物品1:weight=2,value=3·物品2:weight=3,value=4·物品3:weight=4,value=5·物品4:weight=5,value=6而背包能夠承受的最大重量為8,如何才能讓背包里裝入的物品的價(jià)值總和最大?

答案:【定義物品重量和價(jià)值的數(shù)組得到問(wèn)題的解法數(shù)量對(duì)每一種解法與當(dāng)前解法的物品價(jià)值對(duì)比,選擇不超過(guò)最大重量且價(jià)值較高的解法輸出最優(yōu)解法使在不超過(guò)最大重量,物品的總價(jià)值最高】4.倉(cāng)頡造數(shù)【問(wèn)題描述】我們要求找出具有下列性質(zhì)數(shù)的個(gè)數(shù)(包含輸入的正整數(shù)nn)。先輸入一個(gè)正整數(shù)nn,然后對(duì)此正整數(shù)按照如下方法進(jìn)行處理:不作任何處理;在它的左邊加上一個(gè)正整數(shù),但該正整數(shù)不能超過(guò)原數(shù)的一半;加上數(shù)后,繼續(xù)按此規(guī)則進(jìn)行處理,直到不能再加正整數(shù)為止?!据斎胄问健?個(gè)正整數(shù)n(n<1000)【輸出形式】1個(gè)整數(shù),表示具有該性質(zhì)數(shù)的個(gè)數(shù)。【樣例輸入】6【樣例輸出】6【樣例說(shuō)明】滿足條件的數(shù)為6,16,26,126,36,136

答案:【測(cè)試用例1正確。測(cè)試用例2正確。測(cè)試用例3正確。測(cè)試用例4正確。測(cè)試用例5正確?!?.整數(shù)分治【問(wèn)題描述】將整數(shù)n分成kn分成k份,且每份不能為空,任意兩個(gè)方案不相同(不考慮順序)。例如n=7,k=3時(shí),下列三種分法視為相同的:1,1,51,5,15,1,1問(wèn)有多少種不同的分法?!据斎胄问健枯斎雰蓚€(gè)數(shù)n(7<=n<=200),k,(2<=k<=6)【輸出形式】1個(gè)整數(shù),即不同的分法?!緲永斎搿?3【樣例輸出】4【樣例說(shuō)明】四種分法為:1,1,51,2,41,3,32,3,31,

答案:【測(cè)試用例1正確。測(cè)試用例2正確。測(cè)試用例3正確。測(cè)試用例4正確。測(cè)試用例5正確?!康诹聹y(cè)驗(yàn)1.單選題:寫(xiě)出如下程序的運(yùn)行結(jié)果:1.#include2.usingnamespacestd;3.voide(int);4.5.main()6.{7.inta;8.a=3;9.e(a);10.}11.12.voide(intn)13.{14.if(n>0)15.{16.e(--n);17.cout<<<””;18.e(--n);=""19.}=""20.}<=""code=""><<””;>

選項(xiàng):

A、0120

B、0121

C、1201

D、0211

答案:【0120】2.單選題:對(duì)遞歸程序的優(yōu)化的一般的手段為【】

選項(xiàng):

A、尾遞歸優(yōu)化

B、循環(huán)優(yōu)化

C、堆棧優(yōu)化

D、停止值優(yōu)化

答案:【尾遞歸優(yōu)化】3.單選題:一個(gè)遞歸算法必須包括【】

選項(xiàng):

A、遞歸部分

B、終止條件和遞歸部分

C、循環(huán)部分

D、終止條件和循環(huán)部分

答案:【終止條件和遞歸部分】4.單選題:請(qǐng)問(wèn)當(dāng)調(diào)用f(10)時(shí),f()被調(diào)用多少次?intf(intx){if(x<=2)return1;returnf(x-2)+f(x-4)+1;}

選項(xiàng):

A、14

B、15

C、20

D、24

答案:【15】5.單選題:下面哪種排序算法最適合對(duì)雜亂無(wú)章的數(shù)據(jù)進(jìn)行排序()

選項(xiàng):

A、冒泡排序

B、快速排序

C、選擇排序

D、插入排序

答案:【快速排序】6.單選題:對(duì)下列關(guān)鍵字序列用快速排序法進(jìn)行排序時(shí),速度最慢的是()

選項(xiàng):

A、(30,25,35,15,20,5,10)

B、(20,10,15,35,30,25,5)

C、(20,30,5,15,10,25,35)

D、(5,10,15,20,25,30,35)

答案:【(5,10,15,20,25,30,35)】7.單選題:下面哪種算法是針對(duì)大數(shù)據(jù)具有優(yōu)秀的排序性能,且實(shí)現(xiàn)相對(duì)簡(jiǎn)單()

選項(xiàng):

A、冒泡排序

B、插入排序

C、選擇排序

D、快速排序

答案:【快速排序】8.單選題:冒泡排序算法最壞情況下的時(shí)間復(fù)雜度是()

選項(xiàng):

A、Θ(n)

B、Θ()

C、Θ(nlogn)

D、Θ()

答案:【Θ()】9.寫(xiě)出以下遞歸程序的運(yùn)行結(jié)果#includeusingnamespacestd;voidf(intx[].Intn){if(n>1){f(&x[1],n-1);cout<<x[0];}elsecout<<x[0];}intmain(){intz[6]={1,2,3,4,5,6};f(z,6);cout<<”\n”;return0;}

答案:【654321】第七章綜合練習(xí)——文本檢索第七章測(cè)驗(yàn)1.單選題:下列哪種算法在文本匹配時(shí),不需要文本指針回溯()

選項(xiàng):

A、BF算法

B、AC算法

C、Wu-Maner算法

D、KMP算法

答案:【AC算法】2.單選題:在KMP算法中,計(jì)算模式串中各位置最長(zhǎng)相同前后綴長(zhǎng)度的數(shù)組kmpNext,是在()階段進(jìn)行計(jì)算

選項(xiàng):

A、預(yù)處理階段

B、文本匹配階段

C、文本指針回溯階段

D、文本讀取階段

答案:【預(yù)處理階段】3.單選題:對(duì)于模式={GCAGTM}建立壞字符數(shù)組bmBc[],沒(méi)有出現(xiàn)在模式中的字符K,bmBc[k]是()

選項(xiàng):

A、7

B、6

C、8

D、2

答案:【6】4.單選題:對(duì)于給定的一段文本和一個(gè)模式,下面幾種算法中,那種算法比較次數(shù)最多()

選項(xiàng):

A、BM算法

B、AC-BM算法

C、BF算法

D、KMP算法

答案:【BF算法】第七章作業(yè)1.有文本集“All_of_the_students_are_very_cool_in_this_school.”,模式集{student,crude,school},請(qǐng)根據(jù)此模式集,使用Wu-Manber算法,假設(shè)B=2,計(jì)算SHIFT表、HASH表和PREFIX表。

答案:【計(jì)算正確的SHIFT表計(jì)算正確的HASH表計(jì)算正確的PREFIX表】2.有個(gè)文本集“abdenet

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論