教師工資管理系統(tǒng).doc_第1頁
教師工資管理系統(tǒng).doc_第2頁
教師工資管理系統(tǒng).doc_第3頁
教師工資管理系統(tǒng).doc_第4頁
教師工資管理系統(tǒng).doc_第5頁
已閱讀5頁,還剩12頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

C語言程序設(shè)計報告書程序設(shè)計報告題 目: 教師工資管理系統(tǒng) 院系專業(yè): 姓 名: 學(xué) 號: 2012年 3月 13日目 錄 一、程序設(shè)計的目的和題目要求- 2 -二、流程圖- 4 -三、源代碼程序- 5 -四、遇到的問題及解決方法分析、體會- 11 -1.遇到的問題及解決方法- 11 -2.心得體會- 15 - 一、程序設(shè)計的目的和題目要求用所學(xué)過的C語言程序設(shè)計知識,掌握結(jié)構(gòu)化程序設(shè)計的基本思路和方法,利用所學(xué)的基本知識和技能,發(fā)揮自學(xué)能力和查找資料的能力,解決稍微復(fù)雜的結(jié)構(gòu)化程序設(shè)計問題,加深對所學(xué)知識的理解與掌握,增強學(xué)生利用自己所學(xué)知識解決實際問題的能力,為以后的程序開發(fā)打下基礎(chǔ)。1. 初步掌握開發(fā)一個小型實用系統(tǒng)的基本方法:結(jié)合實際應(yīng)用的要求,使課程設(shè)計既覆蓋知識點,又接近工程實際需要。通過激發(fā)學(xué)習(xí)興趣,調(diào)動學(xué)生主動學(xué)習(xí)的積極性,并引導(dǎo)他們根據(jù)實際編程要求,訓(xùn)練自己實際分析 問題的能力及編程能力,并養(yǎng)成良好的編程習(xí)慣。2.使學(xué)生掌握語言的基本概念、語法、語義和數(shù)據(jù)類型的使用特點。3.使學(xué)生掌握語言程序設(shè)計的方法及編程技巧,能正確使用語言編寫程序。4.使學(xué)生掌握調(diào)試程序的基本方法及上機操作方法。5.掌握書寫程設(shè)計開發(fā)文檔的能力,使學(xué)生學(xué)會撰寫課程設(shè)計總結(jié)報告。課程設(shè)計的思想和方法還可以作為學(xué)生做畢業(yè)論文時的參考資料。本次課程設(shè)計主要目的在于,通過綜合程序課程設(shè)計,加深對C語言課程所學(xué)知識的理解,進一步鞏固C語言講法規(guī)則。學(xué)會編制結(jié)構(gòu)清晰、風(fēng)格良好、數(shù)據(jù)結(jié)構(gòu)適當(dāng)?shù)腃語言程序,從而培養(yǎng)和提高學(xué)生的獨立分析問題和解決實際問題的能力。題目要求: 每個教師的信息為:教師號、姓名、性別、單位名稱、家庭住址、聯(lián)系電話、基本工資、津貼、生活補貼、應(yīng)發(fā)工資、電話費、水電費、房租、所得稅、衛(wèi)生費、公積金、合計扣款、實發(fā)工資。注:應(yīng)發(fā)工資=基本工資+津貼+生活補貼;合計扣款=電話費+水電費+房租+所得稅+衛(wèi)生費+公積金;實發(fā)工資 = 應(yīng)發(fā)工資 合計扣款。A、教師信息處理(1) 輸入教師信息 (2) 插入(修改)教師信息(3) 刪除教師信息 (4) 瀏覽教師信息(5) 查詢教師信息 (6) 導(dǎo)入教師信息(7) 保存教師信息B、教師數(shù)據(jù)處理(1) 按教師號錄入教師基本工資、津貼、生活補貼、電話費、水電費、房租、所得稅、衛(wèi)生費、公積金等基本數(shù)據(jù)。(2) 教師實發(fā)工資、應(yīng)發(fā)工資、合計扣款計算。 (3) 教師數(shù)據(jù)管理(4) 教師數(shù)據(jù)查詢 (5) 教師綜合信息輸出二、流程圖開始教師信息處理教師數(shù)據(jù)處理選A選B選0保存教師信息教師綜合信息輸出教師數(shù)據(jù)查詢教師數(shù)據(jù)管理工資計算錄入基本數(shù)據(jù)導(dǎo)入教師信息 查詢教師信息瀏覽教師信息刪除教師信息輸入教師信息插入教師信息結(jié)束三、源代碼程序:#include #include#include#include/*函數(shù)聲明*/#define N 2/宏定義參數(shù)Nvoid input();/自己寫的能輸入教師信息的函數(shù)int menu();/定義一個函數(shù)菜單struct teacher/關(guān)于教師的結(jié)構(gòu)char num15;/定義教師號的字符串char name30;/同上char sex;/同上float dwmc;/浮點型變量float jtzz;/同上 float lxdh;/.float jbgz;/.float jt;/.float shbt;/.float dhf;/.float sdf;/.float fzs;/.float sts;/.float wsf;/.float gjj;/.float yfgz;/.float hjkk;/.float sfgz;/.aN;int menu()int n;/定義nprintf(1. 輸入教師信息n);/產(chǎn)生格式化輸出函數(shù)printf(2. 插入(修改)教師信息n);/。printf(3. 刪除教師信息n);/。printf(4. 瀏覽教師信息n);/。printf(5. 查詢教師信息n);/。printf(6. 導(dǎo)入教師信息n);/。printf(7. 程序結(jié)束n);/。printf(*n);/。 printf(請輸入你要執(zhí)行的操作:n);/。scanf(%d,&n);/格式輸入函數(shù)while( n7)/循環(huán)語句printf(請重新輸入n);scanf(%d,&n); return n;/返回值void input()/實現(xiàn)教師信息的輸入 void save();int i; for(i=0;iN;i+) printf(請輸入教師號:);/printf和scanf的輸入輸出 scanf(%s,&ai.num);printf(請輸入教師姓名:); scanf(%s,&);printf(請輸入教師性別:); scanf(%s,&ai.sex); printf(請輸入教師單位名稱:); scanf(%f,&ai.dwmc);printf(請輸入教師家庭住址:);getchar(); scanf(%f,&ai.jtzz);printf(請輸入教師聯(lián)系電話:);getchar(); scanf(%f,&ai.lxdh);printf(請輸入教師基本工資:);getchar(); scanf(%f,&ai.jbgz);printf(請輸入教師津貼:);getchar(); scanf(%f,&ai.jt);printf(請輸入教師生活補貼:);getchar(); scanf(%f,&ai.shbt);printf(請輸入教師電話費:);getchar(); scanf(%f,&ai.dhf);printf(請輸入教師水電費:);getchar(); scanf(%f,&ai.sdf);printf(請輸入教師房租費:);getchar(); scanf(%f,&ai.fzs);printf(請輸入教師所得稅:);getchar(); scanf(%f,&ai.sts);printf(請輸入教師衛(wèi)生費:);getchar(); scanf(%f,&ai.wsf);printf(請輸入教師公積金:);getchar(); scanf(%f,&ai.gjj);ai.yfgz=ai.jbgz+ai.jt+ai.shbt;ai.hjkk=ai.dhf+ai.sdf+ai.fzs+ai.sts+ai.wsf+ai.gjj;ai.sfgz=ai.yfgz-ai.hjkk;printf(n%f %f %fn,ai.yfgz,ai.hjkk,ai.sfgz); save();void xiugai()/能修改信息的函數(shù)char temp20;int flag=0;int i;printf(請輸入要修改的教師號:n);getchar();/回車gets(temp);for(i=0;iN;i+)if(strcmp(temp,ai.num)=0)printf(%s %s %s %f %f %f %f %f %f %f %f %f %f %f %f n,ai.num,,ai.sex,ai.dwmc,ai.jtzz,ai.lxdh,ai.jbgz,ai.jt,ai.shbt,ai.dhf,ai.sdf,ai.fzs,ai.sts,ai.wsf,ai.gjj);printf(請重新輸入教師號、姓名、性別、單位名稱、家庭住址、聯(lián)系電話、基本工資、津貼、生活補貼、電話費、水電費、房租費、所得稅、衛(wèi)生費、公積金:n);input();flag=1;if(flag=0)printf(查無此人!n);printf(修改后的教師信息:n);printf(教師號、姓名、性別、單位名稱、家庭住址、聯(lián)系電話、基本工資、津貼、生活補貼、電話費、水電費、房租費、所得稅、衛(wèi)生費、公積金:n);for(i=0;i2;i+);printf(%s %s %s %f %f %f %f %f %f %f %f %f %f %f %fn,ai.num,,ai.sex,ai.dwmc,ai.jtzz,ai.lxdh,ai.jbgz,ai.jt,ai.shbt,ai.dhf,ai.sdf,ai.fzs,ai.sts,ai.wsf,ai.gjj);void shuchu()/能輸出信息的函數(shù) int i;printf(教師號、姓名、性別、單位名稱、家庭住址、聯(lián)系電話、基本工資、津貼、生活補貼、電話費、水電費、房租費、所得稅、衛(wèi)生費、公積金、應(yīng)發(fā)工資、合計扣款、實發(fā)工資、:n);for(i=0;iN;i+)printf(%s %s %c %f %f %f %f %f %f %f %f %f %f %f %fn,ai.num,,ai.sex,ai.dwmc,ai.jtzz,ai.lxdh,ai.jbgz,ai.jt,ai.shbt,ai.dhf,ai.sdf,ai.fzs,ai.sts,ai.wsf,ai.gjj);printf(%f %f %fn,ai.yfgz,ai.hjkk,ai.sfgz);void chaxun()/能查詢信息的函數(shù)char name20;int flag=0;int i;printf(請輸入要查找的教師姓名:n);getchar();gets(name);for(i=0;iN;i+)if(strcmp(name,)=0)printf(教師號、姓名、性別、單位名稱、家庭住址、聯(lián)系電話、基本工資、津貼、生活補貼、電話費、水電費、房租費、所得稅、衛(wèi)生費、公積金:n);printf(%s %s %s %f %f %f %f %f %f %f %f %f %f %f %fn,ai.num,,ai.sex,ai.dwmc,ai.jtzz,ai.lxdh,ai.jbgz,ai.jt,ai.shbt,ai.dhf,ai.sdf,ai.fzs,ai.sts,ai.wsf,ai.gjj);flag=1;if(flag=0)printf(查無此人!n);void main()/主函數(shù) int num;system(color 6f);while(num=menu()switch(num)case 1:input();break;case 2:xiugai();break;case 4:shuchu();break;case 5:chaxun();break;case 7:exit(0);getch();system(cls);/清屏void save()/保存輸入的教師信息FILE*fp;int i;if(fp=fopen(list,wb)=NULL)printf(cannot open filen);return;for(i=0;i Settings - 選擇Link屬性頁, 在Project Options中將/subsystem:console改成/subsystem:windows 2. Console子系統(tǒng)設(shè)置錯誤, 提示: LIBCD.lib(wincrt0.obj) : error LNK2001: unresolved external symbol _WinMain16 控制臺項目要使用Console子系統(tǒng), 而不是Windows, 設(shè)置: Project - Settings - 選擇Link屬性頁, 在Project Options中將/subsystem:windows改成/subsystem:console 3. 程序入口設(shè)置錯誤, 提示: msvcrtd.lib(crtexew.obj) : error LNK2001: unresolved external symbol _WinMain16 通常, MFC項目的程序入口函數(shù)是WinMain, 如果編譯項目的Unicode版本, 程序入口必須改為wWinMainCRTStartup, 所以需要重新設(shè)置程序入口: Project - Settings - 選擇C/C+屬性頁, 在Category中選擇Output, 再在Entry-point symbol中填入wWinMainCRTStartup, 即可 4. 線程運行時庫設(shè)置錯誤, 提示: nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol _beginthreadex nafxcwd.lib(thrdcore.obj) : error LNK2001: unresolved external symbol _endthreadex 這是因為MFC要使用多線程時庫, 需要更改設(shè)置: Project - Settings - 選擇C/C+屬性頁, 在Category中選擇Code Generation, 再在Use run-time library中選擇Debug Multithreaded或者multithreaded 第二類:程序沒有添加必要的庫。 當(dāng)copy網(wǎng)上的源程序,在本機編譯的時候,由于新建的工程沒有把連接用的庫,在連接的時候添加進去,所以一些函數(shù)、變量找不到定義的庫文件,從而出錯。 t解決方法: 1. 先弄清楚到底缺了哪些庫,再在projectsettinglink里面的moldul/lib 添加這些庫的文件。 2. 可以用以下形式在源程序里面添加下面代碼: #pragma comment(lib, openGL32.lib);#pragma comment(lib, glu32.lib);#

溫馨提示

  • 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)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論