




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
C語(yǔ)言課程設(shè)計(jì)報(bào)告題目小型職工工資管理系統(tǒng)專(zhuān)業(yè)班級(jí)2016級(jí)通信工程本科1班組別通信第二組學(xué)生姓名院(系)信息工程系指導(dǎo)教師(職稱(chēng))完成時(shí)間2017年5月31日課程設(shè)計(jì)任務(wù)書(shū)題目職工工資管理系統(tǒng)班級(jí)2016級(jí)通信工程本科1班學(xué)號(hào)201605070106姓名學(xué)號(hào)201605070111姓名學(xué)號(hào)201605070118姓名學(xué)號(hào)201605070119姓名學(xué)號(hào)201605070136姓名主要內(nèi)容:本課程設(shè)計(jì)結(jié)合本學(xué)期所學(xué)C語(yǔ)言知識(shí),準(zhǔn)備設(shè)計(jì)開(kāi)發(fā)一個(gè)簡(jiǎn)單職工工資管理系統(tǒng)。工資管理系統(tǒng)是企業(yè)不可或缺的一部分,它利用計(jì)算機(jī)對(duì)員工工資進(jìn)行統(tǒng)一管理,實(shí)現(xiàn)工資管理系統(tǒng)的系統(tǒng)化、規(guī)范化和自動(dòng)化,為企業(yè)提高工作效率。設(shè)計(jì)開(kāi)發(fā)這個(gè)系統(tǒng)需要用到單鏈表、文件讀取操作、結(jié)構(gòu)體、函數(shù)、指針等C語(yǔ)言知識(shí)。本課程設(shè)計(jì)準(zhǔn)備通過(guò)Windows控制臺(tái)應(yīng)用程序?qū)崿F(xiàn)職工工資管理系統(tǒng)的簡(jiǎn)單運(yùn)行。利用所學(xué)知識(shí),本著簡(jiǎn)單、易用的設(shè)計(jì)原則,本課程設(shè)計(jì)盡量實(shí)現(xiàn)良好、美觀的“人機(jī)界面”,便于軟件的操作使用。本次設(shè)計(jì)主要學(xué)習(xí)內(nèi)容包括:(一)進(jìn)一步學(xué)習(xí)并熟練掌握C語(yǔ)言語(yǔ)法和編程思想。(二)學(xué)習(xí)C語(yǔ)言提供的庫(kù)函數(shù),熟悉VisualC++6.0的開(kāi)發(fā)工具。(三)學(xué)習(xí)C語(yǔ)言函數(shù)、鏈表、結(jié)構(gòu)體、文件讀取、指針等知識(shí)。(四)學(xué)習(xí)如何查閱他人的文檔進(jìn)行軟件的設(shè)計(jì)與開(kāi)發(fā)。二、基本要求:(一)質(zhì)量要求1.職工工資管理系統(tǒng)基本功能模塊的設(shè)計(jì)應(yīng)包括:顯示主菜單功能、職工信息的錄入、添加、刪除、修改、查詢(xún)、排序功能,退出系統(tǒng)。測(cè)試文件的讀取與存儲(chǔ)是否正常、測(cè)試評(píng)估界面是否合理,友好。2.對(duì)職工工資管理系統(tǒng)設(shè)計(jì)并進(jìn)行調(diào)試、修復(fù)、完善、測(cè)試。3.定期主動(dòng)向指導(dǎo)教師匯報(bào)任務(wù)進(jìn)度,認(rèn)真填寫(xiě)相關(guān)報(bào)告文檔。4.按時(shí)完成各階段工作,不突擊,不抄襲。(二)進(jìn)度要求1.明確課程設(shè)計(jì)任務(wù),搜集資料:2017年2月28日—3月14日。2.完成程序的設(shè)計(jì)與實(shí)現(xiàn),撰寫(xiě)課程設(shè)計(jì)論文初稿:2017年3月15日—5月15日。3.與指導(dǎo)教師溝通,完成課程設(shè)計(jì)論文定稿:2016年5月16日—2017年5月28日。4.進(jìn)入課程設(shè)計(jì)論文審閱階段,準(zhǔn)備答辯:2017年5月29日—6月9日。三、主要參考資料:1.工資管理系統(tǒng)課程設(shè)計(jì)程序/JZQT_T/article/category/23172352.C語(yǔ)言程序設(shè)計(jì)規(guī)范及基礎(chǔ)/view/58b561255901020207409c7b.html3.《明解C語(yǔ)言第3版》,(日)柴田望洋著,人民郵電出版社4.《CPrimerPlus第6版中文版》,姜佑
譯,人民郵電出版社5.《C程序設(shè)計(jì)第四版》,譚浩強(qiáng)著,清華大學(xué)出版社6.《C和C++實(shí)物精選》,徐波著,北京郵電出版社學(xué)生簽名:指導(dǎo)教師簽名:年月日目錄258081概述 1294151.1設(shè)計(jì)思想 1154911.2設(shè)計(jì)原則 1177841.3性能需求 1299281.4課程設(shè)計(jì)報(bào)告內(nèi)容及分工情況 2216611.4.1課程設(shè)計(jì)報(bào)告內(nèi)容 2175681.4.2課程設(shè)計(jì)分工情況 2316492總體設(shè)計(jì) 3256502.1系統(tǒng)功能設(shè)計(jì)圖 3229602.2主函數(shù)main() 391722.3程序流程圖 4238043詳細(xì)設(shè)計(jì) 5257243.1函數(shù) 520523.2函數(shù)流程圖 10139554運(yùn)行結(jié)果與調(diào)試 16189914.1運(yùn)行結(jié)果 16128994.2程序調(diào)試 2119986結(jié)束語(yǔ) 225517附錄 251概述1.1設(shè)計(jì)思想1.系統(tǒng)分成幾個(gè)相對(duì)獨(dú)立的模塊,但這些模塊都進(jìn)行集中式管理。2.分層的模塊化程序設(shè)計(jì)思想,整個(gè)系統(tǒng)采用模塊化結(jié)構(gòu)設(shè)計(jì)作為應(yīng)用程序,有較強(qiáng)的可操作性和擴(kuò)展性。3.合理的數(shù)據(jù)設(shè)計(jì),在應(yīng)用系統(tǒng)設(shè)計(jì)中,相對(duì)獨(dú)立的模塊間以數(shù)據(jù)相互連接,使各模塊間的耦合性較低,方便系統(tǒng)運(yùn)行,提高系統(tǒng)安全性。1.2設(shè)計(jì)原則為了使本系統(tǒng)功能齊全完備,操作簡(jiǎn)便,最大限度的提高軟件的質(zhì)量,從而滿(mǎn)足用戶(hù)的實(shí)際需要,在設(shè)計(jì)開(kāi)發(fā)過(guò)程中遵循了如下原則:1.合法性原則:依據(jù)產(chǎn)品核算系統(tǒng)的工作規(guī)定以及要求,參照核算實(shí)際的工作情況,進(jìn)行諸如產(chǎn)品進(jìn)貨、銷(xiāo)售等工作。2.實(shí)用性原則:適合產(chǎn)品信息管理工作的實(shí)際需求,并能夠處理一些特殊情況的要求,此外,盡可能預(yù)留空間,以便擴(kuò)充功能。3.準(zhǔn)確性原則:對(duì)輸入的相關(guān)資料建立檢錯(cuò)機(jī)制,及時(shí)報(bào)錯(cuò),使用戶(hù)能夠及時(shí)準(zhǔn)確的輸入合法資料(如:類(lèi)型匹配,長(zhǎng)度不超限等)。4.易操作原則:要求設(shè)計(jì)的系統(tǒng)功能齊全,界面友好,操作方便,必要的地方進(jìn)行提示。5.源程序可讀性原則:為了便于其他設(shè)計(jì),維護(hù)人員讀懂代碼或以后的代碼修改,軟件升級(jí)維護(hù),即可能做好代碼注釋工作。1.3性能需求支持工資信息一次性多組導(dǎo)入非法操作能夠提示錯(cuò)誤并且知道安全行為方式信息查詢(xún)時(shí)界面顯示數(shù)量1.4課程設(shè)計(jì)報(bào)告內(nèi)容及分工情況1.4.1課程設(shè)計(jì)報(bào)告內(nèi)容1.系統(tǒng)功能模塊結(jié)構(gòu)圖和程序流程圖2.數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)及用法說(shuō)明3.程序結(jié)構(gòu)(畫(huà)功能模塊圖或流程圖)4.各模塊的功能5.實(shí)驗(yàn)結(jié)果(包括輸入數(shù)據(jù)和輸出結(jié)果)6.設(shè)計(jì)體會(huì)7.參考文獻(xiàn)1.4.2課程設(shè)計(jì)分工情況本組共有5人,具體分工情況如下:(1)學(xué)號(hào):201605070106,姓名:司笑笑,具體負(fù)責(zé)功能模塊結(jié)構(gòu)圖和程序流程圖的設(shè)計(jì);負(fù)責(zé)“排序”代碼的編寫(xiě)及整體代碼的整合;負(fù)責(zé)程序設(shè)計(jì)報(bào)告中函數(shù)詳細(xì)設(shè)計(jì)。(2)學(xué)號(hào):201605070111,姓名:代慧,負(fù)責(zé)“添加”、“錄入”代碼的編寫(xiě);負(fù)責(zé)顯示界面的優(yōu)化、美化。(3)學(xué)號(hào):201605070118,姓名:王春亞,負(fù)責(zé)“查詢(xún)”代碼的編寫(xiě);程序的測(cè)試與調(diào)試;。(4)學(xué)號(hào):201605070119,姓名:董子陽(yáng),負(fù)責(zé)“修改”代碼的編寫(xiě);具體負(fù)責(zé)實(shí)驗(yàn)結(jié)果的采集;程序設(shè)計(jì)報(bào)告書(shū)的校對(duì);負(fù)責(zé)流程圖的繪制。(5)學(xué)號(hào):201605070136,姓名:馬良智,負(fù)責(zé)“刪除”代碼的編寫(xiě);具體負(fù)責(zé)程序設(shè)計(jì)報(bào)告書(shū)的排版與完善;相關(guān)文獻(xiàn)的查找和參考。
2總體設(shè)計(jì)2.1系統(tǒng)功能設(shè)計(jì)圖系統(tǒng)功能設(shè)計(jì)是使整個(gè)系統(tǒng)能基本實(shí)現(xiàn)職工工資管理功能,能讓公司的管理者利用計(jì)算機(jī)對(duì)員工工資進(jìn)行統(tǒng)一管理,實(shí)現(xiàn)工資管理系統(tǒng)的系統(tǒng)化、規(guī)范化和自動(dòng)化,提高了工作效率。管理信息系統(tǒng)(MIS)主要的功能就是進(jìn)行信息的收集、查詢(xún)、存儲(chǔ),同時(shí)對(duì)這些信息進(jìn)行維護(hù)的。本系統(tǒng)共包括七大模塊,分別是錄入模塊,添加模塊,修改模塊,刪除模塊,查詢(xún)模塊,排序模塊,輸出模塊。系統(tǒng)功能模塊設(shè)計(jì)如圖2-1所示。圖2-1小型職工工資管理系統(tǒng)功能模塊結(jié)構(gòu)圖2.2主函數(shù)main() (1)函數(shù)的功能:用于聯(lián)系各個(gè)功能函數(shù)模塊,以及退出程序時(shí)的退出畫(huà)面提示。(2)函數(shù)的入口:整個(gè)程序是從主函數(shù)開(kāi)始的。(3)函數(shù)的出口:當(dāng)從main()的switch()開(kāi)關(guān)結(jié)構(gòu)中進(jìn)入,即choise的值大于7時(shí)通過(guò)return退出main()函數(shù),即:退出整個(gè)程序。(4)函數(shù)調(diào)用關(guān)系:該函數(shù)不被其它函數(shù)調(diào)用。2.3程序流程圖3詳細(xì)設(shè)計(jì)函數(shù)(1)功能函數(shù)mainMenu()=1\*GB3①函數(shù)的功能:顯示主菜單=2\*GB3②函數(shù)的入口:從main()進(jìn)入,main()運(yùn)行時(shí)進(jìn)入該函數(shù)。=3\*GB3③函數(shù)調(diào)用關(guān)系:被主函數(shù)調(diào)用。=4\*GB3④函數(shù)的出口:當(dāng)主菜單顯示在屏幕上,結(jié)束該函數(shù)。(2)功能函數(shù)input(LinkListhead)=1\*GB3①函數(shù)的功能:進(jìn)入錄入職工信息系統(tǒng)。=2\*GB3②函數(shù)的入口:程序從main()的switch()開(kāi)關(guān)結(jié)構(gòu)中進(jìn)入,即choice的值為1時(shí),開(kāi)始進(jìn)入該函數(shù),進(jìn)入函數(shù)后,首先用inputMenu()顯示錄入菜單選項(xiàng),然后選擇選項(xiàng)進(jìn)行錄入職工信息。=3\*GB3③函數(shù)調(diào)用關(guān)系:被主函數(shù)調(diào)用。從switch()開(kāi)關(guān)結(jié)構(gòu)中進(jìn)入,并在文中無(wú)返回值的空值void函數(shù)。=4\*GB3④函數(shù)的出口:錄入職工信息完成后,結(jié)束該函數(shù)而并執(zhí)行主函數(shù)main()中“output(head);”,輸出職工信息在屏幕上并保存職工信息在磁盤(pán)上,然后執(zhí)行“break;”跳出switch()開(kāi)關(guān)函數(shù),繼續(xù)執(zhí)行while循環(huán)結(jié)構(gòu)。(3)功能函數(shù)inputMenu()=1\*GB3①函數(shù)的功能:顯示錄入菜單。=2\*GB3②函數(shù)的入口:從input(LinkListhead))進(jìn)入,input(LinkListhead)被調(diào)用時(shí)進(jìn)入該函數(shù)。=3\*GB3③函數(shù)調(diào)用關(guān)系:被input(LinkListhead))調(diào)用,并在文中無(wú)返回值的空值void函數(shù)。=4\*GB3④函數(shù)的出口:當(dāng)錄入菜單顯示在屏幕上,結(jié)束該函數(shù)。(4)功能函數(shù)hand(LinkListhead)=1\*GB3①函數(shù)的功能:進(jìn)入“手動(dòng)錄入職工信息”。=2\*GB3②函數(shù)的入口:程序從input(LinkListhead)的switch()開(kāi)關(guān)結(jié)構(gòu)中進(jìn)入,即choice的值為1時(shí),開(kāi)始進(jìn)入該函數(shù),進(jìn)入函數(shù)后,首先輸入錄入職工人數(shù),然后逐個(gè)錄入職工信息。=3\*GB3③函數(shù)調(diào)用關(guān)系:被input(LinkListhead)調(diào)用。從switch()開(kāi)關(guān)結(jié)構(gòu)中進(jìn)入,并在文中無(wú)返回值的空值void函數(shù)。=4\*GB3④函數(shù)的出口:錄入全部職工信息完成后,結(jié)束該函數(shù)并執(zhí)行input(LinkListhead)中“break;”跳出switch()開(kāi)關(guān)函數(shù),繼續(xù)執(zhí)行while循環(huán)結(jié)構(gòu)。(5)功能函數(shù)read(LinkListhead)=1\*GB3①函數(shù)的功能:進(jìn)入“文件錄入職工信息”。=2\*GB3②函數(shù)的入口:程序從input(LinkListhead)的switch()開(kāi)關(guān)結(jié)構(gòu)中進(jìn)入,即choice的值為2時(shí),開(kāi)始進(jìn)入該函數(shù),進(jìn)入函數(shù)后,輸入需要錄入的文件路徑fileName,通過(guò)fopen()函數(shù),即“if((fq=fopen(fileName,"r"))==NULL)”打開(kāi)文件,進(jìn)入數(shù)據(jù)的處理。=3\*GB3③函數(shù)調(diào)用關(guān)系:被input(LinkListhead)調(diào)用。從switch()開(kāi)關(guān)結(jié)構(gòu)中進(jìn)入,并在文中無(wú)返回值的空值void函數(shù)。=4\*GB3④函數(shù)的出口:自動(dòng)錄入文件中全部職工信息后,結(jié)束該函數(shù)并執(zhí)行input(LinkListhead)中“break;”跳出switch()開(kāi)關(guān)函數(shù),繼續(xù)執(zhí)行while循環(huán)結(jié)構(gòu)。(6)功能函數(shù)output(LinkListhead)=1\*GB3①函數(shù)的功能:輸出職工信息。=2\*GB3②函數(shù)的入口:程序在錄入、添加、修改、刪除、查詢(xún)、排序后都進(jìn)入該函數(shù),進(jìn)入函數(shù)后,將職工信息用printf()標(biāo)準(zhǔn)輸出到屏幕上,然后通過(guò)fopen()函數(shù),即“if((fp=fopen("d:\\worker.dat","w"))==NULL)”打開(kāi)文件,將職工信息寫(xiě)到d:\\worker.dat文件中。=3\*GB3③函數(shù)調(diào)用關(guān)系:被main()等多個(gè)調(diào)用。在文中無(wú)返回值的空值void函數(shù)。=4\*GB3④函數(shù)的出口:將職工信息用printf()標(biāo)準(zhǔn)輸出到屏幕上,將職工信息存入磁盤(pán)后,結(jié)束該函數(shù)。(7)功能函數(shù)add(LinkListhead)=1\*GB3①函數(shù)的功能:添加一個(gè)職工信息。=2\*GB3②函數(shù)的入口:從main()的switch()開(kāi)關(guān)結(jié)構(gòu)中進(jìn)入,即choice的值為2的時(shí)侯,進(jìn)入該函數(shù),根據(jù)提示輸入職工信息。=3\*GB3③函數(shù)調(diào)用關(guān)系:被主函數(shù)調(diào)用。由switch()開(kāi)關(guān)結(jié)構(gòu)中進(jìn)入,并在文中有返回值的整型int函數(shù),返回值為1添加成功。=4\*GB3④函數(shù)的出口:職工信息添加成功返回1后結(jié)束該函數(shù),并執(zhí)行主函數(shù)main()中“output(head);”,輸出職工信息在屏幕上并保存職工信息在磁盤(pán)上,然后執(zhí)行“break;”跳出switch()開(kāi)關(guān)函數(shù),繼續(xù)執(zhí)行while循環(huán)結(jié)構(gòu)。(8)功能函數(shù)deleteWorker(LinkListhead)=1\*GB3①函數(shù)的功能:刪除一個(gè)職工信息。=2\*GB3②函數(shù)的入口:從main()的switch()開(kāi)關(guān)結(jié)構(gòu)中進(jìn)入,即choice的值為3的時(shí)侯,進(jìn)入該函數(shù),輸入要?jiǎng)h除的職工編號(hào),刪除改編號(hào)職工信息。=3\*GB3③函數(shù)調(diào)用關(guān)系:被主函數(shù)調(diào)用。由switch()開(kāi)關(guān)結(jié)構(gòu)中進(jìn)入,并在文中有返回值的整型int函數(shù),返回值為1刪除成功。=4\*GB3④函數(shù)的出口:職工信息刪除成功返回1后結(jié)束該函數(shù),并執(zhí)行主函數(shù)main()中“output(head);”,輸出剩余的職工信息在屏幕上,然后執(zhí)行“break;”跳出switch()開(kāi)關(guān)函數(shù),繼續(xù)執(zhí)行while循環(huán)結(jié)構(gòu)。(9)功能函數(shù)update(LinkListhead)=1\*GB3①函數(shù)的功能:修改一個(gè)職工信息。=2\*GB3②函數(shù)的入口:從main()的switch()開(kāi)關(guān)結(jié)構(gòu)中進(jìn)入,即choice的值為4的時(shí)侯,進(jìn)入該函數(shù),輸入要修改的職工編號(hào),根據(jù)提示輸入新的職工信息。=3\*GB3③函數(shù)調(diào)用關(guān)系:被主函數(shù)調(diào)用。由switch()開(kāi)關(guān)結(jié)構(gòu)中進(jìn)入,并在文中有返回值的整型int函數(shù),返回值為1修改成功。=4\*GB3④函數(shù)的出口:職工信息修改成功返回1后結(jié)束該函數(shù),并執(zhí)行主函數(shù)main()中“output(head);”,輸出職工信息在屏幕上并保存職工信息在磁盤(pán)上,然后執(zhí)行“break;”跳出switch()開(kāi)關(guān)函數(shù),繼續(xù)執(zhí)行while循環(huán)結(jié)構(gòu)。(10)功能函數(shù)find(LinkListhead)=1\*GB3①函數(shù)的功能:進(jìn)入查詢(xún)職工信息系統(tǒng)=2\*GB3②函數(shù)的入口:程序從main()的switch()開(kāi)關(guān)結(jié)構(gòu)中進(jìn)入,即choice的值為5時(shí),開(kāi)始進(jìn)入該函數(shù),進(jìn)入函數(shù)后,首先用findMenu()顯示查詢(xún)菜單選項(xiàng),然后選擇選項(xiàng)進(jìn)行查詢(xún)職工信息。=3\*GB3③函數(shù)調(diào)用關(guān)系:被主函數(shù)調(diào)用。從switch()開(kāi)關(guān)結(jié)構(gòu)中進(jìn)入,并在文中無(wú)返回值的空值void函數(shù)。=4\*GB3④函數(shù)的出口:查詢(xún)職工信息完成后,結(jié)束該函數(shù),然后執(zhí)行主函數(shù)main()中的“break;”跳出switch()開(kāi)關(guān)函數(shù),繼續(xù)執(zhí)行while循環(huán)結(jié)構(gòu)。(11)功能函數(shù) findMenu()=1\*GB3①函數(shù)的功能:顯示查詢(xún)菜單。=2\*GB3②函數(shù)的入口:從find(LinkListhead)進(jìn)入,find(LinkListhead)被調(diào)用時(shí)進(jìn)入該函數(shù)。=3\*GB3③函數(shù)調(diào)用關(guān)系:被find(LinkListhead)調(diào)用,并在文中無(wú)返回值的空值void函數(shù)。=4\*GB3④函數(shù)的出口:當(dāng)查詢(xún)菜單顯示在屏幕上,結(jié)束該函數(shù)。(12)功能函數(shù)findByWay(LinkListhead,intn)=1\*GB3①函數(shù)的功能:查詢(xún)職工信息”。=2\*GB3②函數(shù)的入口:程序從find(LinkListhead)的switch()開(kāi)關(guān)結(jié)構(gòu)中進(jìn)入,即choice的值為1,2,3,4,5,6時(shí),開(kāi)始進(jìn)入該函數(shù),進(jìn)入函數(shù)后,根據(jù)不同的選項(xiàng)值進(jìn)行相應(yīng)的查詢(xún)。=3\*GB3③函數(shù)調(diào)用關(guān)系:被find(LinkListhead)調(diào)用。從switch()開(kāi)關(guān)結(jié)構(gòu)中進(jìn)入,并在文中有返回值的的整型int函數(shù),返回值為1查詢(xún)成功。=4\*GB3④函數(shù)的出口:查詢(xún)職工信息完成后,執(zhí)行“output(head);”,輸出職工信息在屏幕上并保存職工信息在磁盤(pán)上,然后結(jié)束該函數(shù),執(zhí)行find(LinkListhead)中“break;”跳出switch()開(kāi)關(guān)函數(shù),繼續(xù)執(zhí)行while循環(huán)結(jié)構(gòu)。(13)功能函數(shù)sort(LinkListhead)=1\*GB3①函數(shù)的功能:進(jìn)入職工信息排序系統(tǒng)=2\*GB3②函數(shù)的入口:程序從main()的switch()開(kāi)關(guān)結(jié)構(gòu)中進(jìn)入,即choice的值為6時(shí),開(kāi)始進(jìn)入該函數(shù),進(jìn)入函數(shù)后,首先用sortMenu()顯示排序菜單選項(xiàng),然后選擇選項(xiàng)進(jìn)行職工信息排序。=3\*GB3③函數(shù)調(diào)用關(guān)系:被主函數(shù)調(diào)用。從switch()開(kāi)關(guān)結(jié)構(gòu)中進(jìn)入,并在文中無(wú)返回值的空值void函數(shù)。=4\*GB3④函數(shù)的出口:職工信息排序完成后,結(jié)束該函數(shù),然后執(zhí)行主函數(shù)main()中的“break;”跳出switch()開(kāi)關(guān)函數(shù),繼續(xù)執(zhí)行while循環(huán)結(jié)構(gòu)。(14)功能函數(shù) sortMenu()=1\*GB3①函數(shù)的功能:顯示排序菜單。=2\*GB3②函數(shù)的入口:從sort(LinkListhead)進(jìn)入,sort(LinkListhead)被調(diào)用時(shí)進(jìn)入該函數(shù)。=3\*GB3③函數(shù)調(diào)用關(guān)系:被sort(LinkListhead)調(diào)用,并在文中無(wú)返回值的空值void函數(shù)。=4\*GB3④函數(shù)的出口:當(dāng)排序菜單顯示在屏幕上,結(jié)束該函數(shù)。(15)功能函數(shù)sortByWay(LinkListhead,intn)=1\*GB3①函數(shù)的功能:職工信息排序。=2\*GB3②函數(shù)的入口:程序從sort(LinkListhead)的switch()開(kāi)關(guān)結(jié)構(gòu)中進(jìn)入,即choice的值為1,2,3,4,5,6時(shí),開(kāi)始進(jìn)入該函數(shù),進(jìn)入函數(shù)后,根據(jù)不同的選項(xiàng)值進(jìn)行相應(yīng)的排序。=3\*GB3③函數(shù)調(diào)用關(guān)系:被sort(LinkListhead)調(diào)用。從switch()開(kāi)關(guān)結(jié)構(gòu)中進(jìn)入,并在文中有返回值的的整型int函數(shù),返回值為1排序成功。=4\*GB3④函數(shù)的出口:職工信息排序完成后,執(zhí)行“output(head);”,輸出職工信息在屏幕上并保存職工信息在磁盤(pán)上,然后結(jié)束該函數(shù),執(zhí)行sort(LinkListhead)中“break;”跳出switch()開(kāi)關(guān)函數(shù),繼續(xù)執(zhí)行while循環(huán)結(jié)構(gòu)。(16)功能函數(shù)uqnum(LinkListhead,intnum)=1\*GB3①函數(shù)的功能:判斷職工編號(hào)是否已存在。=2\*GB3②函數(shù)的入口:程序add(LinkListhead)中進(jìn)入,輸入職工編號(hào)后,開(kāi)始進(jìn)入該函數(shù),進(jìn)入函數(shù)后,判斷輸入的職工編號(hào)是否已經(jīng)存在。=3\*GB3③函數(shù)調(diào)用關(guān)系:被add(LinkListhead)調(diào)用。在文中有返回值的的整型int函數(shù),返回值為1職工編號(hào)已存在。=4\*GB3④函數(shù)的出口:判斷職工編號(hào)是否已存在后返回add(LinkListhead),繼續(xù)輸入其它職工信息或重新輸入職工編號(hào)。功能實(shí)現(xiàn)效果如圖3-1所示。圖3-1主菜單界面函數(shù)流程圖錄入職工信息該功能模塊流程如圖3-2所示。圖3-2“錄入職工信息”功能模塊流程圖(2)添加職工信息該功能模塊流程如圖3-3所示。圖3-3“添加職工信息”功能模塊流程圖(3)刪除職工信息該功能模塊流程如圖3-4所示。圖3-4“刪除職工信息”功能模塊流程圖(4)修改職工信息該功能模塊流程如圖3-5所示。圖3-5“修改職工信息”功能模塊流程圖(5)查詢(xún)職工信息該功能模塊流程如圖3-6所示。圖3-6“查詢(xún)職工信息”功能模塊流程圖(6)排序職工信息該功能模塊流程如圖3-7所示。圖3-7“排序職工信息”功能模塊流程圖4運(yùn)行結(jié)果與調(diào)試4.1運(yùn)行結(jié)果本系統(tǒng)運(yùn)行初始頁(yè)面如圖4-1所示。圖4-1初始頁(yè)面在函數(shù)開(kāi)始時(shí),初始化臨時(shí)結(jié)構(gòu)體數(shù)組,讓結(jié)構(gòu)體內(nèi)所有信息為空.,讀取目標(biāo)文件,然后運(yùn)行功能函數(shù),選擇需要的功能。實(shí)現(xiàn)效果如圖4-2所示。圖4-2輸入界面(1)根據(jù)自己需要的功能輸入相應(yīng)數(shù)字圖4-3職工信息的錄入圖4-4職工信息的添加圖4-5職工信息的刪除4-6職工信息的修改圖4-7職工信息的查詢(xún)圖4-8職工信息的排序圖4-9退出系統(tǒng)(2)錄入職工的信息,通過(guò)手動(dòng)錄入和文件錄入兩個(gè)方法錄入職工的信息。圖4-10職工信息錄入的方式(3)查找職工的個(gè)人信息,通過(guò)輸入編號(hào)、姓名、部門(mén)、基本工資、獎(jiǎng)金和總工資進(jìn)行查找。圖4-11職工信息的查詢(xún)方式(4)職工信息的排序可以通過(guò)編號(hào)排序、姓名排序、部門(mén)排序、基本工資排序、獎(jiǎng)金排序和總工資排序。圖4-12職工信息的排序方式(5)每次將職工信息輸出在屏幕上時(shí),都會(huì)通過(guò)fwrite寫(xiě)到文件D:\\woker.date中。(6)根據(jù)數(shù)字提示結(jié)束程序。4.2程序調(diào)試(1)每個(gè)選擇界面之后,前一屏幕的內(nèi)容依舊存在,影響界面的美觀;經(jīng)過(guò)同學(xué)的幫助及上網(wǎng)搜索,發(fā)現(xiàn)利用“system(“cls”);”可以消去前一屏幕的內(nèi)容;然而接下來(lái)又出現(xiàn)新的問(wèn)題:有些函數(shù)會(huì)出現(xiàn)錯(cuò)誤;經(jīng)過(guò)多次調(diào)試和修改,才發(fā)現(xiàn)把“system(“cls”);”放在調(diào)用的函數(shù)之前以及適當(dāng)?shù)奈恢每梢越鉀Q此問(wèn)題。(2)修改員工信息時(shí),輸入職工編號(hào)查詢(xún)出多條信息,修改錯(cuò)誤!后來(lái)加入職工編號(hào)唯一判斷的函數(shù),讓職工編號(hào)唯一不重復(fù)。(3)排序,開(kāi)始交換指針指向,一直出現(xiàn)指針不存在導(dǎo)致亂碼問(wèn)題,后來(lái)修改為交換指針的數(shù)據(jù)域。(4)文件寫(xiě)入磁盤(pán),用筆記本打開(kāi)磁盤(pán)內(nèi)的文件亂碼,經(jīng)查詢(xún)資料了解寫(xiě)入磁盤(pán)的文件是二進(jìn)制數(shù)據(jù),不能通過(guò)筆記本打開(kāi),可重新把文件讀入程序中,在程序中顯示。(5)忘導(dǎo)入<string.h>,導(dǎo)致strcmp不能用。(6)字符串輸入輸出要用%s。
結(jié)束語(yǔ)工資管理系統(tǒng)對(duì)于決策者和管理者來(lái)說(shuō)都至關(guān)重要,所以工資管理系統(tǒng)應(yīng)該能夠?yàn)橛脩?hù)提供充足的信息和快捷的查詢(xún)手段。但一直以來(lái)人們使用傳統(tǒng)人工的方式管理文件工資檔案,這種管理方式存在著許多缺點(diǎn),如:效率低、保密性差,另外時(shí)間一長(zhǎng),將產(chǎn)生大量的文件和數(shù)據(jù),這對(duì)于查找、更新和維護(hù)都帶來(lái)了不少的困難。
隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能已為人們深刻認(rèn)識(shí),它已進(jìn)入人類(lèi)社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來(lái)越重要的作用。
作為計(jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對(duì)工資信息進(jìn)行管理,具有著手工管理所無(wú)法比擬的優(yōu)點(diǎn).例如:檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、壽命長(zhǎng)、成本低等。這些優(yōu)點(diǎn)能夠極大地提高工資管理的效率,也是科學(xué)化、正規(guī)化管理的重要條件。這一個(gè)月以來(lái),在開(kāi)發(fā)這個(gè)工資管理系統(tǒng)過(guò)程中,我深刻地體會(huì)到了自學(xué)能力的重要性。畢竟在學(xué)校學(xué)習(xí)到的知識(shí)是有限的,而在開(kāi)發(fā)系統(tǒng)的過(guò)程中僅憑原有的一點(diǎn)點(diǎn)知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有翻閱大量的資料才能學(xué)到更多的知識(shí),才能實(shí)現(xiàn)其預(yù)期的功能。在開(kāi)發(fā)過(guò)程中,遇到困難是在所難免的,期間我跟我的指導(dǎo)老師和同學(xué)們進(jìn)行交流,從中明白了很多。開(kāi)發(fā)一個(gè)系統(tǒng),恒心和毅力也是不可缺少的。同樣,在開(kāi)發(fā)過(guò)程當(dāng)中,細(xì)心也是非常重要的,由于很多事項(xiàng)都要很注意才行,如果沒(méi)有做到這一點(diǎn),就會(huì)出錯(cuò)。在這里要同學(xué)的幫助、老師的悉心指導(dǎo)下基本完成本次課程設(shè)計(jì),基本達(dá)到了工資管理系統(tǒng)的要求。小組各成員心得體會(huì)Xxx:這個(gè)系統(tǒng)實(shí)現(xiàn)了對(duì)員工信息的存儲(chǔ)、修改、刪除、查詢(xún)及排序。從拿到題目到完成整個(gè)編程,從理論到實(shí)踐學(xué)到了很多東西。通過(guò)這次程序設(shè)計(jì)我深入了解了鏈表、結(jié)構(gòu)體,也學(xué)會(huì)了文件的讀寫(xiě),懂得了理論和實(shí)際結(jié)合是很重要的。在設(shè)計(jì)過(guò)程中遇到了很多問(wèn)題,這畢竟是第一次做,同時(shí)在設(shè)計(jì)過(guò)程中發(fā)現(xiàn)了自己的不足之處,對(duì)以前所學(xué)的知識(shí)理解的不夠深刻,掌握的不夠牢固,比如單鏈表??傊皇斋@很多!Xxx:通過(guò)這次課程設(shè)計(jì),我對(duì)數(shù)據(jù)結(jié)構(gòu)中單鏈表的應(yīng)用有了更深的理解,并且深刻的認(rèn)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年專(zhuān)轉(zhuǎn)本電子試題及答案
- 安全監(jiān)控設(shè)備項(xiàng)目安裝外包合同
- 基于工業(yè)互聯(lián)網(wǎng)平臺(tái)的自然語(yǔ)言處理技術(shù)在智能設(shè)備故障診斷中的應(yīng)用報(bào)告
- 環(huán)保產(chǎn)業(yè)技術(shù)創(chuàng)新與產(chǎn)業(yè)升級(jí)路徑研究報(bào)告-2025年環(huán)保產(chǎn)業(yè)技術(shù)創(chuàng)新政策實(shí)施效果評(píng)估
- 高速公路建設(shè)實(shí)施方案
- 家具制造業(yè)個(gè)性化定制生產(chǎn)模式產(chǎn)業(yè)鏈協(xié)同創(chuàng)新產(chǎn)業(yè)鏈風(fēng)險(xiǎn)預(yù)警報(bào)告
- 風(fēng)電場(chǎng)電氣系統(tǒng)設(shè)計(jì)與優(yōu)化方案
- 2025年注冊(cè)城鄉(xiāng)規(guī)劃師考試建筑設(shè)計(jì)圖示與表達(dá)試卷
- 2025年制冷設(shè)備操作員特種作業(yè)操作證試題
- 2025年云南省事業(yè)單位招聘考試綜合類(lèi)專(zhuān)業(yè)能力測(cè)試試卷(統(tǒng)計(jì)類(lèi))試題
- 車(chē)間混料管理辦法
- 靜脈采血并發(fā)癥及處理
- 項(xiàng)目投資評(píng)估管理辦法
- 三年級(jí)下學(xué)期書(shū)法習(xí)字訓(xùn)練計(jì)劃
- 2025年甘肅省事業(yè)單位招聘考試旅游景觀設(shè)計(jì)專(zhuān)業(yè)能力測(cè)試真題
- 2025-2030中國(guó)角膜用塑形鏡行業(yè)現(xiàn)狀動(dòng)態(tài)及需求趨勢(shì)預(yù)測(cè)報(bào)告
- 大疆無(wú)人機(jī)內(nèi)部管理制度
- 催收考核管理制度
- 2025年油田數(shù)字化運(yùn)維(初級(jí)工)職業(yè)技能等級(jí)認(rèn)定理論考試題庫(kù)(含答案)
- 家電合伙經(jīng)營(yíng)協(xié)議書(shū)
- 《自動(dòng)化生產(chǎn)線(xiàn)集成與應(yīng)用》課件-第一章 自動(dòng)化生產(chǎn)線(xiàn)基礎(chǔ)認(rèn)知
評(píng)論
0/150
提交評(píng)論