影音先锋男人资源在线观看,精品国产日韩亚洲一区91,中文字幕日韩国产,2018av男人天堂,青青伊人精品,久久久久久久综合日本亚洲,国产日韩欧美一区二区三区在线

C語言課程設(shè)計報告-- 學(xué)生成績統(tǒng)計系統(tǒng)

上傳人:dus****log 文檔編號:125951836 上傳時間:2022-07-27 格式:DOC 頁數(shù):15 大小:840KB
收藏 版權(quán)申訴 舉報 下載
C語言課程設(shè)計報告-- 學(xué)生成績統(tǒng)計系統(tǒng)_第1頁
第1頁 / 共15頁
C語言課程設(shè)計報告-- 學(xué)生成績統(tǒng)計系統(tǒng)_第2頁
第2頁 / 共15頁
C語言課程設(shè)計報告-- 學(xué)生成績統(tǒng)計系統(tǒng)_第3頁
第3頁 / 共15頁

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

8 積分

下載資源

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

資源描述:

《C語言課程設(shè)計報告-- 學(xué)生成績統(tǒng)計系統(tǒng)》由會員分享,可在線閱讀,更多相關(guān)《C語言課程設(shè)計報告-- 學(xué)生成績統(tǒng)計系統(tǒng)(15頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、 / C語言課程設(shè)計書 設(shè)計題目: 學(xué)生成績統(tǒng)計系統(tǒng) 課程名稱: C語言課程設(shè)計 學(xué) 院 :物理與光電工程學(xué)院 專業(yè)班級: 電子科學(xué)與技術(shù)(1)班 學(xué) 號 : 3111008376 姓 名 : 何燦豪

2、 聯(lián)系方式 : 任課教師 : 劉力斌 2013 年 11月 10日 目錄 設(shè)計目的 ··················· 2 任務(wù)要求 ··················· 2 總體設(shè)計 ··················· 2 部分程序 ·················· 4 調(diào)試分析過程 ·················

3、·· 9 課程設(shè)計總結(jié) ···················· 13 題目:學(xué)生成績統(tǒng)計 一、設(shè)計目的: (1)該課程設(shè)計要求學(xué)生既動手又動腦,自學(xué),查資料,獨立實踐。將上學(xué)期課本上的理論知識和實際有機的結(jié)合起來,鍛煉學(xué)生實際分析問題和解決問題的能力,提高學(xué)生適應(yīng)實際、實踐編(程的能力,使對C語言系統(tǒng)編程有一個大致的了解。 (2)C語言的實踐。掌握C語言函數(shù)的定義方法,函數(shù)的聲明及函數(shù)的調(diào)用過程。掌握結(jié)構(gòu)體類型變量的定義和使用,綜合應(yīng)用C語言的知識,實現(xiàn)一個完整的系統(tǒng),提高編程能力,體會軟件程序的開發(fā)過程。 二、任務(wù)要求:

4、 假設(shè)某班有:30人(姓名自定) 考試課程有:高等數(shù)學(xué)、物理、外語、C語言、德育5門課程。 將所有同學(xué)的成績保留在文件中,對文件中的數(shù)據(jù)處理,輸出所要求的內(nèi)容, 程序的功能主要包括3方面: ① 輸入成績到文件中 ② 輸出成績 ③ 輸出不及格學(xué)生名單 ④ 成績排序 ⑤ 修改記錄 ⑥ 刪除記錄 ⑦ 插入記錄等 主函數(shù)中對3個功能選擇(菜單),調(diào)用對應(yīng)的函數(shù)完成。 三、總體設(shè)計: (1)程序設(shè)計組成框圖 1.按班級輸出學(xué)生成績單

5、 2.按姓名查詢 學(xué)生成績管理系統(tǒng) 3.增加學(xué)生 4.刪除學(xué)生 5.按班級修改學(xué)生成績 6.保存所有學(xué)生信息

6、 7.顯示不及格學(xué)生成績 8.按平均成績排序并輸出成績 9.退出 (2)模塊功能說明 1 輸出功能:顯示全部學(xué)生的記錄。 2 查詢功能:輸入姓名可以查詢學(xué)生的詳細信息。 3 增加功能:增加新學(xué)生的信息。 4 刪除功能:刪除學(xué)生信息。 5 修改功能:修改學(xué)生的錯誤信息。 6

7、 保存功能:保存已輸入信息。 7讀取功能:讀取已輸入信息。 8顯示功能:按照所需要的要求顯示學(xué)生記錄。 9 排序功能:按照要求完成對學(xué)生信息的排序。 10 退出系統(tǒng)。 (3)程序流程圖 開始 學(xué)生成績單 結(jié)束 輸入數(shù)字 平均分排序 不及格名單 保存信息 增加學(xué)生 退出 按班修改 按姓名查詢 刪除學(xué)生 四、部分程序代碼如下: (1) 該函數(shù)功能:從文件中讀學(xué)生信息到鏈表中 void ReadInf

8、oFormFile(void) { FILE *fp; STUDENT *p; fp=fopen("student.txt","r"); if(!fp) { printf("文件不存在\n"); return; } p=MallocNode(); while(fscanf(fp,"%s%s%s%f%f%f%f%f",p->studentNumber,p->studentName,p->className, &(p->mark1),&(p->mark2),&(p->mark3),&(p->mark4),&(p->mark5))>0) { InsertOneNode(p

9、); p=MallocNode(); } fclose(fp); } (2)該函數(shù)功能:顯示菜單,根據(jù)用戶的輸入的數(shù)字 完成對應(yīng)的功能 void DesplayMenu(void) { STUDENT *p; printf("\t\t=========歡迎來到學(xué)生成績管理系統(tǒng)================\n"); printf("\t\t\t-------請選擇相應(yīng)功能------------\n"); printf("\t\t|************************************************|\n"); printf("

10、\t\t|------------- 1 按班級輸出學(xué)生成績單 -----------|\n"); printf("\t\t|------------- 2 按姓名查詢----------------------|\n"); printf("\t\t|------------- 3 增加學(xué)生 -----------------------|\n"); printf("\t\t|------------- 4 刪除學(xué)生 -----------------------|\n"); printf("\t\t|------------- 5 按班級修改學(xué)生成績 -------------|\n

11、"); printf("\t\t|------------- 6 保存所有學(xué)生信息 ---------------|\n"); printf("\t\t|------------- 7 顯示不及格學(xué)生名單--------------|\n"); printf("\t\t|------------- 8 按平均成績排序并輸出成績--------|\n"); printf("\t\t|------------- 9 退出 --------------------------|\n"); printf("\t\t|**************************************

12、**********|\n"); printf("\t\t\t\t\t\t制作者:何燦豪\n"); printf("\t\t\t\t\t\t制作時間:2013年11月10號\n"); scanf("%d",&choose);/*取得用戶的選擇*/ switch(choose) { case 1: OutputInformation();/*顯示所有學(xué)生的信息*/ break; case 2: DesplayInfoBystudentName(); break; case 3: p=MallocNode();/*先申請一個新結(jié)點*/ GetInformation(

13、p);/*要求用戶輸入信息到新結(jié)點中*/ InsertOneNode(p);/*將新結(jié)點加到鏈表中*/ break; case 4: DeleteNodeBystudentNumber();/*根據(jù)用戶輸入的學(xué)號刪除該學(xué)生*/ break; case 5: ChangeMarkByName();/*根據(jù)用戶輸入的姓名修改學(xué)生成績*/ break; case 6: SaveLinkToFile();/*保存數(shù)據(jù)*/ break; case 7: DesplayMarkSegment();/*顯示不及格的學(xué)生成績*/ break; case 8: Composito

14、rByTotalMark();/*按平均成績排序*/ break; case 9: SaveLinkToFile();/*保存數(shù)據(jù)后再退出*/ free(headLink); exit(1); break; default: break; } DesplayMenu();/*遞歸調(diào)用*/ } (3)函數(shù)功能:根據(jù)用戶輸入的學(xué)號刪除該學(xué)生 void DeleteNodeBystudentNumber(void) { char studentNumber[10]; STUDENT *p,*q; char flag=0; printf("請輸入要刪除的學(xué)生

15、學(xué)號:"); scanf("%s",studentNumber); p=headLink; q=headLink->next; while(q) { if(strcmp(q->studentNumber,studentNumber)==0) { p->next=q->next; free(q); flag=1; break; } p=p->next; q=q->next; } if(!flag) { printf("不存在該學(xué)號的學(xué)生\n"); return; } printf("成功刪除\n"); } (4)該函數(shù)功能是:保存鏈表

16、數(shù)據(jù)到文件中 void SaveLinkToFile(void) { STUDENT *p; FILE *fp; p=headLink->next; if(p==NULL) { printf("現(xiàn)在沒有學(xué)生信息,請先輸入學(xué)生信息\n\n"); return; } fp=fopen("student.txt","w+"); if(!fp) { printf("文件不存在\n"); return; } while(p) { fprintf(fp,"%s %s %s %f %f %f\n",p->studentNumber,p->studentName,p->c

17、lassName,p->mark1,p->mark2,p->mark3,p->mark4,p->mark5); p=p->next; } fclose(fp); } (5)函數(shù)功能:輸出不及格學(xué)生名單 void DesplayMarkSegment(void) { STUDENT *p; p=headLink->next; printf("不及格學(xué)生的名單有:\n"); while(p) { if((6>((int)(p->mark1/10)))||(6>((int)(p->mark2/10)))||(6>((int)(p->mark3/10)))|| (6>((

18、int)(p->mark4/10)))||(6>((int)(p->mark3/10))))/*只要有一科不及格就認為該生不及格*/ { printf("%s\n",p->studentName); } p=p->next; } } (6)該函數(shù)功能:按平均成績進行排序 void CompositorByTotalMark(void) { STUDENT exchange,*r,*p,*q; r=headLink->next; if(r==NULL) { printf("現(xiàn)在還沒學(xué)生信息,請先輸入學(xué)生信息\n"); return; } wh

19、ile(r)/*兩層while循環(huán)實現(xiàn)排序*/ { p=r; q=r->next; while(q) { if((q->mark1+q->mark2+q->mark3+q->mark4+q->mark5)>(p->mark1+p->mark2+p->mark3+p->mark4+p->mark5)) { strcpy(exchange.studentNumber,q->studentNumber);/*先復(fù)制q結(jié)點信息到exchange*/ strcpy(exchange.studentName,q->studentName); strcpy(exchange.classN

20、ame,q->className); exchange.mark1=q->mark1; exchange.mark2=q->mark2; exchange.mark3=q->mark3; exchange.mark4=q->mark4; exchange.mark5=q->mark5; strcpy(q->studentNumber,p->studentNumber);/*再復(fù)制p結(jié)點信息到q*/ strcpy(q->studentName,p->studentName); strcpy(q->className,p->className); q->mark1=p->ma

21、rk1; q->mark2=p->mark3; q->mark3=p->mark3; q->mark4=p->mark4; q->mark5=p->mark5; strcpy(p->studentNumber,exchange.studentNumber);/*最后復(fù)制exchange結(jié)點信息到p*/ strcpy(p->studentName,exchange.studentName); strcpy(p->className,exchange.className); p->mark1=exchange.mark1; p->mark2=exchange.mark2; p-

22、>mark3=exchange.mark3; p->mark4=exchange.mark4; p->mark5=exchange.mark5; } q=q->next; } r=r->next; } OutputInformation(); } 五、調(diào)試分析過程: 界面: 增加學(xué)生: 輸出學(xué)生成績單: 按姓名查詢: 刪除學(xué)生: 輸出不及格的名單: 按平均成績排序輸出: 六、設(shè)計總結(jié): 通過這次的課程設(shè)計,讓我更加地對C語言有更深的了解,還有讓我發(fā)現(xiàn)了在結(jié)構(gòu)體和鏈表這方面的知識

23、要有待加強。第一次編程這么多的程序,說實話真的有點難度,但是通過后面慢慢的看書,一點點地去解決問題。在編寫程序是一定要注意細節(jié)的問題,因為一個小小錯誤會導(dǎo)致整個程序不能運行,例如分號一定要加,否則在編譯的時候會出現(xiàn)錯誤,當(dāng)然它會提示哪里有錯誤的,這種小錯誤最好能避免。一開始調(diào)試的時候出現(xiàn)了幾十條錯誤的記錄,其中包括小錯誤的,但是,只要慢慢的檢查的話,程序就會趨向完善,最后程序就會運行的。C語言是計算機編程語言中最基礎(chǔ)的語言,務(wù)必要熟練掌握。所以在以后的練習(xí)中,一定要多多寫這樣的程序,這樣的話才能提高編程的能力。經(jīng)過一周的編程實習(xí),并在后一段的報告總結(jié),我對C語言這門科有新的認識,本人實在是獲益不淺!要想編寫一個準(zhǔn)確、高效并有使用價值的程序,一定先要對課本知識熟悉,還要掌握必要的上機操作能力,寫程序其實很容易而關(guān)鍵在于調(diào)試程序。這次設(shè)計,讓我重新掌握了C語言,而且還得到了用C語言解決實際問題的寶貴經(jīng)驗。 13

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

相關(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),我們立即給予刪除!