一、(20%)定義復(fù)數(shù)的類(lèi)Complex并測(cè)試其功能:
1. 復(fù)數(shù)由實(shí)部、虛部?jī)蓚(gè)部分組成,在類(lèi)的定義中應(yīng)包含保存這兩部分信息的內(nèi)容。
2. 在類(lèi)中定義構(gòu)造函數(shù),使用戶(hù)能夠在構(gòu)造對(duì)象的同時(shí)為對(duì)象賦初值。
3. 在類(lèi)中定義復(fù)數(shù)的加法、減法、乘法三個(gè)二元操作符來(lái)完成復(fù)數(shù)間的加、減、乘的功能。
4. 通過(guò)重載“<<”,使得Complex類(lèi)的對(duì)象能夠顯示其自身信息。
5. 通過(guò)顯示定義一個(gè)成員函數(shù)完成對(duì)象的賦值操作,使用戶(hù)能夠?qū)omplex類(lèi)的對(duì)象進(jìn)行賦值。
6. 編寫(xiě)一段主程序(main函數(shù)),使用戶(hù)能夠通過(guò)這段主程序輸入復(fù)數(shù)并進(jìn)行復(fù)數(shù)的計(jì)算。
二、(30%)二維直角坐標(biāo)系中圖形信息的描述和顯示:
1. 定義一個(gè)類(lèi)Point來(lái)表示坐標(biāo)系中點(diǎn)的位置信息。
2. 定義一個(gè)基類(lèi)Shape,在其中定義虛函數(shù)show()來(lái)顯示具體圖形信息。
3. 分別定義類(lèi)來(lái)表示坐標(biāo)系中矩形、圓和三角形的位置信息。在這幾個(gè)類(lèi)中通過(guò)分層原則利用類(lèi)Point;利用多態(tài)性來(lái)實(shí)現(xiàn)對(duì)各種圖形信息的統(tǒng)一輸出方式。
4. 編寫(xiě)一段主程序來(lái)測(cè)試上面定義的類(lèi)。
三、(50%)棧模板及其實(shí)例的使用:
1. 利用類(lèi)模板實(shí)現(xiàn)一個(gè)通用的棧模板。要求這個(gè)棧模板能夠完成一般棧的基本操作(棧元素為基本數(shù)據(jù)類(lèi)型,不包括指針、數(shù)組以及對(duì)象):向棧中壓入一個(gè)元素(push)、取棧頂元素的值(top)、彈出棧頂元素(pop)、清空棧(empty)、判斷棧是否為空(isEmpty)。
2. 編寫(xiě)一段主程序,要求主程序中生成整型、浮點(diǎn)型、字符型的棧實(shí)例各一個(gè)并分別測(cè)試其功能。
說(shuō)明:這是北京大學(xué)計(jì)算機(jī)應(yīng)用專(zhuān)業(yè)的系統(tǒng)班(業(yè)余)2001年10月份的上機(jī)考試題,該上機(jī)考題只適用于北大系統(tǒng)班的的學(xué)生!其他考生可以參考!