學(xué)生信息管理系統(tǒng) .doc

上傳人:小** 文檔編號:23331368 上傳時間:2021-06-07 格式:DOC 頁數(shù):20 大?。?21.50KB
收藏 版權(quán)申訴 舉報 下載
學(xué)生信息管理系統(tǒng) .doc_第1頁
第1頁 / 共20頁
學(xué)生信息管理系統(tǒng) .doc_第2頁
第2頁 / 共20頁
學(xué)生信息管理系統(tǒng) .doc_第3頁
第3頁 / 共20頁

下載文檔到電腦,查找使用更方便

5 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《學(xué)生信息管理系統(tǒng) .doc》由會員分享,可在線閱讀,更多相關(guān)《學(xué)生信息管理系統(tǒng) .doc(20頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、滁州學(xué)院 課程設(shè)計報告 課程名稱: 數(shù)據(jù)結(jié)構(gòu) 設(shè)計題目: 學(xué)生成績信息管理系統(tǒng) 系 別: 計算機科學(xué)與技術(shù) 專 業(yè): 計算機科學(xué)與技術(shù) 組 別: 第十組 起止日期: 11年5 月 20日 ~ 11年 6 月25日 指導(dǎo)

2、教師: 楊斌 計算機科學(xué)與技術(shù)系二○一一年制 課程設(shè)計題目 學(xué)生成績管理系統(tǒng) 組長 孫大成 學(xué)號 2010211119 班級 計科一班 系別 計算機科學(xué)與技術(shù) 專業(yè) 計算機科學(xué)與技術(shù) 組員 陳鳳霞 高山 陳世光 指導(dǎo)教師 楊斌 課程設(shè)計目的 方便用戶對學(xué)生成績的管理和查詢 課程設(shè)計所需環(huán)境 Microsoft Visual C++ 6.0 課程設(shè)計任務(wù)要求 應(yīng)用數(shù)據(jù)結(jié)構(gòu)的知識從文本中讀取數(shù)據(jù),設(shè)計算法,完成對學(xué)生

3、成績的管理和查詢 課程設(shè)計工作進度計劃 序號 起止日期 工 作 內(nèi) 容 分工情況 1 5/20~5/25 將學(xué)生的成績從文本文件中讀取出來,存入數(shù)組 陳鳳霞完成 2 5/25~5/30 運用選擇排序法對成績進行降序排列 陳世光完成 3 6/1~6/10 運用直接插入排序?qū)Τ煽冞M行升序排列 孫大成完成 4 6/10~6/15 對某個學(xué)生的成績進行查找操作 高山完成 5 6/15~6/20 對不及格學(xué)生的成績輸出到新建文檔中 高山完成 6 6/20 設(shè)計主函數(shù)中的循環(huán)算法,便于多次操作 孫大成完成 指導(dǎo)教師簽字:

4、 年 月 日 教研室審核意見: 教研室主任簽字: 年 月 日 課程設(shè)計任務(wù)書 18 目錄 ⒈引言 2 1.1、課程簡介 2 1.2、課程設(shè)計的背景 2 ⒉需求分析 2 2.1問題要求 2 2.2設(shè)計思路 3 2.3運行開發(fā)環(huán)境 3 ⒊概要設(shè)計 3 3.1流程圖 3 3.2 主要數(shù)據(jù)結(jié)構(gòu) 4 3.3 函數(shù)及其實現(xiàn)的功能 4 ⒋詳細設(shè)計 4 ⒌調(diào)試與操作說明 15 5.1、成績的合并后輸出 15 5.2、成績的降序輸出 15 5.3、不及格成績學(xué)生的信

5、息: 15 5.3成績的查詢 15 5.4、成績的不及格信息 16 5.5成績的文本中讀取 16 ⒍課程設(shè)計總結(jié)與體會 17 ⒎致謝 17 ⒏參考文獻 17 課程設(shè)計的主要內(nèi)容 ⒈引言 1.1、課程簡介 當今社會,計算機技術(shù)和通信技術(shù)已經(jīng)不斷發(fā)展,處理和傳輸?shù)臄?shù)據(jù)量越來越龐大。文本文件存儲的方式是普通人熟悉的數(shù)據(jù)管理的方式,我們要做的就是在文本中讀取數(shù)據(jù),在程序中處理數(shù)據(jù),生成新的數(shù)據(jù)再保留在文本文檔中,供其他人應(yīng)用。 1.2、課程設(shè)計的背景 課程設(shè)計是為了讓同學(xué)們了解學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)的作用和意義。數(shù)據(jù)結(jié)構(gòu)是計算機科學(xué)與技術(shù)專業(yè)的專業(yè)基礎(chǔ)課。所有的計算機系統(tǒng)軟件和應(yīng)用軟件

6、都要用到各種類型的數(shù)據(jù)結(jié)構(gòu)。因此,想要更好地運用計算機來解決實際問題,僅僅掌握幾門計算機程序設(shè)計語言是遠遠難以應(yīng)付當前眾多復(fù)雜的課題,想要有效地使用計算機,充分發(fā)揮它的性能,還必須學(xué)習(xí)和掌握好數(shù)據(jù)結(jié)構(gòu)的有關(guān)知識,打好數(shù)據(jù)結(jié)構(gòu)這門課的基礎(chǔ),對于學(xué)習(xí)計算機專業(yè)其它的課程,如操作系統(tǒng)、軟件工程、編譯原理、數(shù)據(jù)庫、人工智能等十分有益。 ⒉需求分析 2.1問題要求 現(xiàn)有學(xué)生成績信息文件1(1.txt),內(nèi)容如下 姓名 學(xué)號 語文 數(shù)學(xué) 英語 張明明 01 67 78 82 李成友 02 78 91 88 張輝燦

7、 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 陳道亮

8、 35 47 58 77 …. .. .. .(文件內(nèi)容可根據(jù)測試要求,自行制定) 試編寫一個管理系統(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)上述要求. 采用多種方法且算法正確者,可適當加分. 2.2設(shè)計思路 利用文件對學(xué)生成績等

9、基本信息進行保存,并將其中的兩文件合并成一個,生成新的文件;學(xué)生成績的分析,將應(yīng)補考的同學(xué)的基本信息保存在另一個文件中;利用合并進行降序。 2.3運行開發(fā)環(huán)境 運行環(huán)境 Microsoft Visual C++ 6.0;開發(fā)工具 C/C++ ⒊概要設(shè)計 3.1流程圖 課程設(shè)計中算法的函數(shù)模塊 學(xué)生信息的建立 void create(Data stu[]) 一些學(xué)生的信息的排序(合并排序) void hebing(Data stu[])//hebing paixu 補考同學(xué)信息的合并 void bukao(Data stu[]) 主函數(shù)的建立

10、 void main() 結(jié)束 圖3.1設(shè)計的流程圖 3.2 主要數(shù)據(jù)結(jié)構(gòu) 結(jié)構(gòu)如下表所述,建立包含系成績、學(xué)號、總分的信息存儲等 具體數(shù)據(jù)結(jié)構(gòu)定義如下: typedef struct data//建立結(jié)構(gòu)體數(shù)組 { char name[10]; int Xhao; int china; int math; int english; int sum; }Data; 3.3 函數(shù)及其實現(xiàn)的功能 利用文件對學(xué)生成績等基本信息進行保存,并將其中的兩文件合并成一個,生成新的文件;學(xué)生成績的分析,將應(yīng)補考的同學(xué)的基本信息保存在另一個文件中

11、;利用合并進行降序。 ⒋詳細設(shè)計 4.1程序設(shè)計源代碼 #include #include #include//為了輸入字符串 #include typedef struct data【1】 { char name[10]; int Xhao; int china; int math; int english; int sum; }Data; int k; ////////////////////////////////////////////////////////

12、/////////////////////// void create(Data stu[]) { int i=0; 【1】FILE *fp1,*fp2; if((fp1=fopen("E:\\c語言\\課程設(shè)計作業(yè)\\t1.txt","r"))==NULL) { printf("FILE not found!\n"); exit(0); } if((fp2=fopen("E:\\c語言\\課程設(shè)計作業(yè)\\t2.txt","r"))==NULL) { printf("FILE not found!\n"); exit(0); } while(

13、!feof(fp1)) { fscanf(fp1,"%s%d%d%d%d",stu[i].name,&stu[i].Xhao,&stu[i].china,&stu[i].math,&stu[i].english); stu[i].sum=stu[i].china+stu[i].math+stu[i].english; i++; }; i--; while(!feof(fp2)) { fscanf(fp2,"%s%d%d%d%d",stu[i].name,&stu[i].Xhao,&stu[i].china,&stu[i].ma

14、th,&stu[i].english); stu[i].sum=stu[i].china+stu[i].math+stu[i].english; i++; };i--;k=i; printf("學(xué)號 姓名 語文 數(shù)學(xué) 英語 總分\n"); for(int j=0;j

15、sum); } cout<

16、jj

17、("%d %-5s %d %d %d %d\n",stu[j].Xhao,stu[j].name,stu[j].china,stu[j].math,stu[j].english,stu[j].sum); } } ///////////////////////////////////// //2、直接插入排序 void hebing2(Data stu[]) { int t,i; Data temp; FILE *fp5; if((fp5=fopen("E:\\c語言\\課程設(shè)計作業(yè)\\t5.txt","w"))==NULL)

18、{ printf("FILE not found!\n"); exit(0); } for(i=2;i<=k;i++) { stu[0]=stu[i]; t=i-1; while(stu[t].sum > stu[0]) { stu[t+1]=stu[t]; t=t-1; } stu[t+1]= stu[0]; } for(int j=1;j<=k;j++) { fprintf(fp5,"%d %-5s %d %d %d %d\n",stu[j].Xhao,stu[j].

19、name,stu[j].china,stu[j].math,stu[j].english,stu[j].sum); printf("%d %-5s %d %d %d %d\n",stu[j].Xhao,stu[j].name,stu[j].china,stu[j].math,stu[j].english,stu[j].sum); } } /////////////////////////////////////////////////////////////////////////////// void bukao(Data stu[])

20、 { FILE *fp4; if((fp4=fopen("E:\\c語言\\課程設(shè)計作業(yè)\\t4.txt","w"))==NULL) { printf("FILE not found!\n"); exit(0); } for(int i=0;i

21、china); fprintf(fp4,"%s\n","語文不及格:"); printf("%s\n","語文不及格:"); } if(stu[i].math<60){ fprintf(fp4,"%d--%s---%d ",stu[i].Xhao,stu[i].name,stu[i].math); printf("%d--%s---%d ",stu[i].Xhao,stu[i].name,stu[i].math); fprintf(fp4,"%s\n","數(shù)學(xué)不及格:"); printf("%s\n","數(shù)學(xué)不及格:");

22、 } if(stu[i].english<60){ fprintf(fp4,"%d--%s---%d ",stu[i].Xhao,stu[i].name,stu[i].english); printf("%d--%s---%d ",stu[i].Xhao,stu[i].name,stu[i].english); fprintf(fp4,"%s\n","英語不及格:"); printf("%s\n","英語不及格:"); } } } ////////////////////////////////////////////////////

23、/////////////////////////// void search(Data stu[]) { int j,flag=0; char name[10]; printf("輸入一個學(xué)生的姓名:\n"); scanf("%s",name); fflush(stdin); for(int i=0;i

24、,stu[i].china,stu[i].math,stu[i].english,stu[i].sum); } } if(flag==0) cout<<"not found"<

25、<<" #******輸入“1”,降序排列成績******結(jié)果見文本文件t3******#"<

26、 void main() { int j=1; char ch; Data stu[20]; Data A[20]; prf(); cout<<"請輸入要執(zhí)行的步驟(以1,2,3,4,5,0 ):"<

27、<

28、 fflush(stdin); } } ⒌調(diào)試與操作說明 5.1、成績的合并后輸出 圖5.1成績的合并 5.2、成績的降序輸出 5.3、不及格成績學(xué)生的信息: 圖5.2成績的降序排序 5.3成績的查詢 圖5.3成績的查詢 5.4、成績的不及格信息 圖5.4成績的不及格學(xué)生信息 5.5成績的文本中讀取 在文本文件中查看上述操作的結(jié)果。 圖5.5文本文件降序成績 圖5.6文本文件補

29、考信息 ⒍課程設(shè)計總結(jié)與體會 在課程設(shè)計中,我們組的成員分工合作。他們每個人遇到過不同程度的問題都會想著去解決去實現(xiàn),當一個人解決不了的時候,團隊的優(yōu)越性就體現(xiàn)出來了。我們一起探討,研究終于完成了這次的課程設(shè)計,雖然這只是一個小的程序,沒有牽涉到什么外圍的人力和物理資源。但是我們多少了解做課程設(shè)計的精髓,為以后的學(xué)術(shù)報告做好鋪墊。 ⒎致謝 感謝本組全體成員的努力以及老師們和同學(xué)們的幫助,其中有《數(shù)據(jù)結(jié)構(gòu)》老師楊斌和《C語言程序設(shè)計》老師趙瑞斌等。 ⒏參考文獻 [1] 何欽銘,顏輝.C語言程序設(shè)計[M].北京:高等教育出版社,2008. [2] 胡學(xué)剛.數(shù)據(jù)結(jié)構(gòu)(C語言版)[M].北京:高等教育出版社,2008 評語: 評閱教師簽名: 年 月 日 成 績

展開閱讀全文
溫馨提示:
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)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!