2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩40頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p>  學(xué)生成績(jī)管理信息系統(tǒng)設(shè)計(jì)與開(kāi)發(fā)</p><p><b>  1 概 述 </b></p><p>  1.1 課程設(shè)計(jì)背景</p><p>  當(dāng)今時(shí)代是飛速發(fā)展的信息時(shí)代。在各行各業(yè)中都離不開(kāi)信息處理,這正是計(jì)算機(jī)被廣泛應(yīng)用于信息管理系統(tǒng)的環(huán)境。使用計(jì)算機(jī)進(jìn)行信息控制,不僅提高了工作效率,而且大大的提高了其安全性。

2、尤其對(duì)于復(fù)雜的信息管理,計(jì)算機(jī)能夠充分發(fā)揮它的優(yōu)越性。</p><p>  管理信息系統(tǒng)是進(jìn)行信息的采集、存儲(chǔ)、加工、維護(hù)和使用的系統(tǒng)。它是隨著管理科學(xué)和技術(shù)科學(xué)的發(fā)展而形成的。學(xué)生成績(jī)管理系統(tǒng)是一個(gè)教育單位不可缺少的部分,它的內(nèi)容對(duì)于學(xué)校的決策者和管理者來(lái)說(shuō)都至關(guān)重要,所以學(xué)生成績(jī)管理系統(tǒng)應(yīng)該能夠?yàn)橛脩籼峁┏渥愕男畔⒑涂旖莸牟樵兪侄?。但一直以?lái)人們使用傳統(tǒng)人工的方式管理學(xué)生成績(jī),這種管理方式存在著效率低、保密性

3、差等諸多缺點(diǎn)同時(shí),在更新和維護(hù)時(shí)都會(huì)帶來(lái)不少困難。</p><p>  作為計(jì)算機(jī)應(yīng)用的一部分,使用計(jì)算機(jī)對(duì)學(xué)生成績(jī)信息進(jìn)行管理,具有著手工管理所無(wú)法比擬的優(yōu)點(diǎn),如檢索迅速、查找方便、可靠性高、存儲(chǔ)量大、保密性好、壽命長(zhǎng)、成本低等。這些優(yōu)點(diǎn)能夠極大地提高學(xué)生成績(jī)管理的效率,也是學(xué)??茖W(xué)化、正規(guī)化管理,與世界接軌的重要條件。因此,開(kāi)發(fā)這樣一套管理軟件是很有必要的。</p><p>  學(xué)生成

4、績(jī)管理系統(tǒng)提供了強(qiáng)大的學(xué)生成績(jī)管理功能,方便管理員對(duì)學(xué)生成績(jī)信息的創(chuàng)建、查詢、修改、刪除、查詢、匯總、統(tǒng)計(jì)、保存等操作,可使學(xué)院教職員工減輕工作壓力,比較系統(tǒng)地對(duì)教務(wù)、教學(xué)上的各項(xiàng)信息進(jìn)行管理,同時(shí),可以減少勞動(dòng)力的使用,加快查詢速度、加強(qiáng)管理。</p><p>  因此,本文將用Visual C++設(shè)計(jì)和開(kāi)發(fā)一個(gè)應(yīng)用程序—學(xué)生成績(jī)管理信息系統(tǒng),介紹了學(xué)生成績(jī)管理系統(tǒng)的實(shí)現(xiàn)過(guò)程:包括系統(tǒng)分析、 系統(tǒng)調(diào)查、 數(shù)據(jù)庫(kù)

5、設(shè)計(jì)、功能設(shè)計(jì)、系統(tǒng)物理配置方案、 系統(tǒng)實(shí)現(xiàn)、系統(tǒng)測(cè)試以及系統(tǒng)功能簡(jiǎn)介。</p><p>  1.2 課程設(shè)計(jì)目標(biāo)</p><p>  建立學(xué)生成績(jī)管理系統(tǒng),采用計(jì)算機(jī)對(duì)學(xué)生成績(jī)進(jìn)行管理,進(jìn)一步提高辦學(xué)效益和現(xiàn)代化水平。幫助廣大教師提高工作效率,實(shí)現(xiàn)學(xué)生成績(jī)維護(hù)工作流程的系統(tǒng)化、規(guī)范化和自動(dòng)化。為了使系統(tǒng)在學(xué)院的管理中發(fā)揮更大的作用,實(shí)現(xiàn)工作過(guò)程的計(jì)算機(jī)化,提高工作效率和工作質(zhì)量,現(xiàn)提出如

6、下的系統(tǒng)開(kāi)發(fā)目標(biāo):</p><p>  (1)方便管理員對(duì)學(xué)生成績(jī)信息的創(chuàng)建、查詢、修改、刪除、查詢、匯總、統(tǒng)計(jì)、保存等操作;</p><p> ?。?)提高學(xué)生管理次序,節(jié)約管理成績(jī),增強(qiáng)學(xué)生管理的安全性;</p><p> ?。?)系統(tǒng)應(yīng)具有實(shí)用性、可靠性和適用性,同時(shí)注意到先進(jìn)性;</p><p> ?。?)對(duì)各個(gè)數(shù)據(jù)庫(kù)進(jìn)行動(dòng)態(tài)管理,防

7、止混亂;</p><p>  (5)方便用戶的操作,盡量減少用戶的操作;</p><p><b>  2 系統(tǒng)需求分析</b></p><p><b>  2.1 系統(tǒng)調(diào)查</b></p><p>  21世紀(jì)以來(lái),人類經(jīng)濟(jì)高速發(fā)展,人們的生活發(fā)生了日新月異的變化,特別是計(jì)算機(jī)的應(yīng)用及普及到經(jīng)濟(jì)和社

8、會(huì)生活的各個(gè)領(lǐng)域,使原本的舊的管理方法越來(lái)越不適應(yīng)現(xiàn)在社會(huì)的發(fā)展,許多人還停留在以前的手工操作,這大大地阻礙了人類經(jīng)濟(jì)的發(fā)展。</p><p>  為了適應(yīng)現(xiàn)代社會(huì)人們高度強(qiáng)烈的時(shí)間觀念,學(xué)生成績(jī)管理系統(tǒng)軟件為教學(xué)帶來(lái)了極大的方便。該軟件是以漢語(yǔ)編程語(yǔ)言為實(shí)現(xiàn)語(yǔ)言,其功能在系統(tǒng)內(nèi)部有源代碼直接完成,通過(guò)操作手冊(cè),使用者可以了解本軟件的基本工作原理,操作人員只需輸入一些簡(jiǎn)單的漢字、數(shù)字,即可達(dá)到自己的目標(biāo)。<

9、/p><p><b>  2.2系統(tǒng)需求</b></p><p>  為了實(shí)現(xiàn)數(shù)據(jù)創(chuàng)建、數(shù)據(jù)刪除、數(shù)據(jù)瀏覽以及數(shù)據(jù)查詢等功能,該學(xué)生成績(jī)管理系統(tǒng)主要?jiǎng)澐譃閷W(xué)生信息的創(chuàng)建、查詢、修改、統(tǒng)計(jì)、顯示以及保存等內(nèi)容,這些管理職能統(tǒng)一由管理者負(fù)責(zé)。</p><p>  在學(xué)生管理系統(tǒng)開(kāi)發(fā)時(shí)應(yīng)該滿足以下具體的系統(tǒng)要求:</p><p>

10、 ?。?)學(xué)生成績(jī)管理系統(tǒng)中不同使用單位(用戶)的學(xué)生人數(shù)事先無(wú)法確定;</p><p> ?。?)該學(xué)生成績(jī)管理系統(tǒng)要求有學(xué)生成績(jī)創(chuàng)建、查詢、修改、、刪除、保存文件;</p><p> ?。?)系統(tǒng)使用文字菜單,用戶通過(guò)選擇菜單項(xiàng)的編號(hào),實(shí)現(xiàn)系統(tǒng)對(duì)子模塊的調(diào)用,也可用windows界面下的菜單欄、彈出式菜單、下拉菜單;</p><p>  (4)每個(gè)班級(jí)每門課程的

11、成績(jī)可以從學(xué)生的成績(jī)總表提取出子表并存儲(chǔ)成一個(gè)文本文件,以便在windows的notebook或者M(jìn)icrosoft word下打印,規(guī)定該文本文件名由班級(jí)號(hào)和課程名拼音字符串構(gòu)成.輸入班級(jí)號(hào)和課程名字符串后自動(dòng)生成文件名.如1班,語(yǔ)文,則文件名為:c1yuwen.txt; </p><p> ?。?)每個(gè)學(xué)生學(xué)習(xí)的課程有語(yǔ)文,英語(yǔ),數(shù)學(xué),物理,化學(xué),生物。</p><p>  (6)學(xué)生

12、的成績(jī)總表結(jié)構(gòu)約定為(學(xué)號(hào),姓名,課程名,平時(shí)成績(jī),期末成績(jī),總評(píng)成績(jī)).總評(píng)成績(jī)由程序自動(dòng)計(jì)算,總評(píng)成績(jī)=平時(shí)成績(jī)﹡30%+期末成績(jī)﹡70%。</p><p> ?。?)學(xué)號(hào)是一個(gè)9位整數(shù)構(gòu)成的字符串, 學(xué)號(hào)的編碼規(guī)則:入學(xué)年份+在讀年級(jí)+在讀班級(jí)+班內(nèi)編號(hào);入學(xué)年份用4位整數(shù)構(gòu)成字符串,如2003年入學(xué)則表示為:”2003”;在讀年級(jí)用1位整數(shù)構(gòu)成字符串,如正在1年級(jí)讀書則表示為:”1”;在讀班級(jí)用2位整數(shù)構(gòu)

13、成字符串,如正在1班讀書則表示為:”01”;班內(nèi)編號(hào)用2位整數(shù)構(gòu)成字符串,如在班內(nèi)編號(hào)為23號(hào)則表示為:”23”。</p><p><b>  2.3 功能需求</b></p><p>  基于系統(tǒng)需求分析,該系統(tǒng)需要實(shí)現(xiàn)以下基本功能:</p><p> ?。?)查詢所有學(xué)生的所有成績(jī)(包括各科成績(jī),平時(shí)成績(jī)以及總評(píng)成績(jī));</p>

14、<p> ?。?)查詢所有學(xué)生某一單科的成績(jī);</p><p> ?。?)修改學(xué)生的成績(jī);</p><p> ?。?)刪除學(xué)生的成績(jī);</p><p> ?。?)對(duì)學(xué)生的成績(jī)進(jìn)行保存,并可以在windows notebook或Microsoft word下打印。</p><p><b>  2.4 開(kāi)發(fā)環(huán)境</

15、b></p><p> ?。?)軟件環(huán)境:windows98/windowsXP/windows2000,Visual C++</p><p> ?。?)硬件環(huán)境:計(jì)算機(jī)(Pen4CPU, 256MRAM,60G以上硬盤,輸入輸出設(shè)備)</p><p><b>  3系統(tǒng)概要設(shè)計(jì)</b></p><p>  3.1

16、 系統(tǒng)的功能模塊劃分</p><p>  “學(xué)生成績(jī)管理信息系統(tǒng)”包括八個(gè)模塊:信息創(chuàng)建,信息查詢,信息修改,信息統(tǒng)計(jì),信息顯示,保存信息,謝謝使用以及退出程序。這九個(gè)模塊既相互聯(lián)系又相互獨(dú)立,其中信息查詢,信息修改,信息統(tǒng)計(jì),信息顯示,保存信息這五個(gè)模塊必須以信息載入或信息創(chuàng)建為基礎(chǔ)。</p><p> ?。?)信息創(chuàng)建模塊:對(duì)學(xué)生的成績(jī)進(jìn)行錄入,然后通過(guò)其他操作,保存所需的文件;<

17、;/p><p> ?。?)信息查詢:在信息載入和信息創(chuàng)建的基礎(chǔ)上,對(duì)學(xué)生的成績(jī)進(jìn)行查詢;</p><p> ?。?)信息修改:在信息載入和信息創(chuàng)建的基礎(chǔ)上,對(duì)所需學(xué)生的成績(jī)進(jìn)行修改;</p><p> ?。?)信息統(tǒng)計(jì):在信息載入和信息創(chuàng)建的基礎(chǔ)上,對(duì)學(xué)生的相關(guān)成績(jī)進(jìn)行統(tǒng)計(jì),輸出平均分及排名;</p><p> ?。?)信息顯示:在信息載入和信息

18、創(chuàng)建的基礎(chǔ)上,顯示出系統(tǒng)所有學(xué)生的成績(jī);</p><p> ?。?)保存信息:在信息載入和信息創(chuàng)建的基礎(chǔ)上,對(duì)學(xué)生的成績(jī)進(jìn)行必要的編輯后,保存所需的文件;</p><p> ?。?)感謝使用:顯示系統(tǒng)的創(chuàng)建者,并提示在退出程序前是否進(jìn)行相關(guān)的操作;</p><p> ?。?)退出程序:退出該程序。</p><p><b>  4系統(tǒng)

19、詳細(xì)設(shè)計(jì)</b></p><p>  4.1 系統(tǒng)登錄模塊設(shè)計(jì)</p><p>  學(xué)生成績(jī)管理信息系統(tǒng)可以分為九個(gè)模塊:</p><p><b>  (1)學(xué)生信息創(chuàng)建</b></p><p><b> ?。?)學(xué)生信息查詢</b></p><p><b&

20、gt; ?。?)學(xué)生信息修改</b></p><p><b> ?。?)學(xué)生信息統(tǒng)計(jì)</b></p><p><b> ?。?)學(xué)生信息顯示</b></p><p><b> ?。?)保存學(xué)生信息</b></p><p><b> ?。?)謝謝使用<

21、/b></p><p><b> ?。?)退出程序</b></p><p>  4.2 系統(tǒng)主界面設(shè)計(jì)運(yùn)行:</p><p>  圖4-1系統(tǒng)主界面設(shè)計(jì)運(yùn)行圖</p><p>  4.3 學(xué)生信息創(chuàng)建模塊運(yùn)行:</p><p>  圖4-2 學(xué)生信息創(chuàng)建模塊運(yùn)行圖</p>&l

22、t;p>  4.4學(xué)生信息查詢模塊設(shè)計(jì)</p><p> ?。?)學(xué)生信息查詢模塊主界面設(shè)計(jì):</p><p>  圖4-3 學(xué)生信息查詢模塊運(yùn)行圖</p><p>  (2)按姓名查找模塊:</p><p>  圖4-4按學(xué)生姓名查找模塊運(yùn)行圖</p><p>  圖4-5按學(xué)生姓名查找模塊運(yùn)行保存文件圖<

23、;/p><p> ?。?)按學(xué)號(hào)查找模塊:</p><p>  圖4-6 按學(xué)生學(xué)號(hào)查找模塊運(yùn)行圖</p><p>  圖4-7 按學(xué)生學(xué)號(hào)查找模塊運(yùn)行保存文件圖</p><p> ?。?) 按課程查找模塊如:</p><p>  圖4-8 按學(xué)生課程查找模塊運(yùn)行圖</p><p>  圖4-9 按

24、學(xué)生課程查找模塊運(yùn)行保存文件圖</p><p>  4.5學(xué)生信息修改模塊設(shè)計(jì)</p><p> ?。?)學(xué)生信息修改模塊主界面:</p><p>  圖4-10 學(xué)生信息修改模塊主界面運(yùn)行圖</p><p> ?。?)添加學(xué)生信息模塊:</p><p>  圖4-11 添加學(xué)生信息模塊運(yùn)行圖</p>&

25、lt;p> ?。?)修改學(xué)生信息模塊:</p><p>  圖4-12 修改學(xué)生信息模塊運(yùn)行圖</p><p>  (4)刪除學(xué)生信息模塊:</p><p>  圖4-13 刪除學(xué)生信息模塊運(yùn)行圖</p><p> ?。?)顯示學(xué)生信息模塊:</p><p>  圖4-14 顯示學(xué)生信息模塊運(yùn)行圖</p&g

26、t;<p>  4.6學(xué)生信息統(tǒng)計(jì)模塊設(shè)計(jì)</p><p> ?。?)學(xué)生信息統(tǒng)計(jì)模塊設(shè)計(jì)主界面:</p><p>  圖4-15 學(xué)生信息統(tǒng)計(jì)模塊運(yùn)行圖</p><p> ?。?)查找學(xué)生平均成績(jī)模塊:</p><p>  圖4-16 查找學(xué)生平時(shí)成績(jī)模塊運(yùn)行圖</p><p> ?。?)查找單科平均成

27、績(jī)模塊:</p><p>  圖4-17 查找單科平均成績(jī)模塊運(yùn)行圖</p><p>  4.7學(xué)生信息顯示模塊設(shè)計(jì):</p><p>  圖4-18 學(xué)生信息顯示模塊運(yùn)行效果圖</p><p>  4.8保存學(xué)生信息模塊:</p><p>  圖4-19 保存學(xué)生信息模塊運(yùn)行效果圖</p><p&

28、gt;  圖4-20 保存學(xué)生信息模塊運(yùn)行保存文件圖</p><p>  4.9謝謝使用模塊:</p><p>  圖4-21 謝謝使用模塊運(yùn)行效果圖</p><p>  4.10退出程序模塊:</p><p>  圖4-22 退出程序模塊運(yùn)行圖</p><p><b>  5 測(cè)試</b><

29、;/p><p><b>  5.1 測(cè)試目的</b></p><p>  測(cè)試的目的是盡可能發(fā)現(xiàn)并改正被測(cè)試軟件中的錯(cuò)誤,提高軟件的可靠性,測(cè)試是為了發(fā)現(xiàn)程序中的錯(cuò)誤而執(zhí)行程序的過(guò)程,好的測(cè)試方案是極可能發(fā)現(xiàn)迄今為止尚未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試方案;成功的測(cè)試是發(fā)現(xiàn)了至今為止尚未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試。測(cè)試并不僅僅是為了找出錯(cuò)誤.通過(guò)分析錯(cuò)誤產(chǎn)生的原因和錯(cuò)誤的發(fā)生趨勢(shì)</p>

30、;<p><b>  5.2 測(cè)試方案</b></p><p>  按照編寫的程序,進(jìn)行編譯,運(yùn)行,發(fā)現(xiàn)其中存在的問(wèn)題,并及時(shí)改正,不斷完善程序中存在的不足之處,以提高此系統(tǒng)的效率。</p><p><b>  5.3 測(cè)試項(xiàng)目</b></p><p> ?。?)系統(tǒng)主界面設(shè)計(jì)測(cè)試</p>&l

31、t;p> ?。?)學(xué)生信息創(chuàng)建模塊測(cè)試:</p><p> ?。?)學(xué)生信息查詢模塊設(shè)計(jì)測(cè)試</p><p> ?。╝)學(xué)生信息查詢模塊主界面測(cè)試</p><p> ?。╞)按姓名查找模塊測(cè)試</p><p> ?。╟)按學(xué)號(hào)查找模塊測(cè)試</p><p> ?。╠)按課程查找模塊測(cè)試</p><

32、;p> ?。?)學(xué)生信息修改模塊設(shè)計(jì)測(cè)試</p><p> ?。╝)學(xué)生信息修改模塊主界面測(cè)試</p><p> ?。╞)添加學(xué)生信息模塊測(cè)試</p><p>  (c)修改學(xué)生信息模塊測(cè)試</p><p> ?。╠)刪除學(xué)生信息模塊測(cè)試</p><p> ?。╡)顯示學(xué)生信息模塊測(cè)試</p>&l

33、t;p> ?。?)學(xué)生信息統(tǒng)計(jì)模塊設(shè)計(jì)測(cè)試</p><p> ?。╝)學(xué)生信息統(tǒng)計(jì)模塊設(shè)計(jì)主界面測(cè)試</p><p> ?。╞)查找學(xué)生平均成績(jī)模塊測(cè)試</p><p> ?。╟)查找單科平均成績(jī)模塊測(cè)試</p><p>  (6)學(xué)生信息顯示模塊設(shè)計(jì)測(cè)試</p><p> ?。?)保存學(xué)生信息模塊測(cè)試<

34、/p><p> ?。?)謝謝使用模塊測(cè)試</p><p> ?。?)退出程序模塊測(cè)試</p><p>  以上各個(gè)模板的測(cè)試結(jié)果均在上面以圖的形式對(duì)應(yīng)給出。</p><p><b>  5.4 測(cè)試結(jié)果</b></p><p>  經(jīng)過(guò)對(duì)以上各個(gè)模板的測(cè)試,可以得出各模塊的測(cè)試過(guò)程都沒(méi)有出現(xiàn)異常情況,

35、程序在系統(tǒng)的要求下,能夠?qū)崿F(xiàn)所要求的各種功能。</p><p>  6設(shè)計(jì)體會(huì)及今后的改進(jìn)意見(jiàn)</p><p><b>  6.1設(shè)計(jì)體會(huì)</b></p><p>  課程設(shè)計(jì)是我們專業(yè)課程知識(shí)綜合應(yīng)用的實(shí)踐訓(xùn)練,著是我們邁向社會(huì),從事職業(yè)工作前一個(gè)必不少的過(guò)程?!鼻Ю镏惺加谧阆隆?,通過(guò)這次課程設(shè)計(jì),我深深體會(huì)到這句千古名言的真正含義。我今天

36、認(rèn)真的進(jìn)行課程設(shè)計(jì),學(xué)會(huì)腳踏實(shí)地邁開(kāi)這一步,就是為明天能穩(wěn)健地在社會(huì)大潮中奔跑打下堅(jiān)實(shí)的基礎(chǔ)。</p><p>  通過(guò)這次“C++課程設(shè)計(jì)”,使得我在多方面都有所提高。通過(guò)這次課程設(shè)計(jì),綜合運(yùn)用本專業(yè)所學(xué)課程的理論和C++語(yǔ)言編程的實(shí)際訓(xùn)練從而培養(yǎng)和提高學(xué)生獨(dú)立工作能力,鞏固與擴(kuò)充了數(shù)值分析所學(xué)的內(nèi)容,通過(guò)對(duì)編程的鍛煉,對(duì)C++運(yùn)行的環(huán)境有了更深入的了解。</p><p>  感謝對(duì)我?guī)?/p>

37、助過(guò)的老師們、同學(xué)們,謝謝你們對(duì)我的幫助和支持,讓我感受到同學(xué)的友誼。 </p><p>  由于我的設(shè)計(jì)能力有限,在設(shè)計(jì)過(guò)程中難免出現(xiàn)錯(cuò)誤,懇請(qǐng)老師們多多指教,我十分樂(lè)意接受你們的批評(píng)與指正,我將萬(wàn)分感謝。</p><p><b>  6.2改進(jìn)意見(jiàn)</b></p><p>  本系統(tǒng)的缺點(diǎn)之處在于不能分別為管理者,教師和學(xué)生三方面提供必要的

38、服務(wù),以及不支持密碼登錄等服務(wù),信息容易泄露,功能還比較單一,今后將從這方面加以改進(jìn),將在系統(tǒng)登錄模塊增設(shè)密碼登錄等服務(wù),并且實(shí)現(xiàn)管理者,教師和學(xué)生三方面的服務(wù)。</p><p>  通過(guò)這次課程設(shè)計(jì),我也發(fā)現(xiàn)自己還有許多需要改進(jìn)的地方。但是,經(jīng)過(guò)這次課程設(shè)計(jì)我相信我的程序設(shè)計(jì)能力又一次進(jìn)步了很多。因此,自己將更加勤奮地學(xué)習(xí)理論知識(shí),并且將理論與實(shí)踐結(jié)合起來(lái),使自己能更加熟練地運(yùn)用理論知識(shí)解決實(shí)際問(wèn)題的能力!為自

39、己以后的編程生涯積累一點(diǎn)經(jīng)驗(yàn),為自己以后的事業(yè)打好基礎(chǔ)。</p><p><b>  參 考 文 獻(xiàn)</b></p><p>  [1] 譚浩強(qiáng).C++程序設(shè)計(jì).[M].北京:清華大學(xué)出版社,2005.</p><p>  [2] 譚浩強(qiáng).C++程序設(shè)計(jì)與上機(jī)指導(dǎo)(第三版).[M].北京:清華大學(xué)出版社,2005.</p><

40、;p><b>  附 錄</b></p><p>  附:學(xué)生成績(jī)管理信息系統(tǒng)程序清單</p><p>  #include "iostream.h"</p><p>  #include "string.h"</p><p>  #include "mall

41、oc.h"</p><p>  #include "stdlib.h"</p><p>  #include "fstream.h"</p><p>  #include "stdio.h"</p><p>  #include "iomanip.h"

42、 </p><p>  #include "conio.h"</p><p>  #define NULL 0</p><p>  #define LEN sizeof(struct STUDENT)</p><p>  struct STUDENT</p><p><b>  {<

43、;/b></p><p>  long number;</p><p>  char name[20];</p><p>  char sex[10];</p><p><b>  int age;</b></p><p>  int chineseRecord;</p>&l

44、t;p>  int mathematicsRecord;</p><p>  int englishRecord;</p><p>  int physicalRecord;</p><p>  int chemistryRecord;</p><p>  int biologicalRecord;</p><p&g

45、t;  double average;</p><p>  struct STUDENT *next;</p><p><b>  };</b></p><p>  struct STUDENT * head=NULL;</p><p>  void SaveData();</p><p>  v

46、oid Input();</p><p>  void Add();</p><p>  void Show();</p><p>  void Del();</p><p>  void FindName();</p><p>  void FindNumber();</p><p>  vo

47、id FindClass();</p><p>  void Modify();</p><p>  void Sort();</p><p>  void FindStudentAverage();</p><p>  void FindClassAverage();</p><p>  void AboutMe()

48、;</p><p>  void SaveData() //保存函數(shù) </p><p><b>  { </b></p><p>  char filename[20];</p><p>  cout<<"請(qǐng)輸入文件名: "; </p><p>  cin>&

49、gt;filename; </p><p>  ofstream fout(filename); </p><p><b>  if(!fout)</b></p><p>  cout<<"文件不能打開(kāi)!"<<endl; </p><p><b>  else <

50、;/b></p><p><b>  { </b></p><p>  struct STUDENT *p;</p><p><b>  p=head;</b></p><p>  fout << setw(0) <<"學(xué)號(hào)"<< set

51、w(8) <<"姓名"<< setw(8)<<"性別"<<setw(8)<<"年齡"</p><p>  << setw(8) << "語(yǔ)文"<< setw(8) <<"英語(yǔ)"<< setw(8)

52、 </p><p>  <<"數(shù)學(xué)"<< setw(8) <<"物理"<<setw(8)<<"化學(xué)" </p><p>  <<setw(8)<<"生物"<<endl;</p><p><

53、;b>  do{</b></p><p>  fout << setw(0) << p->number << setw(8) << p->name << setw(8)<<p->sex<<setw(8)<<p->age</p><p>  <<

54、; setw(8) << p->chineseRecord << setw(8) << p->englishRecord << setw(8) </p><p>  << p->mathematicsRecord << setw(8) << p->physicalRecord <<setw(8

55、)<<p->chemistryRecord </p><p>  <<setw(8)<<p->biologicalRecord<<endl;</p><p>  p=p->next;}</p><p>  while(p != NULL);</p><p><b> 

56、 }</b></p><p>  cout<<"保存成功!"<<endl;</p><p>  cout<<"將返回上一級(jí)。"<<endl;</p><p>  fout.close(); </p><p>  getchar(); </

57、p><p><b>  } </b></p><p>  void Input()</p><p>  { int n=0;</p><p>  struct STUDENT *p1,*p2;</p><p>  char flag='y';</p><p>

58、;  p1=p2=(struct STUDENT *)malloc(LEN);</p><p>  cout << "請(qǐng)按照以下順序,輸入您要輸入的學(xué)生信息:"<< endl;</p><p>  cout << setw(0) << "學(xué)號(hào)" << setw(8) << &qu

59、ot;姓名" << setw(8)<<"性別"<<setw(8)<<"年齡"</p><p>  << setw(8) << "語(yǔ)文" << setw(8) << "英語(yǔ)" << setw(8) << &q

60、uot;數(shù)學(xué)" </p><p>  << setw(8) << "物理" <<setw(8)<<"化學(xué)" <<setw(8)<<"生物"<<endl;</p><p>  cin >> p1->number >&

61、gt; p1->name >>p1->sex</p><p>  >> p1->age >> p1->chineseRecord </p><p>  >> p1->englishRecord >> p1->mathematicsRecord</p><p>  >

62、> p1->physicalRecord>>p1->chemistryRecord </p><p>  >> p1->biologicalRecord ;</p><p>  while(flag=='y'){</p><p><b>  n++;</b></p>

63、<p><b>  if(n==1)</b></p><p><b>  head=p1;</b></p><p><b>  else</b></p><p>  p2->next=p1;</p><p><b>  p2=p1;</b>

64、</p><p>  cout<<" 要繼續(xù)添加嗎(y/n)";</p><p>  cin>>flag;</p><p>  while(flag != 'y' && flag != 'n'){</p><p>  cout<<"

65、;輸入錯(cuò)誤,請(qǐng)輸入(y/n)"<<endl;</p><p>  cin>>flag;</p><p><b>  }</b></p><p>  if(flag=='n'){</p><p>  cout<<"請(qǐng)及時(shí)保存數(shù)據(jù),現(xiàn)在返回上一級(jí)&quo

66、t;<<endl;</p><p><b>  break;</b></p><p><b>  }</b></p><p>  p1=(struct STUDENT *)malloc(LEN);</p><p>  cout << "請(qǐng)按照以下順序,輸入您要輸入的

67、學(xué)生信息:"<<endl;</p><p>  cout << setw(0) << "學(xué)號(hào)" << setw(8) << "姓名" << setw(8)<<"性別"<<setw(8)<<"年齡"</p>

68、<p>  << setw(8) << "語(yǔ)文" << setw(8) << "英語(yǔ)" << setw(8) << "數(shù)學(xué)" </p><p>  << setw(8) << "物理" <<setw(8)<&l

69、t;"化學(xué)" <<setw(8)<<"生物"<<endl;</p><p>  cin >> p1->number >> p1->name >>p1->sex</p><p>  >> p1->age>> p1->chines

70、eRecord </p><p>  >> p1->englishRecord >> p1->mathematicsRecord</p><p>  >> p1->physicalRecord>>p1->chemistryRecord </p><p>  >> p1->bio

71、logicalRecord ;</p><p><b>  }</b></p><p>  p2->next=NULL;}</p><p>  void Add(){</p><p>  struct STUDENT *p1,*p;</p><p>  char flag='y

72、9;;</p><p><b>  long num;</b></p><p><b>  do{</b></p><p>  p1=(struct STUDENT *)malloc(LEN);</p><p><b>  p=head;</b></p><

73、p>  cout<<" 輸入你要添加的學(xué)號(hào): "; </p><p><b>  cin>>num;</b></p><p>  while(p!=NULL){</p><p>  if(num<head->number ){</p><p>  cout &

74、lt;< "請(qǐng)按照以下順序,輸入您要輸入的學(xué)生信息:"<< endl;</p><p>  cout << setw(0) << "姓名" << setw(8)<<"性別"<<setw(8)<<"年齡"</p><p> 

75、 << setw(8) << "語(yǔ)文" << setw(8) << "英語(yǔ)" << setw(8) << "數(shù)學(xué)" </p><p>  << setw(8) << "物理" <<setw(8)<<"化學(xué)&

76、quot; <<setw(8)<<"生物"<<endl;</p><p>  cin >> p1->name >>p1->sex</p><p>  >> p1->age >> p1->chineseRecord </p><p>  &g

77、t;> p1->englishRecord >> p1->mathematicsRecord</p><p>  >> p1->physicalRecord>>p1->chemistryRecord </p><p>  >> p1->biologicalRecord ;</p><p&

78、gt;  p1->number =num;</p><p>  p1->next =head ;</p><p><b>  head=p1;</b></p><p><b>  break;</b></p><p><b>  }</b></p>&

79、lt;p><b>  else{</b></p><p>  if(p->next !=NULL && num>p->number && num<p->next->number ){</p><p>  cout << "請(qǐng)按照以下順序,輸入您要輸入的學(xué)生信息:"

80、<< endl;</p><p>  cout << setw(0) << "姓名" << setw(8)<<"性別"<<setw(8)<<"年齡"</p><p>  << setw(8) << "語(yǔ)文"

81、; << setw(8) << "英語(yǔ)" << setw(8) << "數(shù)學(xué)" </p><p>  << setw(8) << "物理" <<setw(8)<<"化學(xué)" <<setw(8)<<"生物&qu

82、ot;<<endl;</p><p>  cin >> p1->name >>p1->sex</p><p>  >> p1->age >> p1->chineseRecord </p><p>  >> p1->englishRecord >> p1-

83、>mathematicsRecord</p><p>  >> p1->physicalRecord>>p1->chemistryRecord </p><p>  >> p1->biologicalRecord ;</p><p>  p1->number=num;</p><p

84、>  p1->next =p->next;</p><p>  p->next=p1;</p><p><b>  break;</b></p><p><b>  } </b></p><p><b>  }</b></p><

85、;p>  if(p->next ==NULL){</p><p>  cout<< "請(qǐng)按照以下順序,輸入您要輸入的學(xué)生信息:"<< endl;</p><p>  cout << setw(0) << "姓名" << setw(8)<<"性別"&

86、lt;<setw(8)<<"年齡"</p><p>  << setw(8) << "語(yǔ)文" << setw(8) << "英語(yǔ)" << setw(8) << "數(shù)學(xué)" </p><p>  << setw(8

87、) << "物理" <<setw(8)<<"化學(xué)" <<setw(8)<<"生物"<<endl;</p><p>  cin >> p1->name >>p1->sex</p><p>  >> p1->a

88、ge >> p1->chineseRecord </p><p>  >> p1->englishRecord >> p1->mathematicsRecord</p><p>  >> p1->physicalRecord>>p1->chemistryRecord </p><p

89、>  >> p1->biologicalRecord ;</p><p>  p1->number =num;</p><p>  p->next=p1;</p><p>  p1->next =NULL;</p><p><b>  break;</b></p>

90、<p><b>  }</b></p><p>  p=p->next; </p><p><b>  }</b></p><p>  cout<<" 要繼續(xù)添加嗎(y/n)";</p><p>  cin>>flag;</p&

91、gt;<p>  while(flag != 'y' && flag != 'n'){</p><p>  cout<<"輸入錯(cuò)誤,請(qǐng)輸入(y/n)"<<endl;</p><p>  cin>>flag;</p><p><b>  }&

92、lt;/b></p><p>  if(flag=='n'){</p><p>  cout<<"請(qǐng)及時(shí)保存數(shù)據(jù),現(xiàn)在返回上一級(jí)"<<endl;</p><p><b>  break;</b></p><p><b>  }</b>

93、</p><p>  }while(flag=='y');</p><p><b>  }</b></p><p>  void Show(){</p><p>  struct STUDENT *p;</p><p>  cout<<"\n所有學(xué)生的成績(jī):&

94、quot;<<endl;</p><p><b>  p=head;</b></p><p>  if(head!=NULL){</p><p>  cout << setw(0) << "學(xué)號(hào)" << setw(8) << "姓名" <&

95、lt; setw(8)<<"性別"<<setw(8)<<"年齡"</p><p>  << setw(8) << "語(yǔ)文" << setw(8) << "英語(yǔ)" << setw(8) << "數(shù)學(xué)" <

96、/p><p>  << setw(8) << "物理" <<setw(8)<<"化學(xué)" <<setw(8)<<"生物"<<endl;</p><p><b>  do{</b></p><p>  cout

97、<< setw(0) << p->number << setw(8) << p->name << setw(8)<<p->sex<<setw(8)<<p->age</p><p>  << setw(8) << p->chineseRecord <<

98、setw(8) << p->englishRecord << setw(8) </p><p>  << p->mathematicsRecord << setw(8) << p->physicalRecord <<setw(8)<<p->chemistryRecord <<setw(8)&l

99、t;<p->biologicalRecord<<endl;</p><p>  p=p->next;</p><p>  }while(p != NULL);</p><p>  cout<<"請(qǐng)及時(shí)保存數(shù)據(jù),現(xiàn)在返回上一級(jí)"<<endl;</p><p><b&

100、gt;  }</b></p><p><b>  else</b></p><p>  cout<<"\n學(xué)生成績(jī)?yōu)榭眨?qǐng)確認(rèn)。"<<endl;</p><p><b>  }</b></p><p>  void Del(){</p&g

101、t;<p><b>  long num;</b></p><p>  struct STUDENT *p1,*p2;</p><p>  char flag;</p><p><b>  flag='y';</b></p><p><b>  do{<

102、/b></p><p>  cout<<"請(qǐng)輸入要?jiǎng)h除學(xué)生的學(xué)號(hào):"<<endl;</p><p><b>  cin>>num;</b></p><p><b>  p1=head;</b></p><p><b>  p2=

103、head;</b></p><p>  while(p1!=NULL){</p><p>  if(p1->number == num && p1==head){</p><p>  head=p1->next ;</p><p>  delete p1;</p><p>  c

104、out<<"已成功刪除,請(qǐng)及時(shí)保存數(shù)據(jù)。"<<endl;</p><p><b>  break;</b></p><p><b>  }</b></p><p>  if(p1->next->number ==num && p1->next-&

105、gt;next==NULL){</p><p>  delete p1->next ;</p><p>  cout<<"已成功刪除,請(qǐng)及時(shí)保存數(shù)據(jù)。"<<endl;</p><p>  p1->next=NULL;</p><p><b>  break;</b>

106、</p><p><b>  }</b></p><p>  if(p1->next->number == num){</p><p>  p2=p1->next ;</p><p>  p1->next=p2->next ;</p><p>  delete p2;

107、</p><p>  cout<<"已成功刪除,請(qǐng)及時(shí)保存數(shù)據(jù)。"<<endl;</p><p><b>  break;</b></p><p><b>  }</b></p><p>  p1=p1->next;</p><p

108、><b>  } </b></p><p>  cout<<" 要繼續(xù)刪除嗎(y/n)";</p><p>  cin>>flag;</p><p>  while(flag != 'y' && flag != 'n'){</p>

109、<p>  cout<<"輸入錯(cuò)誤,請(qǐng)輸入(y/n)"<<endl;</p><p>  cin>>flag;</p><p><b>  } </b></p><p>  if(flag=='n'){</p><p>  cout<

110、;<"請(qǐng)及時(shí)保存數(shù)據(jù),現(xiàn)在返回上一級(jí)"<<endl;</p><p><b>  break;</b></p><p><b>  }</b></p><p>  }while(flag=='y');</p><p><b>  }&l

111、t;/b></p><p>  void FindName() </p><p><b>  { </b></p><p>  char name[20]; </p><p>  struct STUDENT *p;</p><p>  struct STUDENT *p1,*p2;<

112、;/p><p>  struct STUDENT * headna=NULL;</p><p>  char flag='y';</p><p>  p1=p2=(struct STUDENT *)malloc(LEN);</p><p><b>  do{</b></p><p>

113、<b>  p=head;</b></p><p>  cout<<" 輸入你要查找的姓名: "; </p><p>  cin>>name;</p><p>  while(p!=NULL){</p><p>  if(strcmp(p->name,name)==0){

114、</p><p>  if(headna==NULL){</p><p>  p1->number=p->number;strcpy(p1->name,p->name);strcpy(p1->sex,p->sex);</p><p>  p1->age=p->age;p1->chineseRecord=p->

115、;chineseRecord;</p><p>  p1->englishRecord=p->englishRecord;p1->mathematicsRecord=p->mathematicsRecord;</p><p>  p1->physicalRecord=p->physicalRecord;p1->chemistryRecord =p-

116、>chemistryRecord ;</p><p>  p1->biologicalRecord =p->biologicalRecord;</p><p>  headna=p1;</p><p><b>  break;</b></p><p><b>  }</b><

117、/p><p><b>  else{</b></p><p>  p2->next=p1;</p><p><b>  p2=p1;</b></p><p>  p1->number=p->number;strcpy(p1->name,p->name);strcpy(p1-

118、>sex,p->sex);</p><p>  p1->age=p->age;p1->chineseRecord=p->chineseRecord;</p><p>  p1->englishRecord=p->englishRecord;p1->mathematicsRecord=p->mathematicsRecord;<

119、;/p><p>  p1->physicalRecord=p->physicalRecord;p1->chemistryRecord =p->chemistryRecord ;</p><p>  p1->biologicalRecord =p->biologicalRecord;</p><p><b>  break;

120、</b></p><p><b>  } </b></p><p><b>  }</b></p><p><b>  else</b></p><p>  p=p->next;</p><p><b>  }</b

121、></p><p>  cout<<" 要繼續(xù)查找嗎(y/n)";</p><p>  cin>>flag;</p><p>  while(flag != 'y' && flag != 'n'){</p><p>  cout<<&

122、quot;輸入錯(cuò)誤,請(qǐng)輸入(y/n)"<<endl;</p><p>  cin>>flag;</p><p><b>  }</b></p><p>  if(flag=='n')</p><p><b>  break;</b></p>

123、;<p>  p1=(struct STUDENT *)malloc(LEN);</p><p>  }while(flag=='y');</p><p>  p2->next=NULL;</p><p>  struct STUDENT *w;</p><p>  cout<<"\n

124、所有被查找學(xué)生的成績(jī):"<<endl;</p><p><b>  w=headna;</b></p><p>  if(headna!=NULL){</p><p>  cout << setw(0) << "學(xué)號(hào)" << setw(8) << &quo

125、t;姓名" << setw(8)<<"性別"<<setw(8)<<"年齡"</p><p>  << setw(8) << "語(yǔ)文" << setw(8) << "英語(yǔ)" << setw(8) << &qu

126、ot;數(shù)學(xué)" </p><p>  << setw(8) << "物理" <<setw(8)<<"化學(xué)" <<setw(8)<<"生物"<<endl;</p><p><b>  do{</b></p>

127、<p>  cout<< setw(0) << w->number << setw(8) << w->name << setw(8)<<w->sex<<setw(8)<<w->age</p><p>  << setw(8) << w->chineseR

128、ecord << setw(8) << w->englishRecord << setw(8) </p><p>  << w->mathematicsRecord << setw(8) <<w->physicalRecord <<setw(8)<<w->chemistryRecord<

129、/p><p>  << setw(8) <<w->biologicalRecord<<endl;</p><p>  w=w->next;</p><p>  }while(w != NULL);</p><p>  char filename[20];</p><p>  

130、cout<<"請(qǐng)輸入保存的文件名: "; </p><p>  cin>>filename; </p><p>  ofstream fout(filename,ios::app); </p><p><b>  if(!fout)</b></p><p>  cout<

131、<"文件不能打開(kāi)!"<<endl; </p><p><b>  else </b></p><p><b>  { </b></p><p>  struct STUDENT *p;</p><p><b>  p=headna;</b>

132、</p><p>  fout << setw(0) <<"學(xué)號(hào)"<< setw(8) <<"姓名"<< setw(8)<<"性別"<<setw(8)<<"年齡"</p><p>  << setw(8)

133、 << "語(yǔ)文"<< setw(8) <<"英語(yǔ)"<< setw(8) </p><p>  <<"數(shù)學(xué)"<< setw(8) <<"物理"<<setw(8)<<"化學(xué)" </p><p&

134、gt;  <<setw(8)<<"生物"<<endl;</p><p><b>  do{</b></p><p>  fout << setw(0) << p->number << setw(8) << p->name << setw(8)

135、<<p->sex<<setw(8)<<p->age</p><p>  << setw(8) << p->chineseRecord << setw(8) << p->englishRecord << setw(8) </p><p>  << p->

136、mathematicsRecord << setw(8) << p->physicalRecord <<setw(8)<<p->chemistryRecord </p><p>  <<setw(8)<<p->biologicalRecord<<endl;</p><p>  p=p-&g

137、t;next;</p><p>  }while(p != NULL);}</p><p>  cout<<"保存成功!"<<endl;</p><p>  cout<<"現(xiàn)在返回上一級(jí)。"<<endl;</p><p>  fout.close(); &

138、lt;/p><p><b>  }</b></p><p><b>  else</b></p><p>  cout<<"\n沒(méi)有被查找的學(xué)生,不會(huì)保存,請(qǐng)確認(rèn)。"<<endl;</p><p><b>  }</b></p&g

139、t;<p>  void FindNumber()</p><p><b>  {</b></p><p>  struct STUDENT * headnu=NULL;</p><p>  long num; </p><p>  struct STUDENT *p;</p><p&g

140、t;  struct STUDENT *p1,*p2;</p><p>  char flag='y';</p><p>  p1=p2=(struct STUDENT *)malloc(LEN);</p><p><b>  do{</b></p><p><b>  p=head;</

141、b></p><p>  cout<<" 輸入你要查找的學(xué)號(hào): "; </p><p><b>  cin>>num;</b></p><p>  while(p!=NULL){</p><p>  if(p->number==num){</p>&l

142、t;p>  if(headnu==NULL){</p><p>  p1->number=p->number;strcpy(p1->name,p->name);strcpy(p1->sex,p->sex);</p><p>  p1->age=p->age;p1->chineseRecord=p->chineseRecord

143、;</p><p>  p1->englishRecord=p->englishRecord;p1->mathematicsRecord=p->mathematicsRecord;</p><p>  p1->physicalRecord=p->physicalRecord;p1->chemistryRecord =p->chemistryR

144、ecord ;</p><p>  p1->biologicalRecord =p->biologicalRecord;</p><p>  headnu=p1;</p><p><b>  break;</b></p><p><b>  }</b></p><p&

145、gt;<b>  else{</b></p><p>  p2->next=p1;</p><p><b>  p2=p1;</b></p><p>  p1->number=p->number;strcpy(p1->name,p->name);strcpy(p1->sex,p->

146、sex);</p><p>  p1->age=p->age;p1->chineseRecord=p->chineseRecord;</p><p>  p1->englishRecord=p->englishRecord;p1->mathematicsRecord=p->mathematicsRecord;</p><p

147、>  p1->physicalRecord=p->physicalRecord;p1->chemistryRecord =p->chemistryRecord ;</p><p>  p1->biologicalRecord =p->biologicalRecord;</p><p><b>  break;</b><

148、/p><p><b>  } </b></p><p><b>  }</b></p><p><b>  else</b></p><p>  p=p->next; } </p><p>  cout<<" 要繼續(xù)查

149、找嗎(y/n)";</p><p>  cin>>flag;</p><p>  while(flag != 'y' && flag != 'n'){</p><p>  cout<<"輸入錯(cuò)誤,請(qǐng)輸入(y/n)"<<endl;</p>&

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論