《《C++面向?qū)ο蟪绦蛟O(shè)計》課程設(shè)計_任務(wù)書new》由會員分享,可在線閱讀,更多相關(guān)《《C++面向?qū)ο蟪绦蛟O(shè)計》課程設(shè)計_任務(wù)書new(5頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、《C++面向?qū)ο蟪绦蛟O(shè)計》課程設(shè)計任務(wù)書
學(xué)年學(xué)期:2013-2014學(xué)年第三學(xué)期
專業(yè)班級:13計算機物聯(lián)網(wǎng)工程
指導(dǎo)教師:陳培芝
設(shè)計時間:2014/06/08 ~ 2014/07/04
學(xué)時周數(shù):共2.0周.
一、設(shè)計目的
課程設(shè)計是學(xué)習(xí)C++程序設(shè)計的一個重要環(huán)節(jié)。通過課程設(shè)計的綜合訓(xùn)練,可以使學(xué)生在學(xué)習(xí)理論知識并在實驗中進行了一系列基本訓(xùn)練的基礎(chǔ)上,進一步加強學(xué)生對實際問題分析、編程和動手能力的提高,強化綜合應(yīng)用能力,擴充知識,開闊視野。學(xué)生在熟練運用Visual C++ 6.0以后,通過使用Visual C++ 6.0的訓(xùn)練,擴展程序設(shè)計的知識面,提高綜合應(yīng)用C++知
2、識能力的要求。
二、設(shè)計任務(wù)及要求
任務(wù)一:學(xué)校人員信息管理系統(tǒng)
設(shè)計任務(wù):設(shè)計一個學(xué)校人員信息管理系統(tǒng),可以實現(xiàn)對學(xué)校人事的信息管理。
基本功能要求:
(1)建立人員信息數(shù)據(jù)
包括學(xué)號(教工號)、姓名、性別、專業(yè)(工作系別部門)、出生時間、年齡。其中,
<1> 對學(xué)生,還包括3門課的成績(Chinese, English, Mathematics)。三門課的成績?yōu)閕nt型數(shù)據(jù)。
<2> 對教師,還包括職稱(如教授/副教授/講師),工資(如1432.50)。工資為double型數(shù)據(jù)。
【英語命名提示】:
姓名: name; 性別:sex; 專業(yè):major; 工作
3、系別:department
教授:professor; 副教授:Associate Professor; 講師:Lecturer
工資:salary
(2)使用繼承的方法構(gòu)造3個類,對相應(yīng)的對象放置10個學(xué)生(教師)信息。
People類——虛基類
Student類——派生類
Teacher類——派生類
(3)數(shù)據(jù)基本功能:
增加數(shù)據(jù):AddData()函數(shù)。
刪除數(shù)據(jù):DeleteData()函數(shù)。根據(jù)學(xué)號(教工號),刪除該人員的記錄。
修改數(shù)據(jù): UpdateData()函數(shù)。對學(xué)生,根據(jù)學(xué)號,能夠修改3門課的成績;對教師,根據(jù)教工號,能夠修改“職稱”和“工
4、資”。
查找功能:
1)SearchData()函數(shù)。要求能夠根據(jù)“學(xué)號(教工號)”、“姓名”、“性別”三項實現(xiàn)查詢,并能在屏幕上顯示滿足條件的數(shù)據(jù)記錄。
2)FindMaxData()函數(shù)。對學(xué)生,查找“English”課程成績最高的學(xué)生記錄并打印;對教師,查找“工資”最高的教師記錄并打印。要求:采用函數(shù)模板實現(xiàn)。
顯示功能:DisplayData()函數(shù)。在屏幕上打印所有的數(shù)據(jù)記錄;打印時,先打印學(xué)生的記錄,后打印教師的記錄。并且按學(xué)生(教工號)升序打?。ㄟx擇)。
(4)重載功能:
要求對“<<”和“>>”運算符進行重載??紤]到輸人學(xué)生(教工)姓名時,名字中可能引入空格,
5、所以重載“>>”運算符時,需要滿足這個要求。
(5)異常處理功能:
設(shè)置異常處理,對教師工資為負數(shù)的情況給出提示。
(6)文件的輸入輸出功能(選擇):
能夠從文件中讀入數(shù)據(jù)。外部文件為Student_ext.dat, Teacher_ext.dat。
能夠?qū)?shù)據(jù)保存到相應(yīng)目錄的文件中。保存數(shù)據(jù)時,分兩個文件分別保存Student.dat, Teacher.dat。
(7)參考系統(tǒng)界面如示:
參考系統(tǒng)界面如下:
1-增加一位人員(教師、學(xué)生)記錄
2-刪除一個人員記錄
3-修改一個人員記錄
4-根據(jù)“學(xué)號(教工號)”、“姓名”、“性別”查找記錄
5-根
6、據(jù)人員類別(學(xué)生、教師)查找“English”課程成績最高的學(xué)生,或最高工資的教師
6-顯示全部人員記錄
7-從外部文件追加數(shù)據(jù)
8-將所有數(shù)據(jù)保存到磁盤文件
9-退出系統(tǒng)。
如下例題所示:
任務(wù)二:運算符的重載
(1) 編寫程序,用于進行集合的并、差和交運算。例如輸入整數(shù)集合{9 5 4 3 6 7}和{2 4 6 9},計算出它們進行集合的并、差和交運算后的結(jié)果。
用以下表達式實現(xiàn)整數(shù)集合的運算:
s1+s2 兩個整數(shù)集合的并運算
s1-s2 兩個整數(shù)集合的差運算
s1*s2 兩個整數(shù)集合的交運算
(2) 1、下面給出的程序是用于打印九九乘法
7、表,但程序有錯誤,請調(diào)試,使得程序運行后,能夠輸出如下顯示的九九乘法表
#include
using namespace std;
int main()
{
int i,j;
cout<<"*";
for(i=1;i<=9;i++)
cout<
8、
6月23日
一、布置任務(wù),講解課程的基本設(shè)計思路和基本要求。
二、講解課程設(shè)計報告本要求、需要提交電子資料
三、說明課程設(shè)計的成績評定標準。
四、開始《學(xué)校人員信息管理系統(tǒng)》的設(shè)計,或者經(jīng)過指導(dǎo)老師同意后,自選課程設(shè)計題。
6月24日
一.學(xué)生自主設(shè)計,老師輔導(dǎo)。
二.檢查學(xué)生的程序框架、類的主要框架描述完成情況。
三.完成“數(shù)據(jù)基本功能”,老師檢查完成情況;
四.完成“系統(tǒng)界面”設(shè)計,老師檢查完成情況;
6月30日
一.學(xué)生自主設(shè)計,老師輔導(dǎo),并進行抽查。
二.完成“重載功能”,老師檢查完成情況;
三.完成“異常處理功能”,老師檢查完成情況;
四.整個系統(tǒng)的功
9、能代碼完成,老師進行抽查。
7月4日
一.撰寫測試用例,對系統(tǒng)功能、性能進行測試;
二.老師抽查,對學(xué)生提交系統(tǒng)的代碼可讀性、可維護性進行講解并分析;
三.再次強調(diào)課程設(shè)計報告本要求,設(shè)計報告格式要求。
四.要求學(xué)生按要求提交電子資料、課程設(shè)計報告紙制版。
四、成績考核
與任課教師針對課程設(shè)計的具體問題,進行提問與論述,然后打分。
五、報告書寫格式
參考:《C++面向?qū)ο蟪绦蛟O(shè)計》課程設(shè)計報告
六、參考資料
[1] C++面向?qū)ο蟪绦蛟O(shè)計教程(第3版),陳維興,林小茶,清華大學(xué)出版社,2009。
[2]《C++程序設(shè)計》(第2版),吳乃陵,況迎輝,高等教育出版社,2006。
[3]《C++程序設(shè)計實踐教程》(第2版),吳乃陵,況迎輝,高等教育出版社,2006。
[4]《C++面向?qū)ο蟪绦蛟O(shè)計教程(第3版)習(xí)題解答與上機指導(dǎo)》,清華大學(xué)出版社,陳維興,陳昕,林小茶,2009。
指導(dǎo)教師(簽名):
年 月 日