版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 目 錄</b></p><p><b> 1 需求分析1</b></p><p> 1.1問題描述1</p><p> 1.2輸入數(shù)據(jù)要求1</p><p> 1.3輸出數(shù)據(jù)要求1</p><p> 1.4開發(fā)環(huán)境和工具
2、1</p><p> 1.5成員分工1</p><p><b> 2總體設(shè)計(jì)2</b></p><p> 2.1總體設(shè)計(jì)思路2</p><p> 2.2模塊結(jié)構(gòu)圖4</p><p> 2.3模塊說明5</p><p><b> 3詳
3、細(xì)設(shè)計(jì)5</b></p><p> 3.1數(shù)據(jù)類型定義5</p><p> 3.2修改模塊實(shí)現(xiàn)方法10</p><p> 3.3查詢模塊實(shí)現(xiàn)方法12</p><p> 4測(cè)試結(jié)果及分析18</p><p><b> 5總結(jié)19</b></p>
4、<p><b> 參考文獻(xiàn)21</b></p><p> 附錄………………………………………………………………………………………… 21</p><p><b> 1 需求分析</b></p><p><b> 問題描述</b></p><p><b
5、> 1.1數(shù)據(jù)需求</b></p><p> 成績表信息:學(xué)號(hào),班級(jí),姓名,語文,數(shù)學(xué),英語</p><p> 成績信息存放在文件中,以學(xué)號(hào)的先后順序存放</p><p><b> 1.2處理需求</b></p><p> ?。?)打開:顯示文件中的所有成績記錄,提供分頁顯示</p>
6、<p> (2)保存:將成績表的更新結(jié)果存入文件</p><p> ?。?)更新:可插入、刪除、修改各科目成績</p><p> ?。?)查找:按學(xué)號(hào),姓名、班級(jí)</p><p> ?。?)統(tǒng)計(jì):求每門課程的平均分,求每個(gè)學(xué)生的平均分</p><p> (6)排序:按學(xué)號(hào),某課程的分?jǐn)?shù),各人的平均分</p>&
7、lt;p><b> 1.3其它要求</b></p><p> ?。?)提供菜單選擇以上功能</p><p> ?。?)自學(xué):文件的讀寫,清屏函數(shù)</p><p> 1.4開發(fā)環(huán)境和工具</p><p> 開發(fā)環(huán)境:Windows 2000</p><p> 開發(fā)工具:Visual C
8、++ 6.0</p><p><b> 1.5成員分工:</b></p><p> 蜘蛛俠:總體設(shè)計(jì)、查詢模塊、排序模塊、……</p><p> 超 人:系統(tǒng)測(cè)試、主調(diào)模塊、更新模塊、……</p><p><b> 2 總體設(shè)計(jì)</b></p><p><
9、b> 2.1總體設(shè)計(jì)思路</b></p><p> 1.設(shè)計(jì)思路(功能模塊)</p><p><b> 1顯示成績</b></p><p><b> 2增加成績</b></p><p><b> 3修改成績</b></p><p&
10、gt;<b> 4刪除</b></p><p><b> 5姓名查找</b></p><p><b> 6學(xué)號(hào)查找</b></p><p><b> 7排序</b></p><p><b> A學(xué)號(hào)</b></p>
11、;<p><b> B語文</b></p><p><b> C英語</b></p><p><b> D數(shù)學(xué)</b></p><p><b> E平均</b></p><p><b> 8語文平均</b>&l
12、t;/p><p><b> 9數(shù)學(xué)平均</b></p><p><b> 10英語平均</b></p><p><b> 11退出</b></p><p><b> 2.數(shù)據(jù)儲(chǔ)存</b></p><p><b> 文
13、件存儲(chǔ)</b></p><p> 文件的儲(chǔ)存是通過對(duì)兩個(gè)函數(shù)的調(diào)用來實(shí)現(xiàn)的:</p><p> 1 IO_ReadInfo即學(xué)生信息從文件中讀取。</p><p> 2 IO_WriteInfo即將學(xué)生信息寫入文件。</p><p><b> 2.2模塊結(jié)構(gòu)圖</b></p><p
14、><b> 2.3 模塊說明</b></p><p> 1顯示成績模塊:A顯示全部學(xué)生成績信息(void Student_Display())包括:"姓名","語文成績","數(shù)學(xué)成績","英語成績","平均成績"。</p><p> B顯示主界面void h
15、omepage()</p><p> 2刪除學(xué)生成績模塊:用void Student_Delete()來實(shí)現(xiàn)。</p><p> 3平均成績模塊:例如求語文成績的平均分,具體用float Chinese_Average(struct Student students[])來實(shí)現(xiàn)。</p><p> 4查詢學(xué)生信息請(qǐng)模塊:void Student_SelectB
16、yName()</p><p><b> 3.詳細(xì)設(shè)計(jì)</b></p><p><b> 3.1數(shù)據(jù)類型定義</b></p><p><b> 3.2模塊實(shí)現(xiàn)</b></p><p><b> 1.算法思想</b></p><p
17、> 設(shè)計(jì)一個(gè)主函數(shù)(main),定義一些功能子模塊函數(shù),在主函數(shù)中調(diào) 用主頁(homepage)函數(shù),然后在主頁函數(shù)中通過對(duì)各個(gè)子模塊的函數(shù)的調(diào)用實(shí)現(xiàn)各功能。外加一個(gè)登陸函數(shù)(denglu)設(shè)置用戶名和密碼和一個(gè)等待函數(shù)(waiting);在主函數(shù)末尾調(diào)用文件的讀入和寫入函數(shù)實(shí)現(xiàn)對(duì)操作的保存。1,顯示模塊定義一函數(shù)對(duì)結(jié)構(gòu)體數(shù)組中的成員輸出。2定義求語文成績平均分函數(shù),對(duì)結(jié)構(gòu)體數(shù)組中的成員Chinese求和,然后除以存儲(chǔ)學(xué)生數(shù)得
18、平均分。數(shù)學(xué),英語類似。3刪除學(xué)生成績,通過對(duì)類似與線性表的操作,將后一成員覆蓋到前一成員。4查找,姓名返回?cái)?shù)組下標(biāo)查找。</p><p><b> 2具體實(shí)現(xiàn)</b></p><p><b> 1顯示學(xué)生成績</b></p><p> void Student_Display() /*定義顯示全部學(xué)生信息函
19、數(shù)*/ </p><p><b> { </b></p><p><b> int i; </b></p><p> printf("%10s%10s%10s%10s%10s%10s%10s\n","學(xué)號(hào)","班級(jí)",</p><p>
20、; "姓名","語文成績","數(shù)學(xué)成績","英語成績","平均成績"); </p><p> printf(" -----------------------------------------"); </p><p> printf("-------
21、-----------------------\n");</p><p> for (i=0;i<num;i++) </p><p><b> { </b></p><p> printf("%10d%10s%10s%10.2f%10.2f%10.2f%10.2f\n",</p><
22、p> students[i].Number,students[i].Class,students[i].Name, </p><p> students[i].Chinese,students[i].Math,students[i].English,</p><p> students[i].Average);</p><p><b> }
23、</b></p><p><b> getch();</b></p><p> waiting();</p><p> homepage();</p><p><b> }</b></p><p><b> 2學(xué)生平均成績</b>&
24、lt;/p><p> float Chinese_Average(struct Student students[]) /*定義求語文成績平均分函數(shù)*/</p><p><b> {</b></p><p> int i;float sum=0.0;</p><p> for(i=0;i<num;i++)<
25、;/p><p> sum=sum+students[i].Chinese;</p><p> return (sum/num);}</p><p> float Math_Average(struct Student students[]) /*定義求數(shù)學(xué)成績平均分函數(shù)*/</p><p><b> {</b><
26、;/p><p> int i;float sum=0.0;</p><p> for(i=0;i<num;i++)</p><p> sum=sum+students[i].Math;</p><p> return (sum/num);}</p><p> float English_Average(st
27、ruct Student studens[]) /*定義求英語成績平均分函數(shù)*/</p><p><b> {</b></p><p> int i;float sum=0.0;</p><p> for(i=0;i<num;i++)</p><p> sum=sum+students[i].English
28、;</p><p> return (sum/num);}</p><p><b> 3刪</b></p><p><b> 3刪除學(xué)生成績</b></p><p> void Student_Delete() /*定義刪除學(xué)生信息函數(shù)*/ </p><p>
29、<b> { </b></p><p><b> int i; </b></p><p><b> while(1) </b></p><p><b> { </b></p><p> int number; </p><p&
30、gt; int index; </p><p> printf("請(qǐng)輸入要?jiǎng)h除的學(xué)生的學(xué)號(hào):"); </p><p> scanf("%d",&number); </p><p> getchar(); </p><p> index=Student_SearchByIndex(num
31、ber); /*調(diào)用通過學(xué)號(hào)返回?cái)?shù)組下標(biāo)函數(shù)*/</p><p> if (index==-1) </p><p><b> { </b></p><p> printf("沒有該學(xué)生的信息!\n"); </p><p><b> } </b></p>
32、<p><b> else </b></p><p><b> { </b></p><p> printf("你要?jiǎng)h除的學(xué)生信息為:\n"); </p><p> Student_DisplaySingle(index); /*調(diào)用顯示單條學(xué)生信息函數(shù)*/</p>
33、<p> printf("是否真的要?jiǎng)h除?(y/n)"); </p><p> if (getchar()=='y') </p><p><b> { </b></p><p> for (i=index;i<num-1;i++) </p><p><
34、b> { </b></p><p> students[i]=students[i+1]; </p><p><b> } </b></p><p><b> num--; </b></p><p><b> } </b></p>&l
35、t;p> getchar(); </p><p><b> } </b></p><p> printf("還要?jiǎng)h除其他同學(xué)的信息嗎?(y/n)");</p><p> IO_WriteInfo();</p><p> if (getchar()=='n') </
36、p><p><b> { </b></p><p> waiting();</p><p> homepage();</p><p><b> break;</b></p><p><b> } </b></p><p>&
37、lt;b> } </b></p><p><b> } </b></p><p><b> 4查詢信息模塊</b></p><p> void Student_SelectByName() /*定義按姓名查詢學(xué)生信息函數(shù)*/ </p><p><b> {
38、 </b></p><p><b> while(1) </b></p><p><b> { </b></p><p> char name[20]; </p><p> int index; </p><p> printf("請(qǐng)輸入要查詢
39、的學(xué)生的姓名:"); </p><p> scanf("%s",&name); </p><p> getchar(); </p><p> index=Student_SearchByName(name); /*調(diào)用按姓名返回?cái)?shù)組下標(biāo)函數(shù)*/ </p><p> if (index==-1
40、) </p><p><b> { </b></p><p> printf("該學(xué)生的信息不存在!\n"); </p><p><b> } </b></p><p><b> else </b></p><p><b
41、> { </b></p><p> printf("你要查詢的學(xué)生信息為:\n"); </p><p> Student_DisplaySingle(index); /*調(diào)用顯示單條學(xué)生信息函數(shù)*/</p><p><b> } </b></p><p> pri
42、ntf("還要查詢其他同學(xué)的信息嗎?(y/n)"); </p><p> if (getchar()=='n') </p><p> { waiting();</p><p> homepage();</p><p><b> break; </b></p>&l
43、t;p><b> } </b></p><p><b> } </b></p><p><b> } </b></p><p> void Student_SelectByNumber() /*定義按學(xué)號(hào)查詢學(xué)生信息函數(shù)*/</p><p><b>
44、; {while(1)</b></p><p> {int number;</p><p> int index;</p><p> printf("請(qǐng)輸入要查詢的學(xué)生的學(xué)號(hào):");</p><p> scanf("%d",&number);</p><
45、p> getchar();</p><p> index=Student_SearchByIndex(number); /*調(diào)用按學(xué)號(hào)返回?cái)?shù)組下標(biāo)函數(shù)*/</p><p> if(index==-1)</p><p> {printf("該學(xué)生的信息不存在!\n");</p><p><b>
46、 } </b></p><p><b> else </b></p><p> {printf("你要查詢的學(xué)生信息為:\n");</p><p> Student_DisplaySingle(index); /*調(diào)用顯示單條學(xué)生信息函數(shù)*/</p><p><b&g
47、t; }</b></p><p> printf("還要查詢其他同學(xué)的信息嗎?(y/n)");</p><p> if(getchar()=='n')</p><p> { waiting();</p><p> homepage();</p><p><
48、b> break;</b></p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> 4.測(cè)試結(jié)果及結(jié)果分析</p><p> 通過對(duì)程序的測(cè)試,所有
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 成績管理系統(tǒng)課程設(shè)計(jì)
- 成績管理系統(tǒng)課程設(shè)計(jì)
- 課程設(shè)計(jì)---考務(wù)成績管理系統(tǒng)
- 課程設(shè)計(jì)-- 班級(jí)成績管理系統(tǒng)
- 成績管理分析系統(tǒng)課程設(shè)計(jì)
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)
- php成績管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 課程設(shè)計(jì)——學(xué)生成績管理系統(tǒng)
- 課程設(shè)計(jì)---學(xué)生成績管理系統(tǒng)
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)
- vf課程設(shè)計(jì)---高校成績管理系統(tǒng)
- c語言課程設(shè)計(jì)-成績管理系統(tǒng)
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)
- 學(xué)生成績管理系統(tǒng) 課程設(shè)計(jì)
- 課程設(shè)計(jì)--學(xué)生成績管理系統(tǒng)
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)
- 課程設(shè)計(jì)-- 學(xué)生成績管理系統(tǒng)
- 學(xué)生成績管理系統(tǒng)課程設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論