




已閱讀5頁,還剩41頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1 基于 C 的面向?qū)ο蟪绦蛟O(shè)計實例 課程設(shè)計報告 報告題目 小型公司工資管理系統(tǒng)設(shè)計 作者所在系部 計算機科學與工程系 作者所在專業(yè) 計算機應(yīng)用技術(shù) 作者所在班級 作 者 姓 名 指導(dǎo)教師姓名 完 成 時 間 2012 6 21 北華航天工業(yè)學院課程設(shè)計報告 2 北華航天工業(yè)學院教務(wù)處制 摘 要 在當前的市場經(jīng)濟體制下 一個公司要好的發(fā)展 不但要有好的管理制度 優(yōu)秀的 管理人員 同時也要有一個健全的并且適合自身特點的公司人員管理和員工工資管理系 統(tǒng) 以實現(xiàn)公司人員管理 工資管理的目 本文在 Microsoft Visual C 6 0 環(huán)境下 利用 c 語言編寫程序 實現(xiàn)了公司對 雇員工資信息的管理操作 本系統(tǒng)一簡單易懂為原則 便于操作 本系統(tǒng)一簡單易懂為原則 便于操作 本系統(tǒng)主要有九個功能模塊 1 修改職工信息 2 查詢職工信息 3 刪除職工 信息 4 添加職工信息 5 顯示所有職工信息 6 計算員工工資 7 讀入員工信息 8 保存員工信息 9 統(tǒng)計員工信息 已經(jīng)通過全面的系統(tǒng)測試 能夠很好的運行 達 到了預(yù)期的效果 關(guān)鍵詞 c 功能模塊 工資 信息 北華航天工業(yè)學院課程設(shè)計報告 II 目錄目錄 摘摘 要要 I 目錄目錄 II 課程設(shè)計任務(wù)書課程設(shè)計任務(wù)書 IV 第一章第一章 緒論緒論 1 1 1 1 1 課程設(shè)計的目的課程設(shè)計的目的 1 1 1 2 2 課程設(shè)計的背景和意義課程設(shè)計的背景和意義 1 1 2 1 課程設(shè)計的背景 1 1 2 2 課程設(shè)計的意義 2 1 1 3 3 課程設(shè)計環(huán)境課程設(shè)計環(huán)境 2 第二章第二章 需求分析需求分析 3 2 1 問題描述問題描述 3 2 2 功能要求功能要求 3 2 2 問題的解決方案問題的解決方案 3 第三章第三章 系統(tǒng)設(shè)計系統(tǒng)設(shè)計 4 3 3 1 1 數(shù)據(jù)設(shè)計數(shù)據(jù)設(shè)計 4 3 1 1 類設(shè)計 4 3 1 2 類之間的關(guān)系 6 3 1 3 函數(shù)設(shè)計 6 3 2 結(jié)構(gòu)設(shè)計 6 3 2 1 系統(tǒng)流程圖 6 3 2 2 界面設(shè)計 7 北華航天工業(yè)學院課程設(shè)計報告 III 第四章第四章 系統(tǒng)實現(xiàn)系統(tǒng)實現(xiàn) 8 4 4 1 1 類實現(xiàn)類實現(xiàn) 8 4 4 3 3 主函數(shù)實現(xiàn)主函數(shù)實現(xiàn) 35 第五章第五章 系統(tǒng)測試系統(tǒng)測試 36 5 5 1 1 模塊測試模塊測試 36 5 5 2 2 課程設(shè)計過程中遇到的問題課程設(shè)計過程中遇到的問題 37 總總 結(jié)結(jié) 39 致致 謝謝 40 參考文獻參考文獻 40 附附 錄錄 40 北華航天工業(yè)學院課程設(shè)計報告 IV 課題名稱課題名稱小型公司工資管理系統(tǒng)設(shè)計完成時間完成時間2012 6 212012 6 21 指導(dǎo)教師指導(dǎo)教師賈振華賈振華職稱職稱講師講師學生姓名學生姓名孟偉閃孟偉閃班班 級級1151311513 總體設(shè)計要求和技術(shù)要點總體設(shè)計要求和技術(shù)要點 1 問題描述 某公司需要存儲雇員的編號 姓名 性別 所在部門 級別 并進行工資的計算 其中 雇員分 為經(jīng)理 技術(shù)人員 銷售人員和銷售經(jīng)理 四類人員的月薪計算方法如下 經(jīng)理拿固定月薪 技術(shù)人 員按小時領(lǐng)取月薪 銷售人員按其當月銷售額的提成領(lǐng)取工資 銷售經(jīng)理既拿固定月薪也領(lǐng)取銷售提 成 設(shè)計一程序能夠?qū)救藛T進行管理 應(yīng)用到繼承 抽象類 虛函數(shù) 虛基類 多態(tài)和文件的輸 入 輸出等內(nèi)容 2 功能要求 1 添加功能 程序能夠任意添加上述四類人員的記錄 可提供選擇界面供用戶選擇所要添加 的人員類別 要求員工的編號要唯一 如果添加了重復(fù)編號的記錄時 則提示數(shù)據(jù)添加重復(fù)并取消添 加 2 查詢功能 可根據(jù)編號 姓名等信息對已添加的記錄進行查詢 如果未找到 給出相應(yīng)的 提示信息 如果找到 則顯示相應(yīng)的記錄信息 3 顯示功能 可顯示當前系統(tǒng)中所有記錄 每條記錄占據(jù)一行 4 編輯功能 可根據(jù)查詢結(jié)果對相應(yīng)的記錄進行修改 修改時注意編號的唯一性 5 刪除功能 主要實現(xiàn)對已添加的人員記錄進行刪除 如果當前系統(tǒng)中沒有相應(yīng)的人員記錄 則提示 記錄為空 并返回操作 否則 輸入要刪除的人員的編號或姓名 根據(jù)所輸入的信息刪除 該人員記錄 如果沒有找到該人員信息 則提示相應(yīng)的記錄不存 6 統(tǒng)計功能 能根據(jù)多種參數(shù)進行人員的統(tǒng)計 例如 統(tǒng)計四類人員數(shù)量以及總數(shù) 或者統(tǒng)計男 女員工的數(shù)量 或者統(tǒng)計平均工資 最高工資 最低工資等信息 7 保存功能 可將當前系統(tǒng)中各類人員記錄存入文件中 存入方式任意 8 讀取功能 可將保存在文件中的人員信息讀入到當前系統(tǒng)中 供用戶進行使用 工作內(nèi)容及時間進度安排工作內(nèi)容及時間進度安排 1 6 月 4 日 10 日 布置任務(wù) 軟件設(shè)計 2 6 月 11 日 18 日 編寫代碼 上機調(diào)試 3 6 月 19 20 21 日 軟件驗收 撰寫課程設(shè)計報告 4 各班在 6 月 22 日下午五點前將課程設(shè)計報告收齊并上交 北華航天工業(yè)學院課程設(shè)計報告 V 課程設(shè)計任務(wù)書 第一章 緒論 1 1 課程設(shè)計的目的 1 此次課程設(shè)計的目的是以 c 程序設(shè)計基礎(chǔ) 為基礎(chǔ) 針對具有一定難度的綜合 性題目 進行分析 編程 調(diào)試和運行 進一步掌握面向?qū)ο蠛兔嫦蜻^程程序設(shè)計的基本 方法和編程技巧 鞏固所學理論知識 使理論與實踐相結(jié)合 提高分析問題 解決問 題的能力 要求學生達到熟練掌握 C 語言的基本知識和技能 2 基本掌握面向?qū)ο蟪绦蛟O(shè)計的基本思路和方法 3 能夠利用所學的基本知識和技能 解決簡單的面向?qū)ο蟪绦蛟O(shè)計問題 4 通過設(shè)計一個簡單的 小型公司工資管理系統(tǒng)小型公司工資管理系統(tǒng) 進一步熟悉 C 中類的概念 類的封裝 繼承和多態(tài)的實現(xiàn)方式 掌握文件的錄入 查找 對象指針的使用 了解系 統(tǒng)開發(fā)的需要分析 類層次設(shè)計 模塊分析 編碼測試 模塊組裝與整體調(diào)試的全過程 逐步熟悉程序設(shè)計的方法 并養(yǎng)成良好的編程習慣 1 2 課程設(shè)計的背景和意義 1 2 1 課程設(shè)計的背景 1 理論研究基礎(chǔ) C 面向?qū)ο蟪绦蛟O(shè)計 是計算機專業(yè)的基礎(chǔ)課程 本課程按照軟件程序設(shè)計所需 能力進行教學設(shè)計 提出以項目模塊方式帶動相關(guān)知識點 實踐項目和理論并行的思路 將案例貫穿于課程始終 對原有的教學體系 教學內(nèi)容進行重新編排 按照從易到難的原 則 將其巧妙地融入到項目開發(fā)過程中 降低學習難度 提高學生學習的信心 有效培養(yǎng) 學生的應(yīng)用能力和學習能力 2 技術(shù)層面的支持 本系統(tǒng)運用到 類與對象在 C 中的實現(xiàn) 靜態(tài)數(shù)據(jù)成員 運算符重載 友元函數(shù)繼 承與派生的基本知識 單繼承和多繼承 虛基類的作用與使用 虛函數(shù)的定義和使用 純 北華航天工業(yè)學院課程設(shè)計報告 2 虛函數(shù)和抽象類的定義和使用 輸入輸出流的概念 輸入 輸出流操作 文件的創(chuàng)建 打 開 讀寫 關(guān)閉等操作 1 2 2 課程設(shè)計的意義 本課程按照軟件程序設(shè)計所需能力進行教學設(shè)計 提出以項目模塊方式帶動相關(guān)知識 點 實踐項目和理論并行的思路 將案例貫穿于課程始終 對原有的教學體系 教學內(nèi)容 進行重新編排 按照從易到難的原則 將其巧妙地融入到項目開發(fā)過程中 降低學習難度 提高學生學習的信心 有效培養(yǎng)學生的應(yīng)用能力和學習能力 小型公司工資管理對公司管理有著很重要的作用 在當今社會應(yīng)用廣泛 1 3 課程設(shè)計環(huán)境 硬件平臺 CPU i5 2 67GHz RAM 512MB 以上 軟件平臺 操作系統(tǒng) Windows xp Windows 7 編輯環(huán)境 Visual c 6 0 分辨率 最佳效果 1024 768 像 北華航天工業(yè)學院課程設(shè)計報告 3 第二章 需求分析 2 1 問題描述 某公司需要存儲雇員的編號 姓名 性別 所在部門 級別 并進行工資的計算 其中 雇員分 為經(jīng)理 技術(shù)人員 銷售人員和銷售經(jīng)理 四類人員的月薪計算方法如下 經(jīng)理拿固定月薪 技術(shù)人 員按小時領(lǐng)取月薪 銷售人員按其當月銷售額的提成領(lǐng)取工資 銷售經(jīng)理既拿固定月薪也領(lǐng)取銷售提 成 設(shè)計一程序能夠?qū)救藛T進行管理 應(yīng)用到繼承 抽象類 虛函數(shù) 虛基類 多態(tài)和文件的輸 入 輸出等內(nèi)容 2 2 功能要求 1 添加功能 程序能夠任意添加上述四類人員的記錄 可提供選擇界面供用戶選擇所要添加的 人員類別 要求員工的編號要唯一 如果添加了重復(fù)編號的記錄時 則提示數(shù)據(jù)添加重復(fù)并取消添加 2 查詢功能 可根據(jù)編號 姓名等信息對已添加的記錄進行查詢 如果未找到 給出相應(yīng)的提 示信息 如果找到 則顯示相應(yīng)的記錄信息 3 顯示功能 可顯示當前系統(tǒng)中所有記錄 每條記錄占據(jù)一行 4 編輯功能 可根據(jù)查詢結(jié)果對相應(yīng)的記錄進行修改 修改時注意編號的唯一性 5 刪除功能 主要實現(xiàn)對已添加的人員記錄進行刪除 如果當前系統(tǒng)中沒有相應(yīng)的人員記錄 則提示 記錄為空 并返回操作 否則 輸入要刪除的人員的編號或姓名 根據(jù)所輸入的信息刪除 該人員記錄 如果沒有找到該人員信息 則提示相應(yīng)的記錄不存 6 統(tǒng)計功能 能根據(jù)多種參數(shù)進行人員的統(tǒng)計 例如 統(tǒng)計四類人員數(shù)量以及總數(shù) 或者統(tǒng)計男 女員工的數(shù)量 或者統(tǒng)計平均工資 最高工資 最低工資等信息 7 保存功能 可將當前系統(tǒng)中各類人員記錄存入文件中 存入方式任意 8 讀取功能 可將保存在文件中的人員信息讀入到當前系統(tǒng)中 供用戶進行使用 2 2 問題的解決方案 根據(jù)系統(tǒng)功能要求 可以將問題解決分為以下步驟 1 應(yīng)用系統(tǒng)分析 建立該系統(tǒng)的功能模塊框圖以及界面的組織和設(shè)計 2 分析系統(tǒng)中的各個實體及它們之間的關(guān)系 3 根據(jù)問題描述 設(shè)計系統(tǒng)的類層次 4 完成類層次中各個類的描述 5 完成類中各個成員函數(shù)的定義 北華航天工業(yè)學院課程設(shè)計報告 4 6 完成系統(tǒng)的應(yīng)用模塊 7 功能調(diào)試 8 完成系統(tǒng)總結(jié)報告 第三章 系統(tǒng)設(shè)計 3 1 數(shù)據(jù)設(shè)計 3 1 1 類設(shè)計 根據(jù)課程設(shè)計要求 需要定義六個類 雇員類 基類 worker 如表 3 1 1 經(jīng)理 類 manager 如表 3 1 2 技術(shù)人員類 technologyman 表 3 1 3 銷售人員類 saleman 如表 3 1 4 銷售經(jīng)理類 salemanager 如表 3 1 5 和管理類 control 如表 3 1 6 表 3 1 1 雇員類 數(shù)據(jù)成員 編號 int num 姓名 char name 20 性別 char sex 5 部門 char branch 20 int mark static int count static int count1 static int count2 static int count3 static int count4 static int count5 static int count6 int basic double worktime double xiaoshoue int job 雇員類 成員函數(shù) worker worker int mark virtual worker static int display1 friend istream friend ostream friend ostream friend ostream friend ostream friend ostream count virtual worker cout 員工類被析構(gòu) istream friend ostream static int display1 return count void input virtual void inputmoney virtual void display virtual void display2 0 virtual void money 0 char getjibie return jibie double getworktime return worktime 北華航天工業(yè)學院課程設(shè)計報告 9 double getxiaoshoue return xiaoshoue worker next int num char name 20 char sex 5 char branch 20 部門 char jibie 20 int mark static int count count1 count2 count3 count4 count5 count6 int basic double worktime double xiaoshoue int job 職務(wù) 2 經(jīng)理類 class manager virtual public worker 經(jīng)理 public manager manager int mark worker mark manager cout 經(jīng)理類被析構(gòu) istream friend ostream void inputmoney job 1 cout 請輸入職員基本工資 basic count3 void display2 cout 職務(wù) 經(jīng)理 職員基本工資 endl cout basic 北華航天工業(yè)學院課程設(shè)計報告 10 void money cout 該員工的實際工資是 basic endl 3 技術(shù)人員類 class technologyman virtual public worker 技術(shù)人員 public technologyman technologyman int mark worker mark technologyman cout 技術(shù)人員類被析構(gòu) endl void inputmoney job 3 cout 請輸入職員工作時間 worktime count5 void display2 cout 職務(wù) 技術(shù)人員 職員工作時間 endl cout worktime void money jine 35 cout 該員工的實際工資是 jine worktime istream friend ostream int jine 4 銷售人員類 class saleman virtual public worker 銷售人員 public saleman saleman int mark worker mark saleman cout 銷售人員類被析構(gòu) endl void inputmoney 北華航天工業(yè)學院課程設(shè)計報告 11 job 2 cout 請輸入職員銷售額 xiaoshoue ount4 oid display2 cout 職務(wù) 銷售人員 職員銷售額 endl cout xiaoshoue void money tichengbili 0 05 cout 該員工的實際工資是 xiaoshoue tichengbili istream friend ostream double tichengbili 5 銷售經(jīng)理 class salemanager public manager public saleman 銷售經(jīng)理 public salemanager salemanager int mark worker mark salemanager cout 銷售經(jīng)理類被析構(gòu) endl void inputmoney job 4 cout 請輸入職員基本工資 銷售額 basic xiaoshoue count6 void display2 cout 職務(wù) 銷售經(jīng)理 職員基本工資 銷售額 endl cout basic xiaoshoue void money tichengbili 0 03 cout 該員工的實際工資是 basic xiaoshoue tichengbili istream friend ostream 指向下一個節(jié)點 delete head 釋放空間 head p head NULL void showface void changeinformation 修改 void cancelinformation 刪除 void addinformation 添加 void showinformation 顯示 void searchinformation 查詢 void countinformation 計算 void readinformation 讀入 void keepinformation 保存 void tongjiformation 統(tǒng)計 4 2 函數(shù)實現(xiàn) 雇員類 北華航天工業(yè)學院課程設(shè)計報告 13 int worker count 0 int worker count1 0 int worker count2 0 int worker count3 0 int worker count4 0 int worker count5 0 int worker count6 0 void worker input cout 請輸入職員信息 endl cout num cout name int i cout sex if strcmp sex nan 0 strcmp sex nv 0 if strcmp sex nan 0 count1 else count2 break else cout 輸入錯誤請重新輸入 endl cout branch void worker inputmoney cout 基本工資 basic 北華航天工業(yè)學院課程設(shè)計報告 14 void worker display cout 編號 num 姓名 name 性別 sex 部門 istream w inputmoney return in ostream w inputmoney return in ostream w inputmoney return in ostream w inputmoney return in ostream s inputmoney return in ostream 北華航天工業(yè)學院課程設(shè)計報告 16 s display2 return out 管理類 void control showface control control1 int i do cout endl cout endl cout 歡迎使用本職工信息管理系統(tǒng) endl cout 1 添加職工信息 2 查詢職工信息 endl cout 3 刪除職工信息 4 修改職工信息 endl cout 5 顯示所有職工信息 6 計算員工工資 endl cout 7 讀入員工信息 8 保存員工信息 endl cout 9 統(tǒng)計員工信息 0 退出系統(tǒng) endl cout 請選擇相應(yīng)編號 endl cout i if i 9 i 0 cout 輸入錯誤請重新輸入 endl else break 選擇相應(yīng)標號所對應(yīng)的功能 switch i case 1 control1 addinformation break case 2 control1 searchinformation break case 3 control1 cancelinformation break case 4 control1 changeinformation break case 5 control1 showinformation break case 6 control1 countinformation break case 7 control1 readinformation break 北華航天工業(yè)學院課程設(shè)計報告 17 case 8 control1 keepinformation break case 9 control1 tongjiformation break case 0 break default cout 選擇錯誤 請重新選擇 endl while i 0 void control addinformation 添加職工信息 control control1 worker p NULL 新增結(jié)點指針 int i 選擇變量 do 添加職工信息菜單 cout endl cout endl cout 請選擇增加的員工種類 endl cout 1 增加經(jīng)理 2 增加銷售人員 endl cout 3 增加技術(shù)人員 4 增加銷售經(jīng)理 endl cout 5 返回上級菜單 endl cout endl cout 請選擇相應(yīng)編號 endl cout i if i 5 i 0 cout 輸入錯誤請重新輸入 p break case 2 p new saleman 2 cin p break 北華航天工業(yè)學院課程設(shè)計報告 18 case 3 p new technologyman 3 cin p break case 4 p new salemanager 4 cin p break case 5 break p next NULL 員工結(jié)點加入鏈表 if i 5 if head NULL 鏈表已經(jīng)存在 worker p1 NULL p2 NULL 指針初始化 p1 head if p1 num p num cout 添加重復(fù) next p2 next p 連接結(jié)點 cout 信息添加成功 endl else 鏈表不存在 head p 連接結(jié)點 cout 信息添加成功 endl while i 5 void control cancelinformation 刪除職工信息 worker p1 NULL p2 NULL p1 head if p1 NULL cout 系統(tǒng)暫無信息 無法刪除 請錄入信息 endl 北華航天工業(yè)學院課程設(shè)計報告 19 return int i 選擇變量 do 刪除職工信息菜單 cout endl cout endl cout 請選擇刪除方式 endl cout 1 按照編號 2 按照姓名 endl cout 3 按照部門 4 返回上級菜單 endl cout endl cout 請選擇相應(yīng)編號 endl cout i if i 4 i 0 cout 輸入錯誤請重新輸入 endl else break switch i case 1 int num cout num p1 head while p1 NULL if p1 num num break else p2 p1 p1 p1 next break 北華航天工業(yè)學院課程設(shè)計報告 20 case 2 char name 20 cout name p1 head while p1 NULL if strcmp p1 name name 0 break else p2 p1 p1 p1 next break case 3 char branch 20 cout branch p1 head while p1 NULL if strcmp p1 branch branch 0 break else p2 p1 p1 p1 next break case 4 return 北華航天工業(yè)學院課程設(shè)計報告 21 刪除結(jié)點 if i 4 if p1 NULL 找到結(jié)點 刪除 f p1 head 要刪除的結(jié)點是第一個結(jié)點 head p1 next delete p1 else 要刪除的結(jié)點不是第一個結(jié)點 p2 next p1 next delete p1 cout 信息刪除成功 endl worker count else 未找到結(jié)點 cout 信息刪除失敗 endl while i 4 void control searchinformation 查詢職工信息 worker p1 NULL p2 NULL p1 head if p1 NULL cout 系統(tǒng)暫無信息 無法查詢 請錄入信息 endl return int i 選擇變量 do 北華航天工業(yè)學院課程設(shè)計報告 22 cout endl cout endl cout 請選擇查詢方式 endl cout 1 按照編號 2 按照姓名 endl cout 3 按照部門 4 按照職務(wù) endl cout 5 返回上級菜單 endl cout endl cout 請選擇相應(yīng)編號 endl cout i if i 5 i 0 cout 輸入錯誤請重新輸入 endl else break switch i case 1 int num cout num p1 head while p1 NULL if p1 num num break else p2 p1 p1 p1 next if p1 NULL 若找到結(jié)點 cout 職工信息為 endl endl p1 endl else cout 該職工信息不存在 endl 北華航天工業(yè)學院課程設(shè)計報告 23 break case 2 char name 20 cout name p1 head while p1 NULL if strcmp p1 name name 0 break else p2 p1 p1 p1 next if p1 NULL 若找到結(jié)點 cout p1 endl else cout 信息查詢失敗 endl break case 3 char branch 20 int m 0 cout branch p1 head while p1 NULL if strcmp p1 branch branch 0 cout p1 next m 北華航天工業(yè)學院課程設(shè)計報告 24 else p2 p1 p1 p1 next if m 0 cout 信息查詢失敗 endl break case 4 int job int n 0 cout job p1 head while p1 NULL if p1 job job cout p1 next n else p2 p1 p1 p1 next if n 0 cout 查詢失敗 endl break case 5 return 北華航天工業(yè)學院課程設(shè)計報告 25 while i 5 void control changeinformation 修改職工信息 worker p1 NULL p2 NULL if head NULL cout 系統(tǒng)暫無信息 無法修改 請錄入信息 endl return int i 選擇變量 do cout endl cout endl cout 1 修改姓名 2 修改部門 endl cout 3 修改職務(wù) 4 返回上級菜單 endl cout endl cout 請選擇相應(yīng)編號 endl cout i if i 4 i 0 cout 輸入錯誤請重新輸入 endl else break if i 4 int num cout num p1 head while p1 NULL 北華航天工業(yè)學院課程設(shè)計報告 26 if p1 num num break else p2 p1 p1 p1 next if p1 NULL 若找到結(jié)點 cout 編號為 num 的職工原信息為 endl endl p1 endl else cout 該職工信息不存在 endl return 執(zhí)行修改結(jié)點 switch i case 1 cout newname strcpy p1 name newname break case 2 cout newbranch strcpy p1 branch newbranch break 北華航天工業(yè)學院課程設(shè)計報告 27 case 3 cout newjob p1 job newjob break case 4 return if p1 NULL 若找到結(jié)點 cout 修改成功 endl cout 該職工現(xiàn)在的信息為 endl endl p1 endl while i 4 void control showinformation 顯示所有職工信息 cout 顯示所有職工信息 endl worker p1 head 初始化 a if p1 NULL cout 系統(tǒng)暫無信息 請錄入 endl while p1 NULL cout p1 next void control countinformation worker p1 NULL p2 NULL if head NULL cout 系統(tǒng)暫無信息 無法計算 請錄入信息 endl return int i 選擇變量 北華航天工業(yè)學院課程設(shè)計報告 28 do cout endl cout endl cout 1 按照編號 2 按照姓名 endl cout 0 返回上級菜單 endl cout 請選擇相應(yīng)編號 endl cout i if i 2 i 0 cout 輸入錯誤請重新輸入 endl else break switch i case 1 int num cout num p1 head while p1 NULL if p1 num num break else p2 p1 p1 p1 next if p1 NULL 若找到結(jié)點 cout 職工的實際工資為 money 北華航天工業(yè)學院課程設(shè)計報告 29 else cout 該職工信息不存在 endl break case 2 char name 20 cout name p1 head while p1 NULL if strcmp p1 name name 0 break else p2 p1 p1 p1 next if p1 NULL 若找到結(jié)點 cout 職工的實際工資為 money else cout 信息查詢失敗 endl break case 0 return while i 0 void control readinformation 讀入員工信息 int mark 類標記 worker p NULL ifstream infile worker1 txt ios in 北華航天工業(yè)學院課程設(shè)計報告 30 讀取一條記錄 if infile cerr Open error mark switch mark case 1 p new manager 1 p mark 1 infile p num p name p sex p branch p job p basic infile p jibie break case 2 p new saleman 2 p mark 2 infile p num p name p sex p branch p job p xiaoshoue break case 3 p new technologyman 3 p mark 3 infile p num p name p sex p branch p job p worktime break case 4 北華航天工業(yè)學院課程設(shè)計報告 31 p new salemanager 4 p mark 4 infile p num p name p sex p branch p job p basic p jibie p xiaoshoue break p next NULL if mark 0 if head NULL 鏈表已經(jīng)存在 worker p1 NULL 指針初始化 p1 head while p1 next NULL 查找尾結(jié)點 p1 p1 next p1 next p 連接結(jié)點 cout 信息讀入成功 endl break else 鏈表不存在 head p 連接結(jié)點 cout 信息成功 endl infile close cout 信息讀入成功 endl void control keepinformation 保存員工信息 worker p head if p NULL 北華航天工業(yè)學院課程設(shè)計報告 32 cout 系統(tǒng)暫無信息 無法保存 請錄入信息 endl return ofstream outfile worker1 txt ios out if outfile cerr Open error endl abort while p NULL outfile mark num name sex branch job mark 1 outfile getjibie else if p mark 2 outfile getxiaoshoue else if p mark 3 outfile getworktime else if p mark 4 outfile getjibie getxiaoshoue outfile next outfile 0 endl outfile close cout 保存信息成功 endl 北華航天工業(yè)學院課程設(shè)計報告 33 void control tongjiformation worker p1 NULL p2 NULL p1 head if p1 NULL cout 系統(tǒng)暫無信息 請錄入信息 endl return int i 選擇變量 do cout endl cout endl cout 請選擇統(tǒng)計參數(shù) endl cout 1 按照性別 2 按照職務(wù) endl cout 3 總?cè)藬?shù) 4 返回上級菜單 endl cout endl cout 請選擇相應(yīng)編號 endl cout i if i 4 i 0 cout 輸入錯誤請重新輸入 endl else break switch i case 1 int k do cout endl cout endl cout 請選擇 endl cout 1 男員工 2 女員工 endl 北華航天工業(yè)學院課程設(shè)計報告 34 cout 0 返回上級菜單 endl cout endl cout 請選擇相應(yīng)編號 endl cout k if k 2 k 0 cout 輸入錯誤請重新輸入 endl else break switch k case 1 cout 男職工數(shù)為 worker count1 endl break case 2 cout 女職工數(shù)為 worker count2 endl break case 0 break default cout 輸入錯誤 endl while k 0 break case 2 int k do cout endl cout endl cout 請選擇 endl cout 1 經(jīng)理 2 技術(shù)人員 endl cout 3 銷售人員 4 銷售經(jīng)理 endl cout 0 返回上級菜單 endl cout endl cout 請選擇相應(yīng)編號 endl cout k if k 4 k 0 cout 輸入錯誤請重新輸入 endl else break switch k case 1 cout 經(jīng)理人數(shù)為 worker count3 endl break case 2 cout 技術(shù)人員人數(shù)為 worker count5 endl break case 3 cout 銷售人員人數(shù)為 worker count4 endl break case 4 cout 銷售經(jīng)理人數(shù)為 worker count6 endl break case 0 break default cout 輸入錯誤 endl while k 0 break case 3 cout 總員工數(shù)為 worker count endl break case 4 break default cout 輸入錯誤 endl while i 4 4 3 主函數(shù)實現(xiàn) int main 選擇變量 control control1 定義控制變量 contro
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 季度沖量活動方案
- 如何避免危險活動方案
- 孝心寶貝活動方案
- 婚慶抽獎活動方案
- 婚前派對活動方案
- 學校敬老節(jié)活動方案
- 學校氣球展覽活動方案
- 女子體操活動方案
- 婦聯(lián)茶花活動方案
- 奶茶銷售活動方案
- 沃爾瑪收貨規(guī)定
- 微生物實驗實驗一顯微鏡的使用及微生物形態(tài)觀察
- 屠宰場安全隱患排查和治理制度
- 全國《法律職業(yè)資格考試》試卷一預(yù)熱階段同步訓練卷(附答案)
- 2022年丹東市元寶區(qū)社區(qū)工作者招聘筆試題庫及答案解析
- 小學道德與法治人教五年級上冊(統(tǒng)編)第三單元我們的國土我們的家園-愛國教案
- 藝術(shù)欣賞完整版課件全套ppt教程(最新)
- GB∕T 2518-2019 連續(xù)熱鍍鋅和鋅合金鍍層鋼板及鋼帶
- 土地項目測算表_模板
- 教育培訓機構(gòu)輔導(dǎo)老師月度績效考核表(KPI)
- 立式水輪機組軸線調(diào)整及導(dǎo)軸承的間隙分配ppt課件
評論
0/150
提交評論