c語言教師工資標準管理系統(tǒng)_第1頁
c語言教師工資標準管理系統(tǒng)_第2頁
c語言教師工資標準管理系統(tǒng)_第3頁
c語言教師工資標準管理系統(tǒng)_第4頁
c語言教師工資標準管理系統(tǒng)_第5頁
已閱讀5頁,還剩19頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

C語言程序設(shè)計課程設(shè)計匯報設(shè)計題目:老師工資管理系統(tǒng)班級學(xué)號姓名指導(dǎo)老師起止時間-10-26至-12-26設(shè)計任務(wù)該系統(tǒng)包含老師基礎(chǔ)信息,供讀者查詢。建立一個文件,包含老師信息,包含:老師號、姓名、性別、單位名稱、家庭住址、聯(lián)絡(luò)電話、基礎(chǔ)工資、津貼、生活補助、應(yīng)發(fā)工資、電話費、水電費、房租、所得稅、衛(wèi)生費、公積金等。讀者能夠輸入老師信息、插入老師信息、刪除老師信息、瀏覽老師信息、查詢老師信息和修改老師信息。同時讀者能夠?qū)⒅颁浫肜蠋熜畔⒈A粝聛?,然后關(guān)閉程序后,再次打開后只需加載老師信息就能夠了。愈加方便以后程序。評語(老師填寫)目錄設(shè)計任務(wù) 2評語(老師填寫) 21.課程設(shè)計目標 42.課程設(shè)計題目……………….53.功效描述 64.數(shù)據(jù)結(jié)構(gòu)設(shè)計 85.功效模塊設(shè)計 105.1主控模塊設(shè)計 105.2輸入統(tǒng)計模塊 115.3插入統(tǒng)計模塊 115.4刪除統(tǒng)計模塊 126.函數(shù)功效描述 136.1保留數(shù)據(jù)函數(shù)save() 136.2查詢數(shù)據(jù)函數(shù)query() 136.1修改數(shù)據(jù)函數(shù)edit() 146.1加載數(shù)據(jù)函數(shù)load() 157.運行結(jié)果 157.1系統(tǒng)主界面 15 7.2輸入老師信息界面………………..16 7.3輸出老師信息界面18 7.4插入老師信息界面……………….19 7.5保留和加載老師信息界面………………….…208.個人設(shè)計小結(jié)和心得體會 21參考文件 221.課程設(shè)計目標本程序意在訓(xùn)練基礎(chǔ)編程能力,了解管理信息系統(tǒng)開發(fā)步驟,熟悉C語言文件和結(jié)構(gòu)數(shù)組多種基礎(chǔ)操作。本程序包含結(jié)構(gòu)體、數(shù)組、指針、文件等方面知識。經(jīng)過本程序訓(xùn)練,使讀者能對C語言文件操作有一個更深刻了解,掌握利用數(shù)組存放結(jié)構(gòu)實現(xiàn)老師工資管理系統(tǒng),為深入開發(fā)出高質(zhì)量信息管理系統(tǒng)打下堅實基礎(chǔ)。(1)鞏固和加強《C語言程序設(shè)計》課程理論知識。(2)掌握C語言基礎(chǔ)概念、語法、語義和數(shù)據(jù)類型使用特點。(3)掌握C語言程序設(shè)計方法及編程技巧,能正確使用C語言編寫程序。(4)深入了解和利用結(jié)構(gòu)化程設(shè)計思想和方法;學(xué)會利用步驟圖表示算法。(5)掌握調(diào)試程序基礎(chǔ)方法及上機操作方法。(6)掌握書寫程設(shè)計開發(fā)文檔能力,學(xué)會撰寫課程設(shè)計總結(jié)匯報。課程設(shè)計思想和方法還能夠作為畢業(yè)論文時參考資料。(7)經(jīng)過查閱手冊和文件資料,培養(yǎng)自己獨立分析問題和處理問題能力。為自己做畢業(yè)設(shè)計打好基礎(chǔ)。(8)初步掌握開發(fā)一個小型實用系統(tǒng)基礎(chǔ)方法:結(jié)合實際應(yīng)用要求,使課程設(shè)計既覆蓋知識點,又靠近工程實際需要。經(jīng)過激發(fā)學(xué)習(xí)愛好,調(diào)動自己主動學(xué)習(xí)主動性,并依據(jù)實際編程要求,訓(xùn)練自己實際分析問題能力及編程能力,并養(yǎng)成良好編程習(xí)慣。(9)培養(yǎng)自己創(chuàng)新能力和創(chuàng)新思維。能夠依據(jù)指導(dǎo)書和相關(guān)文件上參考算法,自己設(shè)計出對應(yīng)應(yīng)用程序。(10)培養(yǎng)自己良好程序設(shè)計風(fēng)格。在實際編程中,為了提升編程質(zhì)量,對空行、空格和注釋全部有要求。自己在課程設(shè)計書寫代碼時,應(yīng)該嚴格按要求處理,方便建立良好程序設(shè)計風(fēng)格。2.課程設(shè)計題目老師工資管理系統(tǒng)每個老師信息為:老師號、姓名、性別、單位名稱、家庭住址、聯(lián)絡(luò)電話、基礎(chǔ)工資、津貼、生活補助、應(yīng)發(fā)工資、電話費、水電費、房租、所得稅、衛(wèi)生費、公積金、累計扣款、實發(fā)工資。注:應(yīng)發(fā)工資=基礎(chǔ)工資+津貼+生活補助;累計扣款=電話費+水電費+房租+所得稅+衛(wèi)生費+公積金;實發(fā)工資=應(yīng)發(fā)工資-累計扣款。A、老師信息處理(1)輸入老師信息(2)插入(修改)老師信息:(3)刪除老師信息:(4)瀏覽老師信息:提醒:具體功效及操作參考題1。B、老師數(shù)據(jù)處理:(1)按老師號錄入老師基礎(chǔ)工資、津貼、生活補助、電話費、水電費、房租、所得稅、衛(wèi)生費、公積金等基礎(chǔ)數(shù)據(jù)。(2)老師實發(fā)工資、應(yīng)發(fā)工資、累計扣款計算。提醒:計算規(guī)則如題目。(3)老師數(shù)據(jù)管理提醒:輸入老師號,讀出并顯示該老師信息,輸入新數(shù)據(jù),將改后信息寫入文件(4)老師數(shù)據(jù)查詢:提醒:輸入老師號或其它信息,即讀出全部數(shù)據(jù)信息,并顯示出來。(5)老師綜合信息輸出提醒:輸出老師信息到屏幕。3.功效描述依據(jù)需求描述,本人根據(jù)結(jié)構(gòu)化程序設(shè)計標準將整個系統(tǒng)劃分若干個功效模塊。系統(tǒng)各子模塊設(shè)計以下:主界面主界面選擇操作選擇操作1——1——輸入老師信息2——插入老師信息2——插入老師信息33——刪除老師信息老師工資管理系統(tǒng)老師工資管理系統(tǒng)4——瀏覽老師信息4——瀏覽老師信息55——錄入老師信息6——查詢老師信息6——查詢老師信息7——修改老師信息7——修改老師信息8——加載老師信息8——加載老師信息結(jié)束0——退出系統(tǒng)結(jié)束0——退出系統(tǒng)圖1老師工資系統(tǒng)功效模塊圖(1)輸入老師信息模塊在主菜單中利用結(jié)構(gòu)體teacher,輸入老師信息,首先建立鏈表,將用戶輸入學(xué)生信息存放到鏈表中,輸入完成后提醒用戶時候繼續(xù)輸入,假如用戶輸入“Y”或“y”,則再次調(diào)用,實現(xiàn)繼續(xù)輸入學(xué)生信息操作。假如用戶輸入“N”或“n”,則返回主菜單界面。(2)插入老師信息模塊在主菜單中調(diào)用teacher*insert(),然后根據(jù)提醒依次輸入老師信息,然后再調(diào)用voidprint()函數(shù)講全部老師信息統(tǒng)計打印出來。然后再返回主菜單界面。(3)刪除老師信息模塊 在主菜單中調(diào)用del()函數(shù),以刪除老師信息,首先按學(xué)號查詢老師信息,假如沒有找到老師信息,給出提醒信息。假如查找到該老師信息,給出改老師全部信息,假如查找到,則刪除該老師信息,給出刪除成功提醒信息。然后返回主菜單界面。(4)瀏覽老師信息模塊 在主菜單中調(diào)用voidprint()函數(shù)來顯示老師信息,先判定鏈表是否為空。假如鏈表不為空時,逐條顯示鏈表中老師信息,顯示調(diào)用teacher*next()函數(shù)根據(jù)老師號大小來顯示老師信息。然后返回主菜單界面。(5)保留老師信息模塊 在主菜單中調(diào)用voidsave()函數(shù)來保留老師信息到teacher_list這個文件中。并給出“保留成功”提醒信息。然后返回主菜單界面。(6)查詢老師信息模塊 在主菜單中選擇6時候進行老師信息查詢,調(diào)用voidquery()函數(shù),按老師號查詢信息。提醒用戶輸入要查找老師號,然后調(diào)用voidquery()函數(shù),查找成功,最終打印出老師信息。然后返回主菜單界面。(7)修改老師信息模塊 在主菜單中調(diào)用voidedit()函數(shù)。按老師號查找老師信息,假如找到老師信息,調(diào)用voidedit()函數(shù)提醒用戶輸入新老師信息,完成修改操作。操作結(jié)束后提醒用戶修改成功。然后返回主菜單界面。(8)加載老師信息模塊 在主菜單中調(diào)用voidload()函數(shù)。假如存在teacher_list文件并不為空,打開文件,找到老師信息。假如存在teacher_list文件并為空,給出提醒,“cannotopenfile”。然后返回主菜單界面。(9)退出系統(tǒng)模塊 將鏈表中數(shù)據(jù)全部釋放掉,預(yù)防內(nèi)存泄露。退出系統(tǒng)。4.數(shù)據(jù)結(jié)構(gòu)設(shè)計本程序定義了結(jié)構(gòu)體teacher,關(guān)鍵用于存放圖書基礎(chǔ)信息,以下所表示:structteacher{ intnum; charname[10]; charsex[10]; charunit[10]; charaddress[10]; longtelnum; floatsalary_1; floatallowance; floatlife_allow; floatsalary_2; floattel_fee; floatwater_fee; floatrent; floattax; floathealth_fee; floatgrant; floattotal_fee; floatactual_salary; structteacher*next; };其中,各字段含義以下 intnum:老師號 charname[10]:老師姓名 charsex[10]:老師性別 charunit[10] :老師單位 charaddress[10]:老師住址 longtelnum:老師電話號碼 floatsalary_1:基礎(chǔ)工資 floatallowance:津貼 floatlife_allow:生活補助 floatsalary_2:應(yīng)發(fā)工資 floattel_fee:電話費 floatwater_fee:水電費 floatrent:房租 floattax:個人所得稅 floathealth_fee:衛(wèi)生費 floatgrant:公積金 floattotal_fee:累計扣款 floatactual_salary:實發(fā)工資 structteacher*next:指向下一個節(jié)點指針5.功效模塊設(shè)計5.1主控模塊設(shè)計主控函數(shù)步驟圖圖1所表示。首先,調(diào)用voidwelcome()子函數(shù)和charmainmenu()子函數(shù)顯示歡迎界面和初始界面;再次,調(diào)用main()函數(shù)并令ch=mainmenu(),在main()函數(shù)中,用switch語句實現(xiàn)該系統(tǒng)各功效,若ch=1,系統(tǒng)實現(xiàn)輸入老師信息功效;若ch=2,系統(tǒng)實現(xiàn)插入老師信息功效;若ch=3,系統(tǒng)實現(xiàn)刪除老師信息功效;若ch=4,系統(tǒng)實現(xiàn)瀏覽老師信息功效;若ch=5,系統(tǒng)實現(xiàn)保留老師信息功效;若ch=6,系統(tǒng)實現(xiàn)查詢老師信息功效;若ch=7,系統(tǒng)實現(xiàn)修改老師信息功效;若ch=8,系統(tǒng)實現(xiàn)加載老師信息功效;若ch=0,退出系統(tǒng)。(對主控函數(shù)進行文字描述)5.2輸入統(tǒng)計模塊她輸入老師信息步驟圖以下圖。首先要開辟一個新節(jié)點,并使p1,p2指向它。讀入一個老師數(shù)據(jù)給p1所指節(jié)點。此時要使head=NULL,n=0,而且p1->num!=0。開辟一個新節(jié)點,并使P1,p2指向它讀入一個老師數(shù)據(jù)給P1所指結(jié)點開辟一個新節(jié)點,并使P1,p2指向它讀入一個老師數(shù)據(jù)給P1所指結(jié)點Head=NULL&&n=0<當讀入p1->num!=o>N=n+1N=1真假Head=p1p2->next=p1把p1所指結(jié)點把p1所指結(jié)點作為第一結(jié)點連接到表尾P2=p1再開辟一個新結(jié)點,使p1指向它讀入一個老師數(shù)據(jù)給p1所指結(jié)點5.3插入統(tǒng)計模塊插入統(tǒng)計模塊具體步驟圖以下圖所表示:P1=head,p0=teacher原來鏈表是空表是否當p0->num>p1->num和p1所指不是表尾結(jié)點P2指向p1位置P1向后移一個結(jié)點P0->num<=p1->num將p0所真假指結(jié)p1指向頭結(jié)點點作為是否p1->next=p0唯一head=p0p2->next=p0結(jié)點p0->next=p1p0->next=p1p0->next=NULL鏈表是一個空鏈表真假P1=head輸當num!=p1->num和p1所指結(jié)點不是表尾結(jié)點P2=p1出P鏈表是一個空鏈表真假P1=head輸當num!=p1->num和p1所指結(jié)點不是表尾結(jié)點P2=p1出P1=p1->nextP1是要刪除結(jié)點是否空p1所指頭結(jié)點是否輸出找不到表head=p2->next=老師信息P1->nextp1->next6.函數(shù)功效描述6.1保留數(shù)據(jù)函數(shù)save()函數(shù)原型:voidsave()功效描述:將鏈表teacher中N個數(shù)據(jù)寫入到磁盤文件teacher_list中,假如保留成功,則給出提醒保留成功,不然返回“cannotofenfile”表示無法打開文件,返回“filewriteerror”表示文件輸入錯誤。6.2查詢老師信息函數(shù)query()函數(shù)原型:voidquery(structteacher*p)功效描述:將鏈表teacher中head指向p,然后讓用戶輸入老師號no,依次在鏈表中需找p,假如老師號不對,則指針往后面撥動一下,使p=p->next;知道找到相對應(yīng)正確老師號。然后打印出老師基礎(chǔ)信息。函數(shù)步驟圖圖5.2所表示p=headp=headp->num=nop->num!=nop=p->nextp=p->next打印老師信息打印老師信息圖5.26.3修改老師信息函數(shù)edit()函數(shù)原型:voidedit(structteacher*p)功效描述:首先讓用戶輸入期望修改老師老師號a,然后在鏈表中一條一條查找看p->num是否等于a,假如找到,則讓用戶再次輸入老師具體信息,輸入完成跳出,轉(zhuǎn)向主菜單界面。假如沒有找到,則令p=p->next。直到查詢完全部老師統(tǒng)計。函數(shù)步驟圖圖5.3所表示輸入想修改老師信息老師號a輸入想修改老師信息老師號ap->num==ap->num==aYesnop=p->next再次輸入老師信息p=p->next再次輸入老師信息6.4加載老師信息函數(shù)load()函數(shù)原型:voidload()功效描述:首優(yōu)異行判定“"teacher_list”是否為空,假如為空,給出提醒,然后將p1,p2定義為動態(tài)存放老師統(tǒng)計,并將p1定義為頭結(jié)點,然后依次一條一條讀出。部分代碼以下: p1=p2=(structteacher*)malloc(LEN); head=p1; fread(&n,sizeof(n),1,fp); do { if(fread(p1,sizeof(structteacher),1,fp)!=1) { printf("fileerror\n"); gotoend; } if(p1->next!=NULL) { p2=p1; p1=(structteacher*)malloc(LEN); p2->next=p1; } else break; }while(1);7.運行結(jié)果7.1系統(tǒng)主界面用戶剛進入系統(tǒng)時,圖6.1所表示。主菜單界面:圖6.1用戶依據(jù)自己需求輸入自己選擇。7.2輸入界面用戶在主菜單界面時候輸入1,顯示圖

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論