版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
東南大學(xué)考試卷(A卷)學(xué)號學(xué)號姓名密封線課程名稱程序設(shè)計(jì)及算法語言1考試學(xué)期0得分適用專業(yè)吳健雄學(xué)院考試形閉卷考試時(shí)間長120分卷面總分67,另有上機(jī)編程33分,總成績100分一、簡答題(每問2分,共6分)自覺遵守考場紀(jì)律如考試作弊此答卷無效下列各段程序都存在錯(cuò)誤,請說明錯(cuò)誤所在及理由自覺遵守考場紀(jì)律如考試作弊此答卷無效(1)類說明(2分)classSquare{private: intupper_left_x=0,upper_left_y=0; intside_length=2;public: Square(); ~Square();intdraw();};答:(2)類說明(2分)classComplex{ double Real,Image;public:Complex(doubler=0.0,doublei=0.0){Real=r;Image=i;}friendComplexoperator+(constComplex&,constComplex&);};ComplexComplex::operator+(constComplex&c1,constComplex&c2){ returnComplex(c1.Real+c2.Real,c1.Image+c2.Image);}答:(3)求1到100倒數(shù)和的程序段(1分)doublesum=0;inti;for(i=1;i<=100;i++)sum+=1/i;cout<<sum<<endl;答:1.二、程序閱讀與修改題(共22分)1.1.設(shè)輸入大寫字母D,畫出輸出圖形。(5分)intmain(){charin;inti,j;do{ cout<<"輸入一個(gè)字母:"; cin>>in;if((in>=65)&&(in<=90))in+=32; }while((in<97)||(in>122));(5分)intline=in-'a';for(i=0;i<=line;i++){for(j=line-i;j>0;j--)cout<<"";for(j=1;j<=2*i+1;j++)cout<<''<<char(i+'a'); cout<<endl; }for(i=line;i>0;i--){for(j=0;j<=line-i;j++)cout<<"";for(j=1;j<=2*i-1;j++)cout<<''<<char(i-1+'a'); cout<<endl;2. }2.return0;} 2.調(diào)用遞歸函數(shù)ch(’D’),可得輸出為?(6分)voidch(charw){chari;if(w>=’A’){for(i=’A’;i<=w;i++)cout<<’\t’<<w;cout<<endl;ch(w-1);for(i=’A’;i<=w;i++)cout<<’\t’<<w;cout<<endl; }}3.寫出下例的運(yùn)行結(jié)果。希望實(shí)現(xiàn)動態(tài)的多態(tài)性,如未實(shí)現(xiàn)請指出錯(cuò)誤,并給出更正后的運(yùn)行結(jié)果。(6分)classbase{3.運(yùn)行結(jié)果:指出錯(cuò)誤并更正:更正后的運(yùn)行結(jié)果:3.運(yùn)行結(jié)果:指出錯(cuò)誤并更正:更正后的運(yùn)行結(jié)果:virtualvoidfn(intx){ cout<<"Inbaseclass,x="<<x<<endl; }};classsub:publicbase{public:virtualvoidfn(floatx){ cout<<"Insubclass,x="<<x<<endl; }};intmain(){ baseb,*p; subs; p=&b; p->fn(2); p=&s; p->fn(3.5);return0;}4.下例求給定數(shù)的平方根,第一次輸入2,第二次輸入-2。給出屏幕上顯示的內(nèi)容。(5分)doubledsqrt(doubled){if(d<0)throw2;4.returnsqrt(d);4.}intmain(){intx;while(1){ cout<<”請輸入一個(gè)正整數(shù):”<<endl; cin>>x; try{ cout<<dsqrt(x)<<endl;}catch(int){ cout<<”這是一個(gè)負(fù)整數(shù)!”<<endl;}if(d<0)break;}return0;}三、程序填空完善題(除特別標(biāo)出者,每空1.5分,共39分)1.下例是由數(shù)組類模板派生棧類模板,注意格式。(共10.5分)#include<iostream>usingnamespacestd;template<classT,intsize>classarray{ Ta[size];intlast;intmaxSize;public: array(){last=-1;maxSize=size;}boolisfull(){if(last==maxSize-1)returntrue;elsereturnfalse;}boolisempty(){if(last==-1)returntrue;elsereturnfalse;}voidinsertRear(Tdata){//將data插在數(shù)組最后一個(gè)元素位置,可用于創(chuàng)建數(shù)組if((1))(2);elsecout<<"arrayisfull,cannotinsert!"<<endl; } TdeleteRear(){//將數(shù)組最后一個(gè)元素從數(shù)組中刪除,值返回if((3))(4);elsecout<<"arrayisempty,cannotdelete!"<<endl; }voidprint(){//輸出數(shù)組inti;for(i=0;(5);i++)cout<<a[i]<<'\t'; cout<<endl; }//其他無關(guān)接口函數(shù)略};template<classT,intsize>classstack:privatearray<T,size>{//私有派生屏蔽原有的接口函數(shù)public:voidpush(Tdata){(6);//調(diào)用基類合適的公有函數(shù) } Tpop(){(7);//調(diào)用基類合適的公有函數(shù),并返回 }voidstackprint(){print();}};2.下面采用冒泡排序的成員函數(shù)模板實(shí)現(xiàn)線性表降序排序。冒泡排序采用從線性表尾部往頭部進(jìn)行,比較運(yùn)算符采用小于運(yùn)算符。(其中8~10三空各2分,共9分)template<typenameT,intsize>classOrderedlist{intmaxsize;intlast; Tslist[size];public: Orderedlist(){last=-1;maxsize=size;}voidBubbleSort();boolInsert(T&elem,inti);voidprint();//無關(guān)成員函數(shù)省略,缺省的=等不必定義};//Insert(T&elem,inti)和print()不再重復(fù)定義template<typenameT,intsize>voidOrderedlist<T,size>::BubbleSort(){//降序boolnoswap;//交換標(biāo)志inti,j; Ttemp;for((8)){//從線性表尾部往頭部逐個(gè)元素完成排序 noswap=true;for((9)){//注意一趟排序的方向if((10)){//關(guān)鍵字比較采用小于號,實(shí)現(xiàn)降序排序 temp=slist[j]; slist[j]=slist[j+1]; slist[j+1]=temp;(11);//標(biāo)識本趟有交換 } }(12); //本趟無交換,則終止算法。 }}3.下例線性表的析構(gòu)函數(shù)將線性表存入文本文件,而構(gòu)造函數(shù)由該文件恢復(fù)線性表。(共13.5分)template<typenameT,intsize>classOrderedlist{intmaxsize;intlast; Tslist[size];public: Orderedlist(); ~Orderedlist();intgetlast(){returnlast;}voidputlast(intn){last=n;} Tgetslist(intk){returnslist[k];}voidputslist(Tt,intk){slist[k]=t;}voidprint(){for(inti=0;i<=last;i++)cout<<slist[i];}//無關(guān)成員函數(shù)省略};template<typenameT,intsize>Orderedlist<T,size>::Orderedlist(){ last=-1; maxsize=size; Tt;(13);//定義流文件 infile.open((14));//進(jìn)入時(shí)由文件mylist.txt建立對象if(!infile){ cout<<"沒有數(shù)據(jù)文件"<<endl;//只給提示不退出 }else{//有數(shù)據(jù)文件while(!infile.eof()){infile>>t;(15);(16); } last--;//對應(yīng)文本文件結(jié)束處是回車換行后加文件結(jié)束符 infile.close(); print(); cout<<endl; }}template<typenameT,intsize>Orderedlist<T,size>::~Orderedlist(){inti;(17); outfile.open((18));//退出時(shí)由文本文件保存對象if(!outfile){ cout<<"不能打開文件"<<endl; }else{for((19)){(20);}outfile.close();//這時(shí)生成的文本文件結(jié)束處是回車換行后加文件結(jié)束符}}問:作為線性表的模板類型參數(shù)T的實(shí)參類型中需對那些運(yùn)算符進(jìn)行重載:(21)4.完善鏈表類模板的復(fù)制構(gòu)造函數(shù)。(共6分)template<typenameT>classList;template<typenameT>classNode{ Tinfo;//數(shù)據(jù)域 Node<T>*link;//指針域public: Node();//生成頭結(jié)點(diǎn)的構(gòu)造函數(shù) Node(constT&data);//生成一般結(jié)點(diǎn)的構(gòu)造函數(shù)friendclassList<T>;//省略其他成員函數(shù)定義};template<typenameT>classList{ Node<T>*head,*tail;//鏈表頭指針和尾指針public: List();//構(gòu)造函數(shù),生成頭結(jié)點(diǎn)(空鏈表) List(List<T>&);//拷貝構(gòu)造函數(shù) ~List();//析構(gòu)函數(shù)//其它成員函數(shù)略};template<typenameT>List<T>::List(List<
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫(yī)院牙科種植牙新技術(shù)
- 急性胃腸炎患者的營養(yǎng)支持護(hù)理
- 2026中國科學(xué)院上海生命科學(xué)研究院生物化學(xué)與細(xì)胞生物學(xué)研究所分子細(xì)胞卓越中心曾安組招聘博士后科研助理2人備考考試題庫附答案解析
- 2026山東煙臺濰柴新能源全球社招招聘備考考試題庫附答案解析
- 2026四川蒙頂山茶馬古道文化旅游發(fā)展有限公司招聘勞務(wù)派遣工作人員1人備考考試題庫附答案解析
- 2026河北邢臺市臨城縣招聘森林消防專業(yè)隊(duì)員8人參考考試題庫附答案解析
- 2026年棗莊山亭區(qū)事業(yè)單位公開招聘初級綜合類崗位人員(55人)參考考試題庫附答案解析
- 2026海南三亞市教育局直屬公辦學(xué)校招聘教職工215人(1號)備考考試題庫附答案解析
- 2026中國科學(xué)院上海生命科學(xué)研究院生物化學(xué)與細(xì)胞生物學(xué)研究所分子細(xì)胞卓越中心曾安組招聘博士后科研助理2人參考考試試題附答案解析
- 2026遼寧大連醫(yī)科大學(xué)赴高?,F(xiàn)場招聘2人參考考試試題附答案解析
- 大數(shù)據(jù)安全技術(shù)與管理
- 2026青島海發(fā)國有資本投資運(yùn)營集團(tuán)有限公司招聘計(jì)劃筆試備考試題及答案解析
- 鼻飼技術(shù)操作課件
- 置景服務(wù)合同范本
- 隧道掛防水板及架設(shè)鋼筋臺車施工方案
- 2025年國家市場監(jiān)管總局公開遴選公務(wù)員面試題及答案
- 碼頭租賃意向協(xié)議書
- 初一語文2025年上學(xué)期現(xiàn)代文閱讀真題(附答案)
- 2026屆浙江紹興市高三一模高考數(shù)學(xué)試卷試題(含答案)
- GB/T 33092-2016皮帶運(yùn)輸機(jī)清掃器聚氨酯刮刀
- 中學(xué)主題班會課:期末考試應(yīng)試技巧點(diǎn)撥(共34張PPT)
評論
0/150
提交評論