版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、目錄問題描述1二、根本要求1三、系統(tǒng)分析和設(shè)計2四、結(jié)構(gòu)圖2五、流程圖2六、源程序代碼6七、測試數(shù)據(jù)8八、軟件說明11九、小結(jié)與體會11十、參考資料11C語言課程設(shè)計實驗報告一、問題描述編輯一個學(xué)生成績統(tǒng)計軟件二、根本要求1每條記錄由學(xué)號、姓名、假設(shè)干門課程的成績組成;2能計算每個學(xué)生的總分和平均分并顯示;3能按平均分統(tǒng)計各分?jǐn)?shù)段的人數(shù),并以分布圖顯示,如右圖所示.4在此根底上,可進(jìn)行文件操作.IIIIIIIIIIIIIIII60708090100三、系統(tǒng)分析和設(shè)計函數(shù)的設(shè)計,其最終目的是要實現(xiàn)所需要的功能.本例中,是用main函數(shù)調(diào)用兩個子函數(shù)來實現(xiàn)的!1)文件的建立:要想實現(xiàn)對學(xué)生成績的統(tǒng)
2、計,首先要建立一個文件用來存放學(xué)生信息,要用到FILE文件指針fp1=fopen(file1,w+)2)程序的設(shè)計:學(xué)生的信息放在結(jié)構(gòu)體數(shù)組structstudent_scoresN中.通過for循環(huán),調(diào)用子函數(shù)getdata,從鍵盤接收學(xué)生信息(num,name,score0,score1,score2,score3D,并計算總分與平均分,返回學(xué)生信息returnst到調(diào)用處.用fprintf函數(shù)向文件中逐一寫入學(xué)生的信息,通過rewend(fp1)函數(shù)使文件指針回到文件頭,用fscanf讀學(xué)生信息,并顯示在屏幕上.同時根據(jù)所讀學(xué)生信息,統(tǒng)計各分?jǐn)?shù)段的人數(shù)s1+,s2+,s3+,s4+,s5
3、+然后調(diào)用一個子函數(shù)putsgraph用來輸出圖表!四、結(jié)構(gòu)圖主函數(shù)五、流程圖開始#defineN5#include1#includ1structstudent_scoresNfp1=fopen(file1,w+)調(diào)用putsgraph(s1,s2,s3,s4,s5);printf學(xué)生num,name,total,aver.并用s1+,s2+,s3+,s4+,s5+.統(tǒng)計各分?jǐn)?shù)段人數(shù)六、源程序代碼#defineN8#include#includestructstudent_score(longnum;charname20;floatscore4;floattotal;floataver;sN;
4、voidmain()(FILE*fp1;structstudent_scoregetdata(structstudent_scorest,intx);intputsgraph(intsa,intsb,intsc,intsd,intse);inti,s1=0,s2=0,s3=0,s4=0,s5=0;if(fp1=fopen(file1,w+)尸NULL)printf(cannotopenfile%sn,fp1);exit(0);for(i=0;iN;i+)si=getdata(si,i);for(i=0;iN;i+)fprintf(fp1,%-9ld%-10s%10.1f%10.1f%10.1f
5、%10.1f%10.1f%10.1fn,si.num,,si.score0,si.score1,si.score2,si.score3,si.total,si.aver);rewind(fp1);longnum;charname20;floate,f,g,h,total,aver;for(i=0;iN;i+)fscanf(fp1,%ld%s%f%f%f%f%f%fn,&num,name,&e,&f,&g,&h,&total,&aver);printf(%-9ld%-20s%10.1f%10.1fn,num,name,total,aver);if(aver60)s1+;elseif
6、(aver70)s2+;elseif(aver80)s3+;elseif(aver90)s4+;elseif(aver=100)s5+;fclose(fp1);putsgraph(s1,s2,s3,s4,s5);)structstudent_scoregetdata(structstudent_scorest,intx)(一一inty;printf(nEnterstudent%dsnum:n,x+1);scanf(%ld,&st.num);getchar();printf(nEntername:n);gets();st.total=0;printf(nEnter4scores:n
7、);for(y=0;y4;y+)(scanf(%f,&st.scorey);getchar();st.total+=st.scorey;)st.aver=st.total/4;returnst;)intputsgraph(intsa,intsb,intsc,intsd,intse)(inti,j;chargraph1680;for(i=0;i16;i+)(for(j=0;j79;j+)graphij=;graphi79=0;)for(j=0;j79;j+)graph11j=-;graph0j=-;graph15j=-;)for(j=3;j=15;j+=4)graph12j=;graph12j+
8、2=0;graph124=6;graph128=7;graph1212=8;graph1216=9;graph1219=(10-sa);i-)graphi4=I;for(i=10;i(10-sb);i-)graphi8=I;for(i=10;i(10-sc);i-)graphi12=I;for(i=10;i(10-sd);i-)graphi16=I;for(i=10;i(10-se);i-)graphi22=I;for(i=0;i16;i+)puts(graphi);七、測試數(shù)據(jù)七軟件說明本程序采用宏定義方式定義學(xué)生人數(shù),增加程序的通用性,文件的路徑為fp1=fopen(file1,w+),當(dāng)運(yùn)行結(jié)束后,可在dos狀態(tài)下,本程序根本實現(xiàn)了要求的內(nèi)容:能計算每個學(xué)生的總分和平均成績,能按平均分統(tǒng)計各分?jǐn)?shù)段的學(xué)生人數(shù),并以分布圖顯示,在此根底上可以進(jìn)行文件操作.八小結(jié)與體會此次課程設(shè)計,初步鍛煉了我運(yùn)用所學(xué)根底知識解決實際問題的水平,掌握軟件開發(fā)的根本過程和根本方法,培養(yǎng)在軟件開發(fā)中相互合作的團(tuán)隊意識.通過此次課程設(shè)計,我對C語言有了更深入的了解,同時也促進(jìn)了我對書本知識的深入學(xué)習(xí),在設(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年高職俄語(俄語會話)試題及答案
- 2025年大學(xué)大四(護(hù)理學(xué))婦產(chǎn)科護(hù)理學(xué)基礎(chǔ)測試題及答案
- 2025年中職汽車美容(汽車美容技術(shù))試題及答案
- 中學(xué)教師安全培訓(xùn)課件
- 運(yùn)行休息室管理制度
- 會議資料保密與安全管理制度
- 工資分配培訓(xùn)
- 2026年施工升降機(jī)安裝維修工防墜安全器校驗測試含答案
- 2026年北京保安證試題及詳細(xì)答案解析
- 2026年理財規(guī)劃基礎(chǔ)認(rèn)證考題含答案
- 2026屆四川省成都市青羊區(qū)樹德實驗中學(xué)物理九年級第一學(xué)期期末考試試題含解析
- 高溫熔融金屬冶煉安全知識培訓(xùn)課
- 林業(yè)種苗培育與管理技術(shù)規(guī)范
- 遼寧中考數(shù)學(xué)三年(2023-2025)真題分類匯編:專題06 幾何與二次函數(shù)壓軸題 解析版
- 修復(fù)征信服務(wù)合同范本
- 2025年及未來5年中國鈉基膨潤土市場深度評估及行業(yè)投資前景咨詢報告
- 康復(fù)醫(yī)學(xué)科進(jìn)修匯報
- 患者身份識別管理標(biāo)準(zhǔn)WST840-2025學(xué)習(xí)解讀課件
- 東航客服面試題目及答案
- 醫(yī)院醫(yī)療質(zhì)量分析會
- 酒吧廚房小吃承包協(xié)議書
評論
0/150
提交評論