C語言程序課程設(shè)計論文(關(guān)于處理學(xué)生信息)41832_第1頁
C語言程序課程設(shè)計論文(關(guān)于處理學(xué)生信息)41832_第2頁
C語言程序課程設(shè)計論文(關(guān)于處理學(xué)生信息)41832_第3頁
C語言程序課程設(shè)計論文(關(guān)于處理學(xué)生信息)41832_第4頁
C語言程序課程設(shè)計論文(關(guān)于處理學(xué)生信息)41832_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、課程設(shè)計(論文) 題 目 名 稱 學(xué)生證查找問題 課 程 名 稱 c 語言程序課程設(shè)計 學(xué) 生 姓 名 朱 娜 學(xué) 號 0941301287 系 、專業(yè) 信息工程系、信息大類 指 導(dǎo) 教 師 牛 莉 2010 年 6 月 26 日 目 錄 1前言2 2需求分析2 21 要求2 22 任務(wù)2 23 運行環(huán)境2 24 開發(fā)工具2 3概要設(shè)計3 31 系統(tǒng)流程圖3 32 查詢函數(shù)流程圖4 4詳細(xì)設(shè)計5 41 分析和設(shè)計5 42 具體代碼實現(xiàn)6 4. 3 測試與輸入輸出9 5課程設(shè)計的總結(jié)與體會11 參考文獻(xiàn)12 致 謝13 1前言 編寫一個程序來處理學(xué)生證信息。通過一個結(jié)構(gòu)體數(shù)組來存放輸入的每一位同

2、 學(xué)學(xué)生證信息(包括姓名、年級、專業(yè)、學(xué)號、家庭地址) ,然后將其信息存入文件 中。輸入一個學(xué)生姓名查詢該同學(xué)的信息,并顯示在屏幕上。 2需求分析 21 要求 (1)用 c 語言實現(xiàn)程序設(shè)計; (2)利用結(jié)構(gòu)體進(jìn)行相關(guān)信息處理; (3)畫出查詢模塊的流程圖; (4)系統(tǒng)的各個功能模塊要求用函數(shù)的形式實現(xiàn); (5)界面友好(良好的人機(jī)互交) ,程序要有注釋。 22 任務(wù) (1)定義一個結(jié)構(gòu)體類型數(shù)組,輸入每一位同學(xué)的記錄(包括姓名、年級、 專業(yè)、學(xué)號、家庭地址) ,將其信息存入文件中; (2)輸入姓名查詢該同學(xué)的信息,并顯示在屏幕上; (3)畫出所有模塊的流程圖; (4)編寫代碼; (5)程序分

3、析與調(diào)試。 23 運行環(huán)境 (1)windows2000/xp系統(tǒng) (2)turboc2.0編譯環(huán)境 24 開發(fā)工具 c語言 3 概要設(shè)計 3.1 流程圖 系統(tǒng)流程圖如圖 3.1 所示。 圖 3.1 系統(tǒng)流程圖 32 函數(shù)“查找”流程圖 查找函數(shù)流程圖如圖 3.2 所示。 輸入數(shù)據(jù)保存在文 件里 執(zhí)行查找 find 函 數(shù) 輸出結(jié)果 開始 結(jié)束 圖 3.2 查詢函數(shù)流程圖 輸出“qing shu ru xing ming” j=0 jn a=strcmp(nam,) a=0 輸出該學(xué)生的所有信息 輸出 cha wu ci rennn return 結(jié)束 f f t t

4、 開始 j=j+1 4 詳細(xì)設(shè)計 41 分析與設(shè)計 在程序的開頭部分定義結(jié)構(gòu)體類型和全局的結(jié)構(gòu)體數(shù)組,用來存放同學(xué)信息, 假設(shè)共4條。 #include stdio.h #define n 4 struct student char name10; char class10; char profess10; int num; char add20; stun; 定義一個指針 fp 輸入學(xué)生信息放 sta 數(shù)組中。并將結(jié)構(gòu)體數(shù)組中的所有信息寫 入到文件data.dat中,之后再關(guān)閉文件。 main() file *fp; void find(); int i; if(fp=fopen(data.

5、dat,w)=null) printf(n cant open data.dat !n); exit(0); for(i=0;in;i+) printf(input name :);scanf(%s,); printf(input class:);scanf(%s,stui.class); printf(input profession:);scanf(%s,fess); printf(input num:);scanf(%d, printf(input add:);scanf(%s,stui.add); fprintf(fp,%s%s%s%d%s,stui.

6、name,stui.class,fess,stui.n um,stui.add); fclose(fp); find(); 在find函數(shù)中先用寫的方式打開文件data.dat,若不存在則新建一個,若無法 打開則輸出can not open files data.dat,將結(jié)構(gòu)體中的同學(xué)信息以數(shù)據(jù)塊的形式存 入文件data.txt中。存入后,關(guān)閉文件。 用自定義的查找函數(shù)find ()實現(xiàn)對學(xué)生的信息查找。 void find() int j,a; char nam10; printf(qing shu ru xing ming:); scanf(%s, for(j=0;jn;

7、j+) a=strcmp(nam,); if(a=0) printf(class,profession,number,addressn,stuj.class,fess,stuj. num,stuj.add ); printf(%s,%s,%d,%s,stuj.class,fess,stuj.num,stuj.add); return; printf(cha wu ci renn); 在這個函數(shù)中采用字符串,如果輸入的字符串與文件中的一個字符串相同, 則輸出該字符串代表的學(xué)生的所有信息:姓名、電話號碼、email、地址。 42 具體代碼實現(xiàn) #i

8、nclude stdio.h #define n 4 struct student char name10; char class10; char profess10; int num; char add20; stun; main() file *fp; void find(); int i; if(fp=fopen(data.dat,w)=null) printf(n cant open data.dat !n); exit(0); for(i=0;in;i+) printf(input name :);scanf(%s,); printf(input class:);s

9、canf(%s,stui.class); printf(input profession:);scanf(%s,fess); printf(input num:);scanf(%d, printf(input add:);scanf(%s,stui.add); fprintf(fp,%s%s%s%d%s,,stui.class,fess,stui.num,st ui.add); fclose(fp); find(); void find() int j,a; char nam10; printf(qing shu ru xing ming:);

10、 scanf(%s, for(j=0;jn;j+) a=strcmp(nam,); if(a=0) printf(class,profession,number,addressn,stuj.class,fess,stuj.nu m,stuj.add ); printf(%s,%s,%d,%s,stuj.class,fess,stuj.num,stuj.add); return; printf(cha wu ci renn); 4.3 測試與輸入輸出 輸入學(xué)生的信息,系統(tǒng)產(chǎn)生一data.dat二進(jìn)制文件。 輸入需要查找的學(xué)生姓名 輸出查找的學(xué)生姓

11、名 5 課程設(shè)計的總結(jié)與體會 一個星期的課程設(shè)計,雖然有些疲勞和困倦,但帶給我很多的收獲。c 語言已 經(jīng)學(xué)了一個學(xué)期,大概三個多月了,有許多知識都存在似懂非懂的現(xiàn)象,這種現(xiàn)象 通過實際的上機(jī)操作,已經(jīng)減少了許多。對這些知識也有了更深的理解和很好的掌 握。也有很多理論上說得過去的代碼,但到了實際操作,卻是行不通的。這種困惑, 有許多已經(jīng)通過實際操作解決了,并能夠深刻認(rèn)識,但也有很多沒有明白。只能避 過這些方法,換方法實現(xiàn)。在課程設(shè)計之前,因為有了綜合實驗的經(jīng)驗與教訓(xùn),明 白了寫代碼這一步是非常重要的,因為當(dāng)你把代碼輸入電腦,并用編譯器將其運行, 發(fā)現(xiàn)通過不了,再來檢查找出問題,這是一件非常辛苦的

12、事情,也很浪費時間。于 是在課程設(shè)計的時候,我花了兩天的時間來規(guī)劃與寫代碼,將要實現(xiàn)的內(nèi)容分析清 楚,才把代碼輸入電腦,但卻有另一些問題,例如亂碼的問題,這就要花很多的時 間在重新寫代碼上了,用一些可能不出現(xiàn)亂碼的方法來實現(xiàn)該功能。因此我覺得每 次寫程序,應(yīng)該先找到該程序中的核心地方,用多種方法來實現(xiàn)該核心,這才可能 避免等到發(fā)現(xiàn)邏輯上或者編譯器不支持上的錯誤,才來想補(bǔ)救的措施,這樣花費時 間在想補(bǔ)救措施是很不值得的。此外,這樣多種方法寫程序可以鍛煉自己多種思維 方式解決一個問題的能力。 通過這次課程設(shè)計使我懂得了理論與實際相結(jié)合是很重要的,只有理論知識是 遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識與實

13、踐相結(jié)合起來,從理論中得出結(jié)論,才能 真正為社會服務(wù),從而提高自己的實際動手能力和獨立思考的能力。在設(shè)計的過程 中遇到問題,可以說得是困難重重,這畢竟第一次做的,難免會遇到過各種各樣的 問題,同時在設(shè)計的過程中發(fā)現(xiàn)了自己的不足之處,對以前所學(xué)過的知識理解得不 夠深刻,掌握得不夠牢固。 這次課程設(shè)計終于順利完成了,在設(shè)計中遇到了很多專業(yè)知識問題,最后在老 師的辛勤指導(dǎo)下,終于游逆而解。同時,在老師的身上我們學(xué)也到很多實用的知識, 在次我們表示感謝!同時,對給過我?guī)椭乃型瑢W(xué)和各位指導(dǎo)老師再次表示忠心 的感謝! 參考文獻(xiàn) 1 張福祥. c 語言程序設(shè)計m. 遼寧大學(xué)出版社,2008.1 . 64-74 頁 121-145 頁 181-198 頁 2 張福祥. 王萌c 語言程序設(shè)計習(xí)題解答與實驗實訓(xùn)m沈陽:遼 寧大學(xué)出版社,200821-64 頁 3 牛莉. 劉遠(yuǎn)軍等計算機(jī)等級考試輔導(dǎo)教程m北京:中國鐵道 出版社,2008104-126 頁 致 謝 感謝指導(dǎo)老師在百忙之中抽出時間為我們批改程序,指導(dǎo)監(jiān)督我們做程序設(shè)計, 為我

溫馨提示

  • 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

提交評論