2012C 程式設計實驗報告 12 3

2021-06-06 08:29:14 字數 1633 閱讀 7891

* 對任務及求解方法的描述部分

* 問題描述:在一段類的定義中,自行車類的虛基類為車輛類,機動車類的虛基類也為車輛類,電單車類的基類為自行車類和機動車類,類之間均為公有繼承。

(1)根據上面各類間關係的描述,補全下面程式段中空缺的**

(2)實現程式中宣告的成員函式,注意相應操作中的動作發生的條件不能滿足時應給出提示。

(3)執行程式,享受開摩托的過程

* 程式頭部的注釋結束*/

源程式:

#include #include#include using namespace std;

enum vehiclestaus ; //車輛狀態:泊車、行進

class vehicle //車輛類

//建構函式,初始時,當前速度總為0且處在停車狀態

void start(); //由rest狀態到running, 初速為1

void stop(); //由running狀態到rest, 當前速度小於5時,才允許停車

void speed_up(); //加速,呼叫1次,速度加1

void slow_down(); //減速,呼叫1次,速度減1,速度為0時,停車

};void vehicle :: start() //由rest狀態到running, 初速為1

void vehicle :: stop() //由running狀態到rest, 當前速度小於5時,才允許停車

}void vehicle :: speed_up() //加速,呼叫1次,速度加1

else if(currentspeed >= maxspeed)

else }

void vehicle :: slow_down() //減速,呼叫1次,速度減1,速度為0時,停車

else if(currentspeed - 1 < 0)

else }

class bicycle : virtual public vehicle//(1)自行車類的虛基類為車輛類

//定義建構函式

};class motorcar : virtual public vehicle//(2)機動車類的虛基類也為車輛類

//定義建構函式

void addpassenger(int p=1); //搭載乘客,超員要拒載,有人下車時,p為負數。當然車上乘客至少有1個(司機)。上下車時要保證安全……

};void motorcar :: addpassenger(int p)//搭載乘客,超員要拒載,有人下車時,p為負數。當然車上乘客至少有1個(司機)。上下車時要保證安全……

else if(passengernum + p <= 0)

else

}}class motorcycle : public bicycle, public motorcar //(3)電單車類的基類為自行車類和機動車類

//定義建構函式

void show(); //顯示電單車的執行狀態

};void motorcycle :: show() //顯示電單車的執行狀態

int main( )

m.show();

cout<}

system("pause");

return 0;

}

2012C 程式設計實驗報告 6 2

作 者 王琳 完成日期 2012年 3 月26日 版 本 號 6 2 對任務及求解方法的描述部分 輸入描述 指標,析構函式的運用 問題描述 程式輸出 程式頭部的注釋結束 源程式 a.用指標訪問物件 include using namespace std class a a int aa 定義建構函式...

2012C 程式設計實驗報告 9 3

對任務及求解方法的描述部分 問題描述 接第8周任務3,定義分數類中 和 運算子過載,實現分數的輸入輸出,改造原程式中對運算結果顯示方式,使程式讀起來更自然。程式頭部的注釋結束 源程式 include using namespace std class cfraction void simplify ...

2012C 程式設計實驗報告 8 3

對任務及求解方法的描述部分 問題描述 實現分數類中的運算子過載,在分數類中可以完成分數的加減乘除 運算後再化簡 求反 比較 6種關係 的運算。程式頭部的注釋結束 源程式 include using namespace std class cfraction void simplify void di...