




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
C程序設計——學生通訊錄PAGE8 C語言程序設計課程設計材料學生姓名:學號:系(院):專業:設計(論文)題目:完成日期:指導教師:
目錄課程設計目的…………2課程設計內容…………2總體設計………………2詳細設計………………3運行結果………………5編程體會………………8
課程設計目的通過課程設計,加深對結構化程序設計思想的理解,能對系統功能進行分析,并設計合理的模塊化結構。通過課程設計,進一步掌握C語言當中重要的數據結構。掌握并熟練運用指針、鏈表、結構體、文件等數據結構。通過課程設計,提高程序開發能力,能運用合理的控制流編寫清晰高效的程序。通過課程設計,培養C語言知識運用和自學能力,真正的把課堂上獲得的知識運用起來,培養自己對程序編寫的興趣,并能獨立設計和實現一個中小型系統。通過課程設計,加強了自己的程序分析能力,提高了自己對程序的優化能力。通過課程設計,發現自己在編寫程序方面的薄弱環節和不足之處,學會運用網絡、書籍等手段解決問題,學會請教同學老師,加強團隊合作。課程設計內容此系統以班級學生為背景,建立班級通訊錄,包括學生的學號、姓名、年齡、電話號碼、住址、QQ、郵編等基本信息,實現對學生個人信息的輸入、查詢、修改、刪除、顯示等功能。具體功能實現如下:系統以菜單方式工作,界面清晰,易于操作。信息錄入:實現學生個人信息的錄入功能,并能將其以文件形式加以保存。添加功能:實現對學生個人信息的添加,并可以根據需要不斷繼續輸入。查詢功能:實現按學號查詢、按姓名查詢學生個人信息的功能。修改功能:實現對指定學生的個人信息的修改,可以對單項修改。刪除功能:實現對指定學生的個人信息的刪除功能。信息顯示功能:實現對班級學生的學生個人信息瀏覽。總體設計本系統的模塊功能如圖1所示,主要有以下模塊:主菜單界面:直接寫入main函數當中,實現系統主菜單的顯示,并通過switch語句實現對其它各功能子函數的調用。建立通訊錄界面:構造函數voidcreate(),實現對第一個學生個人信息的錄入,并顯示創建成功。添加新記錄界面:構造函數voidadd(),實現對其他學生個人信息的錄入,并可以根據需要選擇繼續添加信息或返回到主菜單。查找信息界面:構造函數voidfindname(structmessage*fphead)和voidfindnumber(structmessage*fphead)實現按姓名查找和按學號查找的功能。修改信息界面:構造函數voidmodify(structmessage*fphead),實現對指定學生個人信息進行顯示并修改的功能。刪除信息界面:構造函數voidDelete(structmessage*fphead),實現對指定學生更讓人信息進行顯示并刪除的功能。顯示信息界面:構造函數voidprint(),實現對所有學生個人信息的顯示。主菜單界面主菜單界面添加新記錄建立新通訊錄查詢信息修改信息刪除信息顯示信息退出通訊錄按姓名查找按學號查找圖1系統功能模塊圖詳細設計數據結構設計本程序用到的數據結構主要有:結構體,數組,指針,鏈表,文件等。先聲明一個類型為structmessage的結構體,其成員為學生的個人信息。然后通過對指針、鏈表、文件等數據結構的操作,實現對學生個人信息的錄入、添加、查詢、修改、刪除、顯示等一系列操作。其中,結構體定義如下:typedefstructmessage{charnumber[15]; charname[15]; charage[5]; chartel[20]; charaddress[50]; charqq[15]; charpostcode[10]; structmessage*next;}Mes; 模塊接口設計所有函數模塊聲明如下 voidcreate();//建立通訊錄voidadd();//添加通訊錄voidfindname(structmessage*fphead);//按姓名查找voidfindnumber(structmessage*fphead);//按學號查找voidmodify(structmessage*fphead);//修改記錄voidDelete(structmessage*fphead);//刪除記錄structmessage*open(void);//打開文件,載入鏈表voidprint();//顯示通訊錄定義兩個全局變量defineNULL0 defineLENsizeof(structmessage)主要模塊的實現系統以主函數voidmain()為入口,直接顯示主菜單界面,然后通過switch語句調用各個子函數。系統接收用戶輸入的選擇,進入到下一級菜單,以實現不同的功能。以下是幾個主要模塊的流程圖:主菜單打印主菜單打印主菜單接收用戶選擇輸入是否合法是否為0調用相應函數退出系統是否是否圖2主函數流程圖查找信息函數查找信息查找信息是否為1按姓名查找調用相應函數是否為2按學號查找是否調用相應函數返回主菜單是否圖3信息查找流程圖修改信息函數00退出1學號2姓名3年齡4電話5QQ6郵編修改信息輸入學號該學號是否存在無此通訊錄,返回主菜單是否圖4信息修改流程圖運行結果(1)主菜單界面:圖5主菜單界面這是主菜單界面,用戶可根據需要選擇1~6操作項目,不同的選項可進入不同的功能界面,0則為退出系統。查找信息界面圖6信息查找界面進入此界面后,用戶可以根據需要選擇兩種查詢方式,選擇不同的方式則會進入不同的界面,輸入所要查找的相關信息即可:圖7按姓名查找信息圖8按學號查詢信息修改信息界面圖9修改信息界面進入此界面之后,只要輸入所要修改學生的學號,即可得到學生信息:圖10顯示修改界面根據提示,選擇要修改的項目,從鍵盤輸入新的信息即可。圖11(a)修改示例圖11(b)修改示例編程體會在這次課程設計過程中,我收獲了很多。首先是對C語言的更加深刻的認識和了解。在課程設計過程中難免會遇到各種各樣的問題,這就督促我去復習書本,溫習知識,從而就漸漸熟悉了結構體、鏈表、指針等內容,并通過自己的動手實踐,不斷嘗試,熟能生巧,慢慢去掌握去消化這些知識。這學期學習的數據結構也給了我很大的幫助,以前很難理解的程序片段也逐漸明了起來。其次是學會了通過各種途徑解決問題。在程序剛開始運行的時候,問題比較多,比如無法正常調用子函數,經過檢查,發現是函數參數傳遞錯誤;有時候主界面和子界面會同時出現在同一個界面內,造成界面層次不夠清晰,運用system("cls")清屏函數可以解決這個問題;調用函數后界面有時會一閃而過,原來是沒有使用getchar()語句使程序運行界面暫停;還有文件的打開與關閉一直有問題,原來是文件的打開方式不正確。這些問題很小,在編譯過程中并不會提示有錯誤,但在運行中就會出現障礙,這就需要細心和耐心,才能發現問題所在。遇到這些問題后,我會通過查書、上網搜索、問同學等,不斷修改、編譯、運行,直到問題解決。這個過程有時讓人泄氣,有時讓人欣喜,但是我學會了面對問題不退縮,通過自己的不斷嘗試努力解決問題。最后是增強了優化程序的能力。這個程序雖然是從網上找來的,但是我站在用戶的角度運行程序的時候卻發現了很多不夠人性化的地方,比如顯示時行與行之間的距離,界面與界面之間的層次,處理信息的過程等等,有許多讓人不舒服的地方,于是我都根據自己的理解做了調整,努力讓程序層次清晰、簡單明了、便于操作。程序運行基本無誤后,我又反復對系統做了測試,依然發現了很多瑕疵,比如刪除操作時應該再多一步讓用戶選擇是否要刪除,而不是直接就刪除,我對此做了調整,增加了一個顯示的過程,讓用戶可以進一步做出選擇。還有修改信息時,應該要讓用戶可以針對每個小的方面進行修改,而不需要所有信息都重新輸入。還有對于非法輸入的提示,可以在用戶輸入時就給定范圍,或者在程序中加以限制,這樣就可以減少程序出現未知錯誤。在這個優化的過程中,我體會到了細節
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 職工認購協議書
- 基金會項目執行協議書
- 獲取拆遷協議書
- 花木租擺協議書
- 綠植租賃協議書
- 股東辦學協議書
- 和父母斷絕合同協議書
- 承包蛋糕店合同協議書
- 幼兒園投資分紅協議書
- 續簽合伙協議書
- 建平磷鐵礦業有限公司磷(含磁鐵磷灰石)礦礦山地質環境保護與土地復墾方案
- DB22∕T 3181-2020 公路水路行業安全生產風險分級管控和隱患排查治理雙重預防機制建設通用規范
- GB/T 36713-2018能源管理體系能源基準和能源績效參數
- GB/T 25068.1-2020信息技術安全技術網絡安全第1部分:綜述和概念
- “二級甲等婦幼保健院”評審匯報材料
- 《狼王夢》讀書分享PPT
- 三年級美術下冊第10課《快樂的節日》優秀課件1人教版
- 電力市場交易模式
- 第四課《單色版畫》 課件
- 門診手術麻醉原則課件
- 自動噴水滅火系統質量驗收項目缺陷判定記錄
評論
0/150
提交評論