學(xué)生成績管理系統(tǒng)報告文檔.doc
《學(xué)生成績管理系統(tǒng)報告文檔.doc》由會員分享,可在線閱讀,更多相關(guān)《學(xué)生成績管理系統(tǒng)報告文檔.doc(22頁珍藏版)》請在裝配圖網(wǎng)上搜索。
課 程 設(shè) 計 報 告 課程名稱 《數(shù)據(jù)結(jié)構(gòu)》 課題名稱 _學(xué)生成績管理系統(tǒng) 專 業(yè) 計算機科學(xué)與技術(shù)專業(yè) 班 級 計算機 學(xué) 號 姓 名 *** 指導(dǎo)教師 *** 2012年 12 月 9 日 前 言 設(shè)計課題八三十:學(xué)生成績管理系統(tǒng) 一、問題描述: 現(xiàn)有學(xué)生成績信息文件1(1.txt),內(nèi)容如下 姓名 學(xué)號 語文 數(shù)學(xué) 英語 張明明 01 67 78 82 李成友 02 78 91 88 張輝燦 03 68 82 56 王露 04 56 45 77 陳東明 05 67 38 47 …. .. .. .. … 學(xué)生成績信息文件2(2.txt),內(nèi)容如下: 姓名 學(xué)號 語文 數(shù)學(xué) 英語 陳果 31 57 68 82 李華明 32 88 90 68 張明東 33 48 42 56 李明國 34 50 45 87 陳道亮 35 47 58 77 …. 試編寫一管理系統(tǒng),要求如下: 1) 實現(xiàn)對兩個文件數(shù)據(jù)進行合并,生成新文件3.txt 2) 抽取出三科成績中有補考的學(xué)生并保存在一個新文件4.txt 3) 對合并后的文件3.txt中的數(shù)據(jù)按總分降序排序(至少采用兩種排序方法實現(xiàn)) 4) 輸入一個學(xué)生姓名后,能查找到此學(xué)生的信息并輸出結(jié)果(至少采用兩種查找方法實現(xiàn)) 5) 要求使用結(jié)構(gòu)體,鏈或數(shù)組等實現(xiàn)上述要求. 二、功能要求: 1、實現(xiàn)對兩個文件數(shù)據(jù)進行合并,生成新文件3.txt。 2、本系統(tǒng)顯示這樣的菜單: 請選擇系統(tǒng)功能項: 0.退出 1 .顯示學(xué)生信息 2.顯示按學(xué)號排序后的學(xué)生信息 3.顯示按總分排序后的學(xué)生信息 4.按學(xué)號查學(xué)生各科分?jǐn)?shù)和總分 5.按姓名查學(xué)生各科分?jǐn)?shù)和總分 6.抽取出三科成績中有補考的學(xué)生并保存 三、算法提示: 1、 數(shù)據(jù)結(jié)構(gòu):結(jié)構(gòu)體類型數(shù)組 2、 數(shù)據(jù)庫結(jié)構(gòu):下表構(gòu)成該系統(tǒng)的基本數(shù)據(jù)庫。 姓名 學(xué)號 語文 數(shù)學(xué) 英語 Char int int int int 四、測試數(shù)據(jù): 學(xué)生人數(shù)N=10 五、其它: 對該系統(tǒng)有興趣的同學(xué)可以在實現(xiàn)上述基本功能后,完善系統(tǒng)的其它功能。 目錄 第一章 緒論 第一節(jié) 課程背景 第二節(jié) 本文所做工作 第二章 需求分析 第三章 總體設(shè)計 第四章 詳細設(shè)計 第五章 測試 第六章 使用說明 第七章 總結(jié) 附錄A 源代碼 附錄B 參考資料 第一章緒論 學(xué)生成績管理系統(tǒng)是一個教育單位不可缺少的部分,它的內(nèi)容對于學(xué)校的決策者和管理者來說都至關(guān)重要,所以學(xué)生成績管理系統(tǒng)應(yīng)該能夠為用戶提供充足的信息和快捷的查詢手段? 學(xué)生檔案管理系統(tǒng)是典型的信息管理系統(tǒng)(MIS),經(jīng)過分析如此情況,我們用code#blocks開發(fā)工具,利用其提供的各種面向?qū)ο蟮拈_發(fā)工具和功能強大的SQL(結(jié)構(gòu)化查詢語言)。 第一節(jié) 課程背景 在我國,各大中小學(xué)校的各類信息管理系統(tǒng)并非一個新的課題,但也有的學(xué)校根本就沒有信息任何管理系統(tǒng),所有的工作幾乎還是手工操作來完成。計算機技術(shù)在日新月異的發(fā)展,但是有的很多學(xué)校,特別是在西部貧困地區(qū),學(xué)校的種類管理都依然由手工操作來完成,這十分落后,效率極低,成本很大,而且極異出錯。隨著社會的發(fā)展,信息化是社會進程的必然趨勢,學(xué)校管理只有只有快,準(zhǔn),精才能發(fā)揮其價值。 所以機器代替人力是必然的歷史發(fā)展趨勢,只有領(lǐng)導(dǎo)的重視和支持才能從人工操作改為計算機的自動化系統(tǒng)。人工操作必將被計算機代替。 有些學(xué)校雖使用了計算機,甚至管理系統(tǒng),但是仍然存在很多問題,問題一日不解決,效率就一日提不上去。 第二節(jié) 本文所做工作 本系統(tǒng)是將現(xiàn)代化的計算機技術(shù)和傳統(tǒng)的教學(xué)、教務(wù)工作相結(jié)合,按照學(xué)院的工作流程設(shè)計完成的。為了使系統(tǒng)在學(xué)院的管理中發(fā)揮更大的作用,實現(xiàn)工作過程的計算機化,提高工作效率和工作質(zhì)量,現(xiàn)提出如下的系統(tǒng)開發(fā)目標(biāo): (1)系統(tǒng)管理員進入學(xué)生成績管理系統(tǒng)學(xué)生檔案管理的主要功能是:實現(xiàn)添加學(xué)生的基本信息、修改學(xué)生的基本信息、查詢學(xué)生的基本信息、刪除學(xué)生的基本信息等基本功能。 (2)系統(tǒng)管理員進入學(xué)生成績管理系統(tǒng)學(xué)生成績管理的主要功能是:實現(xiàn)學(xué)生成績的錄入、學(xué)生成績的修改與保存等基本功能。 (3)系統(tǒng)管理員進行學(xué)生成績管理系統(tǒng)查詢與統(tǒng)計的主要功能是:實現(xiàn)根據(jù)某個學(xué)生的基本信息查詢他的成績,還可以根據(jù)學(xué)生成績的高低進行排序等基本功能。 1.1 編寫目的 本需求的編寫目的在于研究學(xué)生成績管理系統(tǒng)軟件的開發(fā)途徑和應(yīng)用方法? 1.2 背景及范圍 本項目的名稱: 學(xué)生成績管理系統(tǒng)? 本軟件基本上能具體化?合理化的管理學(xué)生的學(xué)籍檔案,用結(jié)構(gòu)化的思維方式去了解計算機的基本工作原理和高級程序設(shè)計語言? 1.3 功能 主要功能:學(xué)生成績錄入?學(xué)生信息和成績修改?查詢成績? 第二章 系統(tǒng)需求分析 可以使用戶錄入學(xué)生信息,并在系統(tǒng)中顯示出來,還能對錄入的信息進行保存,當(dāng)需要時還可以對信息進行修改和刪除,還能分別用學(xué)號、姓名、性別、年齡對學(xué)生信息進行查詢,用戶進入系統(tǒng)需要輸入密碼。 第三章 總體設(shè)計 struct student:一個結(jié)構(gòu)體類型,他能存放姓名、學(xué)號、語文、數(shù)學(xué)、英語等成績等不同類型數(shù)據(jù)組成的組合型的數(shù)據(jù)結(jié)構(gòu)。 void main():主函數(shù)。 FILE * fp:定義一個指向文件的指針變量fp. fp=fopen("學(xué)生成績","w +"):將fopen函數(shù)的返回值賦給指針變量fp,或者說,fp指向了學(xué)生信息這個文件。如果文件不存在,則建立一個新的文本文件。 Fscanf,fprintf:用格式化的方式讀寫文件。 Strcmp:字符串比較函數(shù)。 Strcpy:字符串復(fù)制函數(shù)。 程序中還用到當(dāng)型循環(huán)、swith分支語句、if語句等。 system("cls");:清屏函數(shù),使界面更簡潔。 第四章 系統(tǒng)調(diào)試 系統(tǒng)主界面 顯示學(xué)生信息 顯示按學(xué)號排序后的學(xué)生信息(按升序) 顯示按總分排序后的學(xué)生信息 按學(xué)號查學(xué)生各科分?jǐn)?shù)和總分 按姓名查學(xué)生各科分?jǐn)?shù)和總分 抽取出三科成績中有補考的學(xué)生并保存 第五章 使用說明 利用結(jié)構(gòu)體函數(shù)類型,使函數(shù)顯得沒那么繁瑣,利用文件指針,輸入的信息將保存在文件中,以便下次查詢和修改,使用“w+”方式讀寫文件,當(dāng)指定那個文件不存在時,將建立一個文件,不會出現(xiàn)出錯信息。利用fscanf和fprintf實現(xiàn)對文件的讀寫。不足之處:錄入的信息沒能保存,每次便已運行需要重新輸入數(shù)據(jù),對所學(xué)的東西沒有合理結(jié)合。 第七章 總結(jié) 當(dāng)剛開始聽到要課程設(shè)計時,心里有點怕怕的,因為畢竟剛接觸c語言,雖說也學(xué)到了一些皮毛,但當(dāng)聽到要自己去編寫程序時,才發(fā)現(xiàn)自己不會的不懂的還多著呢,要編寫一個程序還是有一些困難的,當(dāng)真的讓我去編寫程序時,真的是有點怕怕的感覺。剛?cè)雽W(xué)時,聽到要學(xué)習(xí)c語言時,我是非常的感興趣,也非常高興,因為那游戲、軟件都要用c語言來實現(xiàn),我想探究一下那到底是怎么實現(xiàn)的,能達到那樣的效果,所以剛開始我很有激情,每節(jié)課我都認真聽講,雖然剛開始聽起來有點困難,但是我相信功夫不負有心人,我知道課堂上的知識是不夠的,所以我利用課下時間,積極搜尋與之相關(guān)的信息,去圖書館借閱相關(guān)資料和習(xí)題,來增長自己的知識。 當(dāng)程序?qū)懲炅耍医K于可以松口氣了,經(jīng)過一個思考,查資料,寫源程序,上機調(diào)試.現(xiàn)在終于告一段落了.看到自己的勞動成果,心中不免有些驚喜,沒想到自己還能獨立完成初次的課程設(shè)計,雖然不敢說這個程序都是我一個人寫的,但其中大部分都是我的成果,另外我還參考了別人的意見,對自己的程序進行修改和完善。 這種課程設(shè)計對我們是非常有好處的,對C這門程序語言的掌握卻有非常大的作用.從開始對題目的分析,就注定擺在我這樣一個對C了解不多的新手面前的是一段艱難的旅程.但最終很慶幸的是我居然能夠堅持下來,而且完成了設(shè)計工作. C語言是很難學(xué)的,這也許是因人而異,但對我來說確實是一個障礙。如今要自己完成一個課程設(shè)計,無疑是對自己的一個挑戰(zhàn).先是上網(wǎng)查找有關(guān)的資料,分析題目所需的數(shù)據(jù),要用到哪些函數(shù)等等,星期二上網(wǎng)初步調(diào)試,將函數(shù)用些結(jié)構(gòu)和語句連接起來,做這個工作時,又將書本翻閱了一遍,重新獲得許多東西。如帶參函數(shù)的特點,以及一些語句的運用及特點等等。將工作分配到每塊是我完成這個設(shè)計的主要方法,然而將每塊都完成看起來比較輕松,但實際操作起來卻是比較麻煩的.由于平時對C知識的積累較為匱乏,(這可能是最主要的原因了),所以操作起來真是寸步難行,沒辦法,只有拿出課本找到相應(yīng)的知識點,臨陣磨槍.費了一番功夫,再上機調(diào)試時就是最痛苦的時候了,錯誤一大堆,要一個一個的修改。經(jīng)過幾翻調(diào)試修改之后終于可以執(zhí)行了,那時還興奮了好長時間呢!然而執(zhí)行出來的結(jié)果是不令人滿意的,界面不美觀不說,最重要的是輸入太煩瑣,而且受到的限制太多,如只能以某種方式輸入,且個數(shù)受限制。于是又發(fā)費了大量時間去修改,終于比較滿意了,但也到了星期五了,也就是答辯的時間。答辯的時候我才發(fā)現(xiàn)還有好多知識是我不會的,老師問了我一些問題,我回答出來的卻不多,我體會到我還要很努力的學(xué)習(xí),在C的學(xué)習(xí)上我還有很長的一段路要走。今天不管怎樣把這個設(shè)計作出來是件很高興的事情,不過能夠把這個設(shè)計順利完成要歸功于我的指導(dǎo)老師,幫了我很多忙,也讓我發(fā)現(xiàn)了我有好多欠缺的地方,真的很感謝你們,謝謝! 不管怎么說,我還是完成了這個設(shè)計.雖說累了點,但我想這對我們進一步掌握C,并為下學(xué)期的C二級考試是有很大的幫助的.能夠編出程序,其實本身就是對自己的一種肯定,是對自己前面一段時間學(xué)習(xí)C綜合水平的一個檢閱.當(dāng)然完成后的興喜,只有經(jīng)歷過了才能體會到,而我體會到了. C語言課程設(shè)計是培養(yǎng)學(xué)生綜合運用所學(xué)知識,發(fā)現(xiàn),提出,分析和解決實際問題,鍛煉實踐能力的重要環(huán)節(jié),是對學(xué)生實際工作能力的具體訓(xùn)練和考察過程.隨著科學(xué)技術(shù)發(fā)展的日新日異,當(dāng)今計算機應(yīng)用在生活中可以說得是無處不在。因此作為二十一世紀(jì)的大學(xué)來說掌握計算機開發(fā)技術(shù)是十分重要的。 從拿到題目到完成整個編程,從理論到實踐,在整整一個星期的日子里,可以學(xué)到很多很多的的東西,同時不僅可以鞏固了以前所學(xué)過的知識,而且學(xué)到了很多在書本上所沒有學(xué)到過的知識。通過這次課程設(shè)計使我懂得了理論與實際相結(jié)合是很重要的,只有理論知識是遠遠不夠的,只有把所學(xué)的理論知識與實踐相結(jié)合起來,從理論中得出結(jié)論,才能真正為社會服務(wù),從而提高自己的實際動手能力和獨立思考的能力。在設(shè)計的過程中遇到問題,可以說得是困難重重,這畢竟第一次做的,難免會遇到過各種各樣的問題,同時在設(shè)計的過程中發(fā)現(xiàn)了自己的不足之處,對以前所學(xué)過的知識理解得不夠深刻,掌握得不夠牢固,比如說結(jié)構(gòu)體……通過這次課程設(shè)計之后,一定把以前所學(xué)過的知識重新溫故。 這次課程設(shè)計我最要感謝的就是我們的幾位指導(dǎo)老師,老師們每天都不辭勞苦為我們服務(wù),不管我們有什么問題,他們都耐心的為我們解答,我們有什么錯誤他們都積極給我們指正出來,雖然有時也批評一下,但這對我們是有很大幫助的,有這么多優(yōu)秀的指導(dǎo)老師,我想我以后的學(xué)習(xí)會更上一層樓。 附錄A 源代碼 # include- 1.請仔細閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點此認領(lǐng)!既往收益都歸您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該PPT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 學(xué)生 成績管理系統(tǒng) 報告 文檔
鏈接地址:http://www.820124.com/p-6483305.html