鄭州大學現(xiàn)代遠程教育《面向對象程序設計》_第1頁
鄭州大學現(xiàn)代遠程教育《面向對象程序設計》_第2頁
鄭州大學現(xiàn)代遠程教育《面向對象程序設計》_第3頁
鄭州大學現(xiàn)代遠程教育《面向對象程序設計》_第4頁
鄭州大學現(xiàn)代遠程教育《面向對象程序設計》_第5頁
已閱讀5頁,還剩7頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、鄭州大學現(xiàn)代遠程教育面向對象程序設計(計算機科學與技術本科)課程作業(yè)請保存為WORD格式的文檔,登陸學習平臺(/)提交, 務必檢查提交是否成功。要求:建議1 3選一題,4-7選一題,8-10任選一題,且所有學生題目要相同。1、編寫一個程序模擬超市的收銀系統(tǒng)。具體要求如下:(1)提示輸入顧客買的商品名稱和 單價(以元為單位),直到所有購買商品輸入完畢(空格鍵表示輸入完畢)。(2)在屏幕 上輸出顧客購買的所有商品的名稱和單價,每種商品的總價,顧客應付錢數(shù);(3)提示 輸入實際交的錢數(shù),計算應找錢數(shù)并顯示。(4)按回車鍵返回第一步,按ESC鍵推出程 序運行。程序運行結果如下所示:輸入商品名稱:薯片輸

2、入單價:1.00輸入數(shù)量:10輸入商品名稱:洗衣粉輸入單價:9.8輸入數(shù)量:1(按空格鍵,退出輸入過程)商品名稱單價數(shù)量總價薯片1.001010洗衣粉9.819.8應付:19.8 (元)輸入實際付:20元找零:0.2元(按回車鍵返回第一行)商品名稱:XXX(按ESC則退出)2、編寫一個程序實現(xiàn)24小時計時轉換為12進制計時。具體要求:以四位整數(shù)表示24小時計時法時間,pm表示下午,am表示上午 運行示例:例1:輸入24小時計時法時間:174312小時計時法時間:1743 是 5.43 p.m.例2:輸入24小時計時法時間:090412小時計時法時間:0904 is 9.04 a.m.3、編寫一

3、個簡單的加密程序:輸入四位整數(shù),按照以下加密算法處理后,生成加密后的四 位整數(shù)輸出。加密算法:(每一位的數(shù)字+ 8) mod 10,處理后的數(shù)字中第1位和第四位交換,第2位和第 3位交換。運行示例:輸入四位整數(shù): 7523加密后的四位整數(shù)是: 10354、編寫一個簡單的學生成績管理系統(tǒng)。具體要求如下:建立兩個類StudentList和StudentListTester. StudentList類用數(shù)組存 放一組Studen t對象,記錄當前數(shù)組中記錄的學生數(shù)量。.設計方法:在數(shù)組中增加一個 Student對象;檢查數(shù)組是否已滿,是否空;獲得數(shù)組中某個位置的Student對象,獲得 Studen

4、t對象的眾數(shù)。其他具體內(nèi)容請看下圖:StudentStudentListlist: Suident iora/: in:StudentList(int) add (Stu dent): booieanlist: Suident iora/: in:StudentList(int) add (Stu dent): booieanisEmptyf): boolean isFullf): boolean Qetltem(int): Student gerTataiO /?markForMaths .wm markForEnglish : int mackForScience : ifitS tude

5、n 11: S g. Strin g) getNumbeff): String getNeimeO : String efiierMafks(iiir. int. inr g 快 tMaUisMark。.-血 getEfigshMaO : int geiScienceMarkO : air caicu late Average Mark (): doubieStudentListTester 類用于測試 StudentList 類.程序首先提示輸入數(shù)組大小,然后創(chuàng)建指定大小的StudentList類。程序允許用戶從下面的菜單中連續(xù)選擇:增加一個學生顯示數(shù)組中所有的學生以及他們的成績顯示數(shù)組中平

6、均成績40的學生以及他們的成績顯示數(shù)組中姓張的學生以及他們的成績退出如果選擇1,提示用戶輸入學生的姓名,學號,以及數(shù)學,英語和程序設計三門課的成績。如果選擇2,顯示當前數(shù)組中所有學生的名字,數(shù)量,每個人的各門課程的成績和平均成績?nèi)绻x擇3和4顯示那些滿足條件的學生的情況。選擇5,顯示退出信息后退出程序。程序運行示例:輸入學生最大數(shù)量:3增加一個學生顯示數(shù)組中所有的學生以及他們的成績顯示數(shù)組中平均成績40的學生以及他們的成績顯示數(shù)組中姓張的學生以及他們的成績退出輸入選擇1-5: 1輸入學生名字: 張三輸入學號:9908輸入 張三 的成績數(shù)學? 48英語? 62程序設計? 55*張三已經(jīng)加入學生名

7、單*增加一個學生顯示數(shù)組中所有的學生以及他們的成績顯示數(shù)組中平均成績40的學生以及他們的成績顯示數(shù)組中姓張的學生以及他們的成績退出輸入選擇1-5: 1輸入學生名字:李四輸入學號: 9904輸入 李四 的成績數(shù)學? 67英語? 53程序設計? 75*李四已經(jīng)加入學生名單*輸入選擇1-5: 1輸入學生名字:人似驚鴻輸入學號:9811輸入人似驚鴻的成績數(shù)學? 25英語? 30程序設計? 35*人似驚鴻已經(jīng)加入學生名單*增加一個學生顯示數(shù)組中所有的學生以及他們的成績顯示數(shù)組中平均成績40的學生以及他們的成績顯示數(shù)組中姓張的學生以及他們的成績退出輸入選擇1-5: 1*不能增加,學生數(shù)量已滿*增加一個學生

8、顯示數(shù)組中所有的學生以及他們的成績顯示數(shù)組中平均成績40的學生以及他們的成績顯示數(shù)組中姓張的學生以及他們的成績退出輸入選擇1-5: 2* 學生信息*張三:9908數(shù)學:48英語:62程序設計:55平均成績:55.0李四:9904數(shù)學:67英語:53程序設計:75平均成績:65.0人似驚鴻: 9811數(shù)學: 25 英語: 30 程序設計: 35 平均成績: 30.0增加一個學生顯示數(shù)組中所有的學生以及他們的成績顯示數(shù)組中平均成績40的學生以及他們的成績顯示數(shù)組中姓張的學生以及他們的成績退出輸入選擇1-5: 3* 學生信息 *人似驚鴻: 9811數(shù)學: 25 英語: 30 程序設計: 35 平均成

9、績: 30.0增加一個學生顯示數(shù)組中所有的學生以及他們的成績顯示數(shù)組中平均成績40的學生以及他們的成績顯示數(shù)組中姓張的學生以及他們的成績退出輸入選擇1-5: 4 * 學生信息*張三:9908數(shù)學:48英語:62程序設計:55平均成績:55.0增加一個學生顯示數(shù)組中所有的學生以及他們的成績顯示數(shù)組中平均成績40的學生以及他們的成績顯示數(shù)組中姓張的學生以及他們的成績退出輸入選擇1-5: 5* 再見 *5、編寫一個自動點歌系統(tǒng)具體要求:創(chuàng)建兩個類PlayList和JukeBox.。PlayList類用數(shù)組放一組字符串,還記錄了 當前字符串的個數(shù)。這個類中要設計方法完成以下功能:增加一個字符串,刪除一

10、個字符串, 獲得指定位置的字符串,獲得當前字符串的個數(shù),檢查字符串數(shù)組是否為空,是否已滿。其 他內(nèi)容見UML圖:PlayListPiayLisuini)addTaQueueString) : boolean rema/eFramQi.iei.ie(): boolean i$Empiy):boaiean$Fuil): booleangerlrem(inr): SiringgetTota!(): intJukeBox類用來測試PlayList類,它模擬點歌操作。每一個字符串代表歌名。程序首先提示用戶輸入歌曲的最大個數(shù),然后創(chuàng)建Pllayist對象。接著程序允許用戶選擇:增加一首歌曲播放第一首顯示歌

11、曲列表退出選項1,輸入歌曲的名字和歌手的名字選項2顯示第一首歌的名字,然后刪除選項3顯示當前所有歌曲列表選項4:顯示:再見,退出程序程序運行示例:* 點歌臺*歌曲最大個數(shù):2增加歌曲播放第一首顯示歌曲列表退出選擇1-4: 3*沒有歌曲*增加歌曲播放第一首顯示歌曲列表退出選擇 1-4: 1輸入歌曲名稱和歌手名字-周杰倫:聽媽媽的話* 加入歌曲 *周杰倫:聽媽媽的話增加歌曲播放第一首顯示歌曲列表退出選擇 1-4: 1輸入歌曲名稱和歌手名字-S.H.E: Super Star* 加入歌曲 *S.H.E: Super Star增加歌曲播放第一首顯示歌曲列表退出選擇 1-4: 1*不能增加,歌曲表已滿*

12、增加歌曲播放第一首顯示歌曲列表退出選擇1-4: 2*現(xiàn)在播放*周杰倫:聽媽媽的話增加歌曲播放第一首顯示歌曲列表退出選擇 1-4: 3*當前歌曲列表*S.H.E: Super Star增加歌曲播放第一首顯示歌曲列表退出選擇 1-4: 1輸入歌曲名稱和歌手名字-周杰倫:發(fā)如雪*加入歌曲*周杰倫:發(fā)如雪增加歌曲播放第一首顯示歌曲列表退出選擇 1-4: 3* 當前歌曲列表 *S.H.E: Super Star周杰倫:發(fā)如雪增加歌曲播放第一首顯示歌曲列表退出選擇 1-4: 2* 現(xiàn)在播放 *S.H.E:Super Star增加歌曲播放第一首顯示歌曲列表退出選擇1-4: 6*無效操作*增加歌曲播放第一首顯

13、示歌曲列表退出選擇 1-4: 4*歡迎再次光臨,再見*6、編寫一個簡單的工資管理系統(tǒng)。具體要求:設計三個類 Employee類,Manager類和HourlyWorker類。Manager類和 HourlyWorker類是Employee類的子類。Emloyee類記錄職工的姓名和編號,Manager類增 加了經(jīng)理的工資屬性;Hwourlyworker記錄鐘點工每小時的工資數(shù)和一個月的工作小時數(shù)。 每一個類中必須包含構造函數(shù),析構函數(shù),修改和獲取所有數(shù)據(jù)成員的函數(shù),計算職工工資, 顯示職工姓名和編號的虛函數(shù)。主函數(shù)中設計一個數(shù)組存放所有職工對象。提示用戶選擇:增加一個職工顯示數(shù)組中所有的職工以及

14、他們的工資顯示數(shù)組中所有的經(jīng)理以及他們的工資顯示數(shù)組中鐘點工以及他們的工資退出選擇1時,輸入職工名字,編號,職工類別,工資情況選擇2時,顯示數(shù)組中所有職工的姓名,編號和工資選擇3時,顯示數(shù)組中所有經(jīng)理的姓名,編號和工資選擇4時,顯示數(shù)組中所有鐘點工的姓名,編號和工資選擇5,提示“謝謝使用,再會”后,退出。程序運行示例:增加一個職工顯示數(shù)組中所有的職工以及他們的工資顯示數(shù)組中所有的經(jīng)理以及他們的工資顯示數(shù)組中鐘點工以及他們的工資退出輸入選擇:1輸入職工信息:姓名:張三編號:9904類別:經(jīng)理月工資:2000*增加一個職工*張三 9904 2000增加一個職工顯示數(shù)組中所有的職工以及他們的工資顯示

15、數(shù)組中所有的經(jīng)理以及他們的工資顯示數(shù)組中鐘點工以及他們的工資退出輸入選擇:1輸入職工信息:姓名:李四編號:9905類別:經(jīng)理月工資:1000*增加一個職工*李四 9905 1000增加一個職工顯示數(shù)組中所有的職工以及他們的工資顯示數(shù)組中所有的經(jīng)理以及他們的工資顯示數(shù)組中鐘點工以及他們的工資退出輸入選擇:1輸入職工信息:姓名:王五編號:9906類別:鐘點工小時工資:10月工作小時數(shù):50*增加一個職工*王五 9906 小時工資:10,月工作小時數(shù):50增加一個職工顯示數(shù)組中所有的職工以及他們的工資顯示數(shù)組中所有的經(jīng)理以及他們的工資顯示數(shù)組中鐘點工以及他們的工資退出輸入選擇:2*職工工資表*張三

16、9904 2000李四 9905 1000王五 9906 500增加一個職工顯示數(shù)組中所有的職工以及他們的工資顯示數(shù)組中所有的經(jīng)理以及他們的工資顯示數(shù)組中鐘點工以及他們的工資退出輸入選擇:3*經(jīng)理工資表*張三 9904 2000李四 9905 1000增加一個職工顯示數(shù)組中所有的職工以及他們的工資顯示數(shù)組中所有的經(jīng)理以及他們的工資顯示數(shù)組中鐘點工以及他們的工資退出輸入選擇:4*鐘點工工資表*王五 990610 50 500增加一個職工顯示數(shù)組中所有的職工以及他們的工資顯示數(shù)組中所有的經(jīng)理以及他們的工資顯示數(shù)組中鐘點工以及他們的工資退出輸入選擇:5*謝謝使用,再會*7、定義如下整數(shù)鏈表的函數(shù)成員

17、 class LIST struct NODE int value;NODE *next;NODE (int, NODE *); *head;public:LIST(void);LIST (const LIST &);int find(int value) const;/查找元素value,若找到返回1,否則返回0 int operator (int k) const; 取表的第 k 個元素virtual LIST operator+ (const LIST&) ;/ 表的合并運算virtual LIST operator+ (int value) ;/ 插入一個元素 virtual LIST

18、 operator- (int value) ;/ 刪除一個元素 virtual LIST &operator+= (const LIST&) ;/ 表的合并運算 virtual LIST &operator+= (int value) ;/ 插入一個元素 virtual LIST &operator-= (int value) ;/ 輸出一個元素 virtual LIST &operator= (const LIST&) ;/ 賦值 virtual LIST (void);8、定義如下集合類的函數(shù)成員class SETint *elem;存放集合元素的動態(tài)內(nèi)存int count, total

19、;目前元素個數(shù)及最大元素個數(shù)public:SET(int total);SET (const SET &);int find(int val) const; 查找元素val,若找到返回1,否則返回0int full(void)const;/集合滿時返回1,否則返回0int empty(void)const;/集合空時返回1,否則返回0virtual SET operator+(const SET &);/集合的并集virtual SET operator-(const SET &);/集合的差集virtual SET operator*(const SET &);/集合的交集virtual S

20、ET operator(int value);/刪除一個元素virtual SET &operator+=(const SET &);/集合的并集virtual SET &operator-=(const SET &);/集合的差集virtual SET &operator*=(const SET &);/集合的交集virtual SET &operator=(const SET &);/刪除一個元素virtual SET &operator=(const SET &);virtual SET (void);9、定義類描述有限狀態(tài)自動機,狀態(tài)的輸入和輸出關系可以描述為鏈表數(shù)據(jù)成員: class STATE;class LISTLIST *next;char input;STATE *output;LIST(char in, STATE *out); /私有,僅供 STATE 使用LIST();friend STATE;class STATEchar *name ;/狀態(tài)名LIST *lis

溫馨提示

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

評論

0/150

提交評論