日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

一个很不错的C++类的练习题目

發布時間:2024/1/8 c/c++ 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 一个很不错的C++类的练习题目 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

//一個很不錯的C++類的練習題目1.定義一個C++枚舉(作為枚舉結構),有以下四個值:一次、每天、每周、每月。 為這個枚舉定義一個重載的輸出操作符<<,根據枚舉值,它將每日、每周、每月和其他任何事情都寫到作為參數傳遞的字符輸出流參考上。 此外,為枚舉值定義一個重載的輸入操作符>>(也見下面的例子)。2.定義一個名為CO2Emission的抽象類,其成員如下。 命名為下一個的私人指針屬性,以建立一個二氧化碳排放的列表。 公共標準構造函數,將指針屬性初始化為一個C++的空指針。 公共虛擬析構器將 "destructor CO2Emission: done "寫入標準字符輸出流中。 名為get_next的公共成員函數,不帶參數,返回指針屬性的值。 名為set_next的公共成員函數,以一個CO2Emission類型的指針為參數,將指針屬性的值設置為參數值。 名為get_co2的公共純虛擬成員函數沒有參數,并以浮點數作為返回值,必須在派生類中實現。 公共的純虛擬成員函數名為print,沒有參數也沒有返回,必須在派生類中實現。3.定義一個名為 "運輸 "的抽象類,該類公開繼承自CO2Emission,其成員如下。 命名為km的私有屬性,類型為浮點數,用于驅動的公里數。 名為frequency的私有屬性,屬于上述定義的枚舉類型Frequency,即運輸發生的頻率。 公共標準構造函數,在其主體中,如下面的例子,上層標準構造函數所走的公里數的值和頻率(通過上述定義的輸入運算符)應從標準字符輸入流中讀取并存儲在兩個屬性中。 帶有兩個參數的公共構造函數,用于用參數值初始化兩個屬性--頻率的參數應是一個默認參數,默認值來自上面定義的枚舉數據類型Frequency。 公共的虛擬析構器,就像下面的例子中寫的那樣" destructor Transport:"、頻率、旅行距離值和 "km done "到標準字符輸出流。 命名為get_co2_pkm的私有成員函數沒有參數,并以浮點數作為返回值,必須在派生類中實現。 名為get_co2的公共成員函數,沒有參數,以一個浮點數作為返回。在該函數中,應計算并返回駕駛公里數和一公里的各自排放值(通過調用先前定義的成員函數)與代表頻率的數字(一次=>1,每天=>365,每周=>52,每月=>12)的乘積。 公共成員函數,名稱為print,無參數,無返回。在正文中,如下面的例子,字符串 "運輸 "和頻率(通過上述定義的輸出運算符)應被寫入標準字符輸出流,駕駛的公里數(小數點后一位),圓括號中的每人公里的二氧化碳排放值(小數點后三位)和計算的二氧化碳排放量(適當地調用前面的成員函數)。4.修改你的類,命名為Bus,并從Transport類公開派生。刪除屬性km和成員函數get_co2。修改兩個構造函數,分別調用超類的構造函數,使其功能保持不變。同時修改成員函數print,使其在輸出 "本地公交 "或 "長途公交"(取決于布爾屬性的值)后調用直接超類的函數print。添加一個公共的虛擬析構器,輸出" destructor Bus: " 并調用函數print(見下面的例子)。5.修改你的名為Car的類,并從Transport類公開派生出來。刪除屬性km和成員函數get_co2。修改兩個構造函數,分別調用超類的構造函數,使其功能保持不變。同時修改成員函數print,使其在輸出 "客車 "后調用直接超類的函數print。添加一個公共的虛擬析構器,輸出" destructor Car:"并調用函數print(見下面的例子)。6.修改你的名為Flight的類,并從Transport類公開派生。刪除屬性km和成員函數get_co2。修改兩個構造函數,分別調用超類的構造函數,使其功能保持不變。同時修改成員函數print,使其在輸出 "flight "后調用直接超類的函數print。添加一個公共的虛擬析構器,輸出 "destructor Flight: done",如下面的例子所示。7.修改你的類,命名為Train,并從Transport類公開派生。刪除屬性km。修改兩個構造函數,分別調用超類的構造函數,使其功能保持不變。修改成員函數get_co2,使其調用超類的相同函數,并且在計算中仍然考慮單程或回程的情況。同時修改成員函數print,使其在輸出 "單程 "或 "回程 "以及 "本地火車 "或 "長途火車 "后調用直接超類的函數print。添加一個公共的虛擬析構器,輸出" destructor Train:"并調用函數print(見下面的例子)。8.修改你的類,命名為Cruise,并從CO2Emission類公開派生。在構造函數中,調用超類的標準構造函數,并為該類添加一個公共的虛擬析構函數,輸出 "destructor Cruise:"并調用函數print(見下面的例子)。9.定義一個名為CO2Footprint的類,其成員如下。 命名為 "姓名 "的私有屬性,類型為C++字符串,碳足跡被分配給誰。 私有指針屬性,名為排放,用于指向二氧化碳排放列表的頭部。 公共構造函數,將名稱初始化為參數的值,將指針屬性初始化為C++的空指針。 公共析構器將 "destructor for CO2Footprint for"、名稱和 "started... "寫入標準字符輸出流,然后在一個循環中逐一刪除堆上的所有列表項,最后將 "destructor CO2Foodprint done "寫入標準字符輸出流(見下例)。 名為get_name的公共成員函數,不帶參數,返回相同的命名屬性的值。 公共成員函數名為add,以CO2Emission類型的指針為參數,將指向的對象插入碳排放列表的頭部。 名為get_sum_co2的公共成員函數沒有參數,以浮點數作為返回值。在正文中,所有列表元素的碳排放量將被加起來,并返回這個和值。 公共成員函數名為print,沒有參數也沒有返回。在正文中,名稱應在字符串 "CO2 FOODPRINT FOR:",打印信息將被發送到列表中的所有對象,然后計算所有二氧化碳排放量的總和,并在 "TOTAL CO2 EMISSIONS. "之后寫入標準字符輸出流。",單位為公斤和噸,每個單位有1位小數(見下面的例子)。10.對函數main修改如下。 刪除所有的東西,除了五個指針變量b2、c2、h2、f2、t2的定義和它們指向堆中新對象的初始化。 定義一個C++字符串類型的變量,在用戶指導下從標準字符輸入流中讀入一個名字后,用這個名字定義并初始化一個CO2Footprint類型的對象f(不是指針*f)(見下面例子)。 向對象f發送一條消息add,并將指針b2, c2, h2, f2, t2作為參數。 編寫一個小菜單,其菜單項如下面的例子所示。對于每個定義的非抽象二氧化碳排放子類,應使用標準構造函數在堆上創建一個新對象,并添加到二氧化碳足跡對象f中。 如果程序結束,C++運行系統會自動調用對象f的析構器,刪除碳排放列表中的所有對象,從而觸發析構器的輸出,如下例所示。 CO2 footprint for? DilbertCO2 footprint input for Dilbert (e) end (b) bus transport (c) car transport (f) flight tranport (h) holiday cruise (t) train transport (p) print all >> p CO2 FOODPRINT FOR: Dilbert return long distance train transport 628.8 km (0.035 kg CO2/pkm) 44.0 kg CO2 flight transport 2669.9 km (0.270 kg CO2/pkm) 720.9 kg CO2 cruise holiday (without flights): 14 days duration with 3 sea days (sea day 280.000 kg CO2/pkm, harbour day 190.000 kg CO2/pkm) 2930.0 kg CO2 passenger car transport 5500.0 km (0.172 kg CO2/pkm) 948.8 kg CO2 local bus transport 2200.0 km (0.111 kg CO2/pkm) 244.2 kg CO2 TOTAL CO2 EMISSIONS: 4887.8 kg = 4.9 tonsCO2 footprint input for Dilbert (e) end (b) bus transport (c) car transport (f) flight tranport (h) holiday cruise (t) train transport (p) print all >> b transport distance kilometers: 1000 frequency input: (o) once (d) daily (m) monthly (w) weekly your choice: m (1) local transport bus (2) long distance bus your choice: 2CO2 footprint input for Dilbert (e) end (b) bus transport (c) car transport (f) flight tranport (h) holiday cruise (t) train transport (p) print all >> p CO2 FOODPRINT FOR: Dilbert long distance bus transport monthly 1000.0 km (0.036 kg CO2/pkm) 432.0 kg CO2 return long distance train transport 628.8 km (0.035 kg CO2/pkm) 44.0 kg CO2 flight transport 2669.9 km (0.270 kg CO2/pkm) 720.9 kg CO2 cruise holiday (without flights): 14 days duration with 3 sea days (sea day 280.000 kg CO2/pkm, harbour day 190.000 kg CO2/pkm) 2930.0 kg CO2 passenger car transport 5500.0 km (0.172 kg CO2/pkm) 948.8 kg CO2 local bus transport 2200.0 km (0.111 kg CO2/pkm) 244.2 kg CO2 TOTAL CO2 EMISSIONS: 5319.8 kg = 5.3 tonsCO2 footprint input for Dilbert (e) end (b) bus transport (c) car transport (f) flight tranport (h) holiday cruise (t) train transport (p) print all >> c transport distance kilometers: 1000 frequency input: (o) once (d) daily (m) monthly (w) weekly your choice: w passenger car consumption liter petrol per 100 kilometers: 10CO2 footprint input for Dilbert (e) end (b) bus transport (c) car transport (f) flight tranport (h) holiday cruise (t) train transport (p) print all >> p CO2 FOODPRINT FOR: Dilbert passenger car transport weekly 1000.0 km (0.230 kg CO2/pkm) 11960.0 kg CO2 long distance bus transport monthly 1000.0 km (0.036 kg CO2/pkm) 432.0 kg CO2 return long distance train transport 628.8 km (0.035 kg CO2/pkm) 44.0 kg CO2 flight transport 2669.9 km (0.270 kg CO2/pkm) 720.9 kg CO2 cruise holiday (without flights): 14 days duration with 3 sea days (sea day 280.000 kg CO2/pkm, harbour day 190.000 kg CO2/pkm) 2930.0 kg CO2 passenger car transport 5500.0 km (0.172 kg CO2/pkm) 948.8 kg CO2 local bus transport 2200.0 km (0.111 kg CO2/pkm) 244.2 kg CO2 TOTAL CO2 EMISSIONS: 17279.8 kg = 17.3 tonsCO2 footprint input for Dilbert (e) end (b) bus transport (c) car transport (f) flight tranport (h) holiday cruise (t) train transport (p) print all >> f transport distance kilometers: 1000 frequency input: (o) once (d) daily (m) monthly (w) weekly your choice: oCO2 footprint input for Dilbert (e) end (b) bus transport (c) car transport (f) flight tranport (h) holiday cruise (t) train transport (p) print all >> p CO2 FOODPRINT FOR: Dilbert flight transport 1000.0 km (0.270 kg CO2/pkm) 270.0 kg CO2 passenger car transport weekly 1000.0 km (0.230 kg CO2/pkm) 11960.0 kg CO2 long distance bus transport monthly 1000.0 km (0.036 kg CO2/pkm) 432.0 kg CO2 return long distance train transport 628.8 km (0.035 kg CO2/pkm) 44.0 kg CO2 flight transport 2669.9 km (0.270 kg CO2/pkm) 720.9 kg CO2 cruise holiday (without flights): 14 days duration with 3 sea days (sea day 280.000 kg CO2/pkm, harbour day 190.000 kg CO2/pkm) 2930.0 kg CO2 passenger car transport 5500.0 km (0.172 kg CO2/pkm) 948.8 kg CO2 local bus transport 2200.0 km (0.111 kg CO2/pkm) 244.2 kg CO2 TOTAL CO2 EMISSIONS: 17549.8 kg = 17.5 tonsCO2 footprint input for Dilbert (e) end (b) bus transport (c) car transport (f) flight tranport (h) holiday cruise (t) train transport (p) print all >> hcruise holiday data input: number of days of the whole cruise: 3 number of sea days: 1CO2 footprint input for Dilbert (e) end (b) bus transport (c) car transport (f) flight tranport (h) holiday cruise (t) train transport (p) print all >> p CO2 FOODPRINT FOR: Dilbert cruise holiday (without flights): 3 days duration with 1 sea days (sea day 280.000 kg CO2/pkm, harbour day 190.000 kg CO2/pkm) 660.0 kg CO2 flight transport 1000.0 km (0.270 kg CO2/pkm) 270.0 kg CO2 passenger car transport weekly 1000.0 km (0.230 kg CO2/pkm) 11960.0 kg CO2 long distance bus transport monthly 1000.0 km (0.036 kg CO2/pkm) 432.0 kg CO2 return long distance train transport 628.8 km (0.035 kg CO2/pkm) 44.0 kg CO2 flight transport 2669.9 km (0.270 kg CO2/pkm) 720.9 kg CO2 cruise holiday (without flights): 14 days duration with 3 sea days (sea day 280.000 kg CO2/pkm, harbour day 190.000 kg CO2/pkm) 2930.0 kg CO2 passenger car transport 5500.0 km (0.172 kg CO2/pkm) 948.8 kg CO2 local bus transport 2200.0 km (0.111 kg CO2/pkm) 244.2 kg CO2 TOTAL CO2 EMISSIONS: 18209.8 kg = 18.2 tonsCO2 footprint input for Dilbert (e) end (b) bus transport (c) car transport (f) flight tranport (h) holiday cruise (t) train transport (p) print all >> t transport distance kilometers: 10 frequency input: (o) once (d) daily (m) monthly (w) weekly your choice: d (1) local transport train (2) long distance train your choice: 1 (1) one-way (2) return your choice: 1CO2 footprint input for Dilbert (e) end (b) bus transport (c) car transport (f) flight tranport (h) holiday cruise (t) train transport (p) print all >> p CO2 FOODPRINT FOR: Dilbert one way local train transport daily 10.0 km (0.085 kg CO2/pkm) 310.2 kg CO2 cruise holiday (without flights): 3 days duration with 1 sea days (sea day 280.000 kg CO2/pkm, harbour day 190.000 kg CO2/pkm) 660.0 kg CO2 flight transport 1000.0 km (0.270 kg CO2/pkm) 270.0 kg CO2 passenger car transport weekly 1000.0 km (0.230 kg CO2/pkm) 11960.0 kg CO2 long distance bus transport monthly 1000.0 km (0.036 kg CO2/pkm) 432.0 kg CO2 return long distance train transport 628.8 km (0.035 kg CO2/pkm) 44.0 kg CO2 flight transport 2669.9 km (0.270 kg CO2/pkm) 720.9 kg CO2 cruise holiday (without flights): 14 days duration with 3 sea days (sea day 280.000 kg CO2/pkm, harbour day 190.000 kg CO2/pkm) 2930.0 kg CO2 passenger car transport 5500.0 km (0.172 kg CO2/pkm) 948.8 kg CO2 local bus transport 2200.0 km (0.111 kg CO2/pkm) 244.2 kg CO2 TOTAL CO2 EMISSIONS: 18520.1 kg = 18.5 tonsCO2 footprint input for Dilbert (e) end (b) bus transport (c) car transport (f) flight tranport (h) holiday cruise (t) train transport (p) print all >> e destructor CO2Foodprint: for Dilbert started...destructor Train: one way local train transport daily 10.0 km (0.085 kg CO2/pkm) 310.2 kg CO2destructor Transport: daily 10.0 km done destructor CO2Emission: donedestructor Cruise: cruise holiday (without flights): 3 days duration with 1 sea days (sea day 280.000 kg CO2/pkm, harbour day 190.000 kg CO2/pkm) 660.0 kg CO2 destructor CO2Emission: donedestructor Flight: donedestructor Transport: 1000.0 km done destructor CO2Emission: donedestructor Car: passenger car transport weekly 1000.0 km (0.230 kg CO2/pkm) 11960.0 kg CO2destructor Transport: weekly 1000.0 km done destructor CO2Emission: donedestructor Bus: long distance bus transport monthly 1000.0 km (0.036 kg CO2/pkm) 432.0 kg CO2destructor Transport: monthly 1000.0 km done destructor CO2Emission: donedestructor Train: return long distance train transport 628.8 km (0.035 kg CO2/pkm) 44.0 kg CO2destructor Transport: 628.8 km done destructor CO2Emission: donedestructor Flight: donedestructor Transport: 2669.9 km done destructor CO2Emission: donedestructor Cruise: cruise holiday (without flights): 14 days duration with 3 sea days (sea day 280.000 kg CO2/pkm, harbour day 190.000 kg CO2/pkm) 2930.0 kg CO2 destructor CO2Emission: donedestructor Car: passenger car transport 5500.0 km (0.172 kg CO2/pkm) 948.8 kg CO2destructor Transport: 5500.0 km done destructor CO2Emission: donedestructor Bus: local bus transport 2200.0 km (0.111 kg CO2/pkm) 244.2 kg CO2destructor Transport: 2200.0 km done destructor CO2Emission: donedestructor CO2Foodprint: done

總結

以上是生活随笔為你收集整理的一个很不错的C++类的练习题目的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。