面向?qū)ο蟮某绦蛟O(shè)計_第1頁
面向?qū)ο蟮某绦蛟O(shè)計_第2頁
面向?qū)ο蟮某绦蛟O(shè)計_第3頁
面向?qū)ο蟮某绦蛟O(shè)計_第4頁
面向?qū)ο蟮某绦蛟O(shè)計_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

江南大學(xué)網(wǎng)絡(luò)教育第三階段練習(xí)題考試科目:《面向?qū)ο蟮某绦蛟O(shè)計》第章至第章(總分100分)學(xué)習(xí)中心(教學(xué)點)批次:層次:專業(yè):學(xué)號:身份證號:姓名: 得分:一單選題(共8題,總分值8分,下列選項中有且僅有一個選項符合題目要求,請在答題卡上正確填涂。)在打開磁盤文件的訪問方式常量中,(C)是以追加方式打開文件的。(1分)in B.out C.app D.atecatch(???)一般放在其他catch子句的后面,該子句的作用是(B)。 (1分)拋擲異常 B.捕獲所有類型的異常C.檢測并處理異常 D.有語法錯誤建立類模板對象的實例化過程為(C)。 (1分)基類-->派生類 B.構(gòu)造函數(shù)-->對象C.模板類-->對象 D.模板類-->模板函數(shù)下列輸出字符'A'的方法中,(B)是錯誤的。(1分)A.cout<<'A'; B.cout<<put('A');C.cout.put('A'); D.char='A';cout<<a;使用控制符進行格式輸出時,應(yīng)包含(C)文件。(1分)A.iostream.h B.math.h C.iomanip.h D.fstream.h下列選項中,用于清除基數(shù)格式位設(shè)置以八進制輸出的語句是(C)。 (1分)cout<<setf(ios::dec,ios::basefield);cout<<setf(ios::hex,ios::basefield);cout<<setf(ios::oct,ios::basefield);cin>>setf(ios::hex,ios::basefield);

假定已定義整型變量data,以二進制方式把data的值寫人輸出文件流對象outfile中去,正確的語句是(C)。 (1分)outfile.write((int*)&data,sizeof(int));outfile.write((int*)&data,data);outfile.write((char*)&data,sizeof(int));outfile.write((char*)&data,data);下列類中(A)不是輸入輸出流類iostream的基類。(1分)A.fstreamB.istreamC.ostream D.iosA.fstreamB.istreamC.ostream D.ios二多選題(共4題,總分值12分,下列選項中至少有2個或2個以上選項符合題目要求,請在答題卡上正確填涂。)TOC\o"1-5"\h\z下列的模板說明中,正確的是(AC)。 (3分)A.templateVtypenameT1,typenameT2> B.templateVclassT1,T2>C.template(classT1,classT2) D.template(typenameT1,T2)下面(ABC)語句能把“Hello,students”賦值給一個字符數(shù)組string[50]。 (3分)A.cin>>string; B.cin.getline(string,80);C.cin.get(string,40,'\n'); D.cin.get(string);下列說法中錯誤的是(CD)。 (3分)引發(fā)異常后,首先在引發(fā)異常的函數(shù)內(nèi)部尋找異常處理過程拋出異常是沒有任何危險的"拋出異常'和"捕捉異常”兩種操作最好放在同一個函數(shù)中異常處理過程在處理完異常后,可以通過帶有參數(shù)的throw繼續(xù)傳播異常下面(ABD)是標準模板庫中的主要組件。(3分)A.容器 B.迭代器 C.文件 D.算法三名詞解釋題供2題,總分值4分)模板類(2分)答案:美模板逋過參數(shù)賣捌化構(gòu)造出的具體類稱為棋板類「類模板(2分)答案:費類屬參數(shù)的類稱為類模板.四填空題供15題,總分值30分)使用文件流類庫的程序必須用#include編譯指令將頭文件—fstream.H—包含進來。(2分)在小型程序開發(fā)中,一旦發(fā)生異常所采取的方法一般是。 (2分)L5.答案;將程序立即中斷運行,從而無條件暮放所有資源最好用istream的函數(shù)和ostream的函數(shù)、分別來L7.答案:read()?vr<jte()讀/寫二進制文件。(2分)當實際進行I/O操作時,cin與標準輸入設(shè)備相關(guān)聯(lián)。(2分)下列格式控制符,在iostream.h中定義的是、,在iomanip.h中定義的是、。 (2分)答案:enrilsOetj sewSTL迭代器主要包括5種基本類別:、、、和。 (2分)答案:輸入迭代器,輸出迭代器,前向迭代器,雙向迭代器,隨機訪問迭代器—tlTIIIkVI如果預(yù)料某段程序(或?qū)δ硞€函數(shù)的調(diào)用)有可能發(fā)生異常,就將它放在 中。(2分)答案;tryi§句塊松按數(shù)據(jù)的存取方式來分類,文件可分為和。(2分)我.答案!順序文件』隨機讀與文件STL提供的容器是常用數(shù)據(jù)結(jié)構(gòu)的。 (2分)答案t類模板打開文件就是使一個文件流對象與相關(guān)聯(lián)。(2分)21答案】一個指定的文件在異常處理程序中發(fā)現(xiàn)異常,可以在語句中再用throw語句拋出。(2分)25-答案:ca.tch如果異常類型聲明是一個省略號(???),catch子句便處理型的異常,這段處理程序必須是catch塊的最后一段處理程序。(2分)26,答案:任何函數(shù)原型的拋出列表是一個空表,表示該函數(shù)任何類型的異常。(2分)答案;:不拋出重載函數(shù)模板便于定或者函數(shù)參數(shù)的類型、個數(shù)不相同所進行的答案:美屬參蚣類促 操作。(2分)關(guān)鍵字是定義模板的關(guān)鍵字。(2分)20.答案:tempia.te五判斷題供10題,總分值10分正確的填涂“A”,錯誤的填涂“B”。)如果異常處理程序捕獲到異常后,必須馬上處理。(1分)(B)read()函數(shù)只能用于文本文件的操作中。(1分)(B)異常接口定義的異常參數(shù)表為空,表示可以引發(fā)任何類型的異常。(1分)(B)迭代器就是我們平時所用的指針。(1分)(B)一個異??梢允浅愐酝獾娜魏晤愋?。(1分)(B)函數(shù)write()是用來將一個字符串送到一種輸出流中,但必須將一個字符串全部的字符都送到輸出流中。(1分)(B)作為模板類型參數(shù)的關(guān)鍵字class,特別含義是“任何用戶定義類的類型”。(1分)(B)在類模板的〈模板參數(shù)表>中,可以使用函數(shù)類型參數(shù),該參數(shù)與普通函數(shù)參數(shù)的用法和功效完全相同。(1分)(B)控制符本身是一種對象,它可以直接被提取符或插入符操作。(1分)(A )當catch子句的異常類型聲明參數(shù)被初始化后,將從對應(yīng)的try塊開始到異常被拋擲處之間構(gòu)造(且尚未析構(gòu))的所有自動對象進行析構(gòu)。(1分)(A)六綜合題供6題,總分值30分)設(shè)計一個類模板,然后將該類模板實例化為整數(shù)型和字符型類。利用類模板的成員函數(shù)為其數(shù)據(jù)成員賦值,并顯示所賦給的值。(5分)4t).答案r//Xt7_2.cpp#inelude<iostream>umingnamespacestd;temp<t/penamenumtyp^>classClasstemple后1public:void^tdata(numtypeZjnumtypey)1a=x;b=v;}voiddispdataQ1voiddispdataQ1cout<<"firstnumberis"<<a<<endl;cavt<<'secondnumberis,<<b<<endl;)private:numtypea,b:};irrtrnainQClassftanip!e<int>intobjjintobj.^etdatafZSj24);mut<D整數(shù)類的兩個數(shù)據(jù)成員為二"<<endl;intobj.dispdataQ;cout<<"字符類的兩個數(shù)據(jù)成員為!"<<endl;charcbj.dispdats(J;returnQ;}【輸出結(jié)果】整數(shù)類的兩個數(shù)據(jù)成員為;firstnumberis2isecondnumberis24字符類的兩個數(shù)據(jù)成員為:firstnumberis3secondnumberi&4#includeViostream>#includeVfstream〉usingnamespacestd;intmain()(charbuf[80];ofstreamoutfile;outfile.open("data.txt");if(!outfile)(cout<<"Can'topenthefile"Vendl;exit(1);}outfile<<"Hello,students!"<<endl;outfile<<"Welcomeyoutooop!"<<endl;outfile.close();ifstreaminfile;infile.open("data.txt");if(!infile)(cout<<"Can'topenthefile"<<endl;exit(1);while(!infile.eof())(infile.getline(buf,80);cout<<buf<<endl;}infile.close();return0;答案£〔輸出結(jié)果1Hellar^tud^ntslW時smeyoutoo■口pl}(5分)編寫一個程序來統(tǒng)計文件file.txt的字符個數(shù)。(5分)答案'〃方法L就妃Lcpp#include<io£tream>^in=clude<f5tream>usingnann^spacestd;intmain(){intcount-0;ifstreaminfilef'file.txt"];〃以輸入方式打H■文件tile,txt1cout<<wFikcannotbeopened,J,<<ertdl;return0;Whrie(Iinfile,eoffl);〃從文件file,txt中喋出數(shù)據(jù){.irrfi回get。;count=count+1;JBUtVV*文件有:J'<<countW小字文”<Cendl;irrfile.close();return0;}〃方怯2做8_3_2.叩ptiinclude<舊紋reannA#1ncludc<io5rtream>#tne]ude<fstream>us-ingnamespacastd;intmain()1intcount=0;$t「日uoip口導(dǎo)就目rtj殆nd;ifstreamIntile("fi居,txt];〃以輸入方式打開文件file.txtif(Etnfile)1cout<<"Filecannotbeopened.M<<endl;return0;infilehseekgLO,冶5;切命//將該指針定位到文件我start=infile.taQg();infile.seekgtO;ios::end);〃將諉指針定位到文件尾end=infile.tellg();cout<V”文件有;"<<end-start個字符七infile,closeQireturn0;)【輸出結(jié)果】州都機恤.txt的內(nèi)容為*This膈testl吧此時輸出結(jié)果如下:文件有:17個字符#include<iostream>usingnamespacestd;classNomilk(public:Nomilk();Nomilk(inthow_many);intget_money();private:intcount;};intmain()(intmoney,milk;doubledpg;try(coutVV"Enternumberofmoney:";cin>>money;coutVV"Enternumberofglassesofmilk:";cin>>milk;if(milk<=0)throwNomilk(money);dpg=money/double(milk);cout<<money<<"yuan"<<endl<<milk<<"glassesofmilk."<<endl<<"Youhave"<<dpg<<"yuanforeachglassofmilk."<<endl;}catch(Nomilke)(cout<<e.get_money()<<"yuan,andNoMilk!"<<endl<<"Gobuysomemilk."<<endl;coutVV"Endofprogram."VVendl;return0;}Nomilk::Nomilk(){}Nomilk::Nomilk(inthow_many):count(how_many){}intNomilk::get_money(){returncount;}寫出當分別輸人42和40兩組數(shù)后的輸出結(jié)果。(5分)答案:①當分別愉人42后豹輸出結(jié)果為IEnter。Limberofmoney:4Enternumberofglassesofmilk24yuan2glassesofmilk.Youhave2yuan=foreachfh??cfmilkEndofprogram.?當分別輸人4。后的輸出站果為:Enternumberofmorrey:4Enternumberofglassesofmilk:。4yuan9andNoMilk!Gobuysonemilk.Endofprogram.解析過程:①程序通過正常的順序執(zhí)行達到try語句,然后執(zhí)行try塊內(nèi)的保護段,@當分別輸入4和2時,由于milkACL沒有引起異常,程序執(zhí)行完tv塊內(nèi)的后續(xù)語句后,直接執(zhí)行catchT句后面的語句*?當分別輸人4和。時,由于Eilk=0引起異常。異常槌拋挪后,首先被try塊后的stch塊捕獲,執(zhí)行wEi塊,然后執(zhí)行catch句后面的語句,從鍵盤輸入乂的值,計算y=ln(2x+1)的值,要求用異常處“負數(shù)求對數(shù)〃的清況。(5分)44-答案://xt9_l.CPD尊include<iostream>ffinclude<cmath>ueI住gnamespacestdjclassClnipublicClnfdoubleu):doubleget_y():private;doubley;};iirtiran()<doublex,¥、zitiycaut<<"Enteradoublenumber:cin>>x;ift¥<0}throwClnfyfi芹庵W);cout<<"y=h("<<2*xM<Cl,j=;"<<z<<endh}catchfClne)ccut<<eget_v()<<關(guān)重數(shù)求對數(shù)'‘V<endl;}tcut<<"Endofpragramp,f<<endl;return0;)Cln::Cln(doublex);y(?)Qdtjub恒Cln;;費t_v()returnvj)[輸出結(jié)果】【輸出結(jié)果】Enteradoublenumber:!,2Y=ln(5.4)=1.6S64Enderfprogram.解析過程=按異常處理的語法組堤程序’按一行一行的方法將一個文本文件復(fù)制到另一個文件中。(5分)45,答案:// 2、cppffinelude<iostream>#include<fstra3m>us-ingnamespacestd;intm*M)1職「浙網(wǎng);streamintile["n.t洲k//以輸人方式打開文件fl.txtofstreamoutfile("f2.txt");//頃輸出方式打開文件f2.t)ctInfileI|loutfilt])1cout<<*'Filecannotbeopened."<<endl;r

溫馨提示

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

評論

0/150

提交評論