本科畢業(yè)設(shè)計(jì)-教師信息管理系統(tǒng)(c語言-課程設(shè)計(jì))_第1頁
本科畢業(yè)設(shè)計(jì)-教師信息管理系統(tǒng)(c語言-課程設(shè)計(jì))_第2頁
本科畢業(yè)設(shè)計(jì)-教師信息管理系統(tǒng)(c語言-課程設(shè)計(jì))_第3頁
本科畢業(yè)設(shè)計(jì)-教師信息管理系統(tǒng)(c語言-課程設(shè)計(jì))_第4頁
本科畢業(yè)設(shè)計(jì)-教師信息管理系統(tǒng)(c語言-課程設(shè)計(jì))_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

PAGE1課程設(shè)計(jì)任務(wù)書計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)2010年級一班陳金利設(shè)計(jì)題目教師信息管理系統(tǒng)設(shè)計(jì)主要內(nèi)容教師信息包括教師號、姓名、性別、年齡、學(xué)歷、職稱、工資、住址、電話等(教師號不重復(fù))。試設(shè)計(jì)一教師信息管理系統(tǒng),使之能提供以下功能:(1)系統(tǒng)以菜單方式工作(2)教師信息錄入功能--輸入(3)教師信息刪除功能(4)教師信息瀏覽功能--輸出(5)查詢和排序功能:(至少一種查詢方式)--算法按教師號查詢按職稱查詢等具體要求圍繞課程設(shè)計(jì)的目的和意義,基本要求如下:1、認(rèn)真閱讀《C語言課程設(shè)計(jì)》指導(dǎo)書,明確課程設(shè)計(jì)的目的、意義和要求;2、快速總結(jié)C程序設(shè)計(jì)語言的精髓,如:函數(shù)的概念、函數(shù)的設(shè)計(jì)和函數(shù)的調(diào)用;快速熟悉TuberC或C++的上機(jī)環(huán)境。能熟練進(jìn)行高級編輯操作(特別是字塊操作);熟悉步進(jìn)式、斷點(diǎn)跟蹤的程序調(diào)試方法,提高工作效率。4、根據(jù)“課程設(shè)計(jì)題目”,采用結(jié)構(gòu)化的程序設(shè)計(jì)思想,確定系統(tǒng)的總體設(shè)計(jì)方案、確"定時間進(jìn)度。如果是多人共一題,則要首先完成小組內(nèi)的人員分工及安排,不允許重題現(xiàn)象。5.學(xué)習(xí)并了解良好的程序設(shè)計(jì)風(fēng)格。按質(zhì)、按量、并按時間完成課程設(shè)計(jì)的任務(wù)。6.提供可運(yùn)行的課程設(shè)計(jì)系統(tǒng),參加上機(jī)面試答辯。本次課程設(shè)計(jì)的重點(diǎn)是:學(xué)會設(shè)計(jì)并編寫函數(shù),掌握好各函數(shù)之間的調(diào)用關(guān)系;利用文件操作函數(shù),建立數(shù)據(jù)庫并完成對數(shù)據(jù)庫的各種操作;掌握幾種典型算法的應(yīng)用(如:冒泡法、選擇排序法和折半查找法)。同時鍛煉學(xué)生根據(jù)題目進(jìn)行分析、設(shè)計(jì)、編碼、調(diào)試程序和書寫必要文檔的綜合處理能力,從實(shí)踐中學(xué)習(xí)并體會程序設(shè)計(jì)的結(jié)構(gòu)化思想和設(shè)計(jì)方法。進(jìn)度安排依照教學(xué)計(jì)劃,課程設(shè)計(jì)時間為3周。按照軟件工程的思想,軟件系統(tǒng)的分析設(shè)計(jì)至關(guān)重要,并要充分重視書寫“文檔”。避免甚至杜絕“拿到題目就編碼”的現(xiàn)象。建議將時間分為三個階段:第一階段,根據(jù)題目要求,拿出系統(tǒng)的總體設(shè)計(jì)方案:即構(gòu)思各程序模塊的算法,并畫出相應(yīng)的N-S圖,同時編寫相應(yīng)的文檔;第二階段,根據(jù)N-S圖編寫程序代碼并單獨(dú)調(diào)試,再將調(diào)試通過的各個子模塊進(jìn)行集成調(diào)試;第三階段,歸納文檔資料,按要求填寫在《課程設(shè)計(jì)說明書》上,并參加答辯。三個階段時間分配的大概比例是:35:45:20。完成后應(yīng)上交的材料1.課程設(shè)計(jì)的題目、系統(tǒng)的總功能和各子模塊的功能;2.題目的設(shè)計(jì)思想(或算法)簡述;3.主要程序的框圖(要求用N-S圖);4.源程序代碼(要求在關(guān)鍵的位置有注釋,從而增加程序的可讀性);5.課程設(shè)計(jì)的總結(jié)報(bào)告,主要包括以下內(nèi)容:(1)課程設(shè)計(jì)中遇到的主要問題和解決方法;(2)你的創(chuàng)新和得意之處;(3)設(shè)計(jì)中存在的不足及改進(jìn)的設(shè)想;(4)本次課程設(shè)計(jì)的感想和心得體會。以上完成的源程序及相關(guān)文檔,填寫在《課程設(shè)計(jì)說明書》上,要求干凈整潔,符合課程設(shè)計(jì)的要求和規(guī)范??傇u成績主函數(shù)題目設(shè)計(jì)思想簡述主函數(shù)退出系統(tǒng)教師信息排序的函數(shù)瀏覽教師信息的函數(shù)刪除教師信息的函數(shù)查詢教師信息的函數(shù)錄入教師信息的函數(shù)菜單欄函數(shù)識別口令的函數(shù)退出系統(tǒng)教師信息排序的函數(shù)瀏覽教師信息的函數(shù)刪除教師信息的函數(shù)查詢教師信息的函數(shù)錄入教師信息的函數(shù)菜單欄函數(shù)識別口令的函數(shù)如上圖所示,該教師信息管理系統(tǒng)主要是一個以動態(tài)鏈表的應(yīng)用為基礎(chǔ)來實(shí)現(xiàn)對教師信息的錄入,查詢,刪除等功能。程序的N—S圖2.1總程序的N—S圖i=0i=0輸入口令a當(dāng)i<3輸入口令a當(dāng)i<3當(dāng)b<1或b>6Ta=123456?Ta=123456?F假i=i+1退出循環(huán)i=i+1退出循環(huán)口令3次輸入錯誤,退出系統(tǒng)教師信息錄入功能教師信息瀏覽功能教師信息刪除功能Tb=4?FTb=3?FTb=2?FTb=1?F重新輸入所要選擇的功能b輸入所選擇的功能bTi=3?F口令3次輸入錯誤,退出系統(tǒng)教師信息錄入功能教師信息瀏覽功能教師信息刪除功能Tb=4?FTb=3?FTb=2?FTb=1?F重新輸入所要選擇的功能b輸入所選擇的功能bTi=3?F教師信息查詢功能Tb=5?F教師信息查詢功能Tb=5?F退出系統(tǒng)教師信息排序功能退出系統(tǒng)教師信息排序功能說明:各功能都是通過調(diào)用子函數(shù)來實(shí)現(xiàn)的。2.2各子函數(shù)的N—S圖子函數(shù)主要包括教師信息錄入,教師信息瀏覽,教師信息刪除,教師信息查詢和教師信息排序等5個。在退出系統(tǒng)時調(diào)用了一個保存信息到文件中的函數(shù),該函數(shù)只是簡單的應(yīng)用了文件的讀寫功能,在此不寫出其N—S圖。2.2.1教師信息錄入函數(shù)p1=(structteacher*)malloc(LEN)p1=(structteacher*)malloc(LEN)輸入一個教師號p1->num輸入一個教師號p1->numn=n+1n輸入教師的編號,姓名,所在系,工資,課時,T第一個錄入?F當(dāng)教師號不為0p3=p3->nextHead=p1p3->next=p1當(dāng)p3->next不為空p3=headT鏈表頭為空?FT教師號為0?Fn=n+1n輸入教師的編號,姓名,所在系,工資,課時,T第一個錄入?F當(dāng)教師號不為0p3=p3->nextHead=p1p3->next=p1當(dāng)p3->next不為空p3=headT鏈表頭為空?FT教師號為0?Fhead=p1p2->next=p1head=p1p2->next=p1p2=p1p1=(structteacher*)malloc(LEN)輸入一個教師號p1->nump2=p1p1=(structteacher*)malloc(LEN)輸入一個教師號p1->nump2->next=NULLp2->next=NULL說明:p1=(structteacher*)malloc(LEN)中LEN是在程序開頭的宏定義(#defineLENsizeof(structteacher))。其中n為全局變量,用來統(tǒng)計(jì)鏈表的結(jié)點(diǎn)數(shù),以下出現(xiàn)的n都是同一個。2.2.2教師信息瀏覽函數(shù)p=headp=headT鏈表頭為空?FT鏈表頭為空?F直到p為空輸出p所指向的位置中的教師的所有信息直到p為空輸出p所指向的位置中的教師的所有信息顯示“還未錄入過信息”p=p->nextp=p->next說明:實(shí)際程序中在鏈表頭為空是提供了可以瀏覽之前保存在文件中的信息的功能,當(dāng)選擇該功能時就調(diào)用了一個讀取文件的函數(shù)。該函數(shù)只是對文件讀寫的簡單應(yīng)用,詳細(xì)請看后面第三部分代碼,這里不寫出其N-S圖。T鏈表頭為空?F2.2.3教師信息刪除的函數(shù)T鏈表頭為空?F輸出“還未錄入過教師信息”當(dāng)i!=p1->num輸出“已錄入的教師信息中沒有該教師號”Tp1為鏈表頭?Fn=n-1head=p1->nextp2->next=p1->nextTi!=p1->num?F退出循環(huán)p1=p1->nextp2=p1Tp1->next為空?Fp1=head輸出“還未錄入過教師信息”當(dāng)i!=p1->num輸出“已錄入的教師信息中沒有該教師號”Tp1為鏈表頭?Fn=n-1head=p1->nextp2->next=p1->nextTi!=p1->num?F退出循環(huán)p1=p1->nextp2=p1Tp1->next為空?Fp1=head輸入要刪除教師信息的教師號i2.2.4教師信息查詢的函數(shù)在查詢方面程序?yàn)橛脩籼峁┝?種不同方式的查詢,每一種方式的查詢?yōu)橐粋€子函數(shù),此時也是采用一個菜單欄函數(shù)進(jìn)行選擇查詢方式并調(diào)用該種方式的函數(shù)。菜單欄函數(shù)跟主程序菜單欄的算法一樣,j=0此處只給出查詢函數(shù)的N—S圖。j=0T鏈表頭為空?FT鏈表頭為空?F輸出“輸出“還未錄入程序”并退出函數(shù)當(dāng)p非空時輸出“已錄入的信息中不存在符合i的信息的教師Tj不為0?Fp=p->nextj=j+1輸出p所指向的位置的教師的所有信息Ti跟p中對應(yīng)信息不等?Fp=head輸入要查找的教師信息的對應(yīng)方法的對應(yīng)數(shù)據(jù)i當(dāng)p非空時輸出“已錄入的信息中不存在符合i的信息的教師Tj不為0?Fp=p->nextj=j+1輸出p所指向的位置的教師的所有信息Ti跟p中對應(yīng)信息不等?Fp=head輸入要查找的教師信息的對應(yīng)方法的對應(yīng)數(shù)據(jù)i說明:該N—S圖是對應(yīng)姓名,教師號,職稱,年齡四種查找方式的函數(shù)的。當(dāng)選擇教師號查找時,輸入i的即為教師號,與i做比較的為p中的教師號,選擇其他查找方式時類似。2.2.5教師信息排序函數(shù)T鏈表頭不為空?F排序也跟查詢一樣給出多種排序方式并采用菜單欄函數(shù),此處也只給出排序函數(shù)的N—S圖。T鏈表頭不為空?Fp2=head->nextp1=headT第二個結(jié)點(diǎn)為空?F輸出“還未錄入過教師信息”并退出函數(shù)p2=head->nextp1=headT第二個結(jié)點(diǎn)為空?F輸出“還未錄入過教師信息”并退出函數(shù)調(diào)用教師信息瀏覽函數(shù)當(dāng)i小于n時當(dāng)j小于n-i時p2=p1->nextp1=headp2=p2->nextp1=p2p3=p1p2=p4p3=p2p1->next=p4p2->next=p1p4=p2->nextp3->next=p2head=p2Tp1為鏈表頭?Fp1中的對應(yīng)信息小過p2的?TFj=0i=1調(diào)用教師信息瀏覽函數(shù)當(dāng)i小于n時當(dāng)j小于n-

溫馨提示

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

評論

0/150

提交評論