![C語(yǔ)言課程設(shè)計(jì)班級(jí)成績(jī)管理系統(tǒng)10塊_第1頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/1/0aba1d84-ac65-4887-b87b-2ce358cb30d7/0aba1d84-ac65-4887-b87b-2ce358cb30d71.gif)
![C語(yǔ)言課程設(shè)計(jì)班級(jí)成績(jī)管理系統(tǒng)10塊_第2頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/1/0aba1d84-ac65-4887-b87b-2ce358cb30d7/0aba1d84-ac65-4887-b87b-2ce358cb30d72.gif)
![C語(yǔ)言課程設(shè)計(jì)班級(jí)成績(jī)管理系統(tǒng)10塊_第3頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/1/0aba1d84-ac65-4887-b87b-2ce358cb30d7/0aba1d84-ac65-4887-b87b-2ce358cb30d73.gif)
![C語(yǔ)言課程設(shè)計(jì)班級(jí)成績(jī)管理系統(tǒng)10塊_第4頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/1/0aba1d84-ac65-4887-b87b-2ce358cb30d7/0aba1d84-ac65-4887-b87b-2ce358cb30d74.gif)
![C語(yǔ)言課程設(shè)計(jì)班級(jí)成績(jī)管理系統(tǒng)10塊_第5頁(yè)](http://file3.renrendoc.com/fileroot_temp3/2022-3/1/0aba1d84-ac65-4887-b87b-2ce358cb30d7/0aba1d84-ac65-4887-b87b-2ce358cb30d75.gif)
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、目錄第一章 緒論-第二章 需求分析- 2.1 程序的功能- 2.2 輸入輸出的要求-第三章 概要設(shè)計(jì)- 3.1程序的模塊組成- 3.2學(xué)生信息結(jié)構(gòu)數(shù)組- 3.3各個(gè)程序的功能介紹-第四章 詳細(xì)設(shè)計(jì)- 4.1總流程圖- 4.2統(tǒng)計(jì)函數(shù)流程圖-第五章 測(cè)試- 5.1系統(tǒng)調(diào)試- 5.2結(jié)果分析-第六章 使用說(shuō)明-第七章 總結(jié)-附錄-評(píng)分表-第一章:緒論 一. 成績(jī)管理系統(tǒng)的背景分析: 當(dāng)今時(shí)代是飛速發(fā)展的信息時(shí)代,在各行各業(yè)中離不開(kāi)信息處理, 正是計(jì)算機(jī)被廣泛應(yīng)用于信息管理系統(tǒng)的環(huán)境.計(jì)算機(jī)的最大好處在于利用它能夠進(jìn)行信息管理.使用計(jì)算機(jī)進(jìn)行信息控制,不僅提高了工作效率,而且大大的提高了其安全性.尤
2、其對(duì)于復(fù)雜的信息管理,計(jì)算機(jī)能夠充分發(fā)揮它的優(yōu)越性. 隨著科學(xué)技術(shù)的不斷提高,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大的功能在人類(lèi)社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來(lái)越重要的作用. 學(xué)生成績(jī)管理系統(tǒng)提供了強(qiáng)大的學(xué)生成績(jī)管理管理功能,方便系統(tǒng)管理員對(duì)學(xué)生成績(jī)等信息的添加,修改,刪除,查詢(xún),留言等操作,同時(shí)一樣的方面學(xué)生對(duì)自己各科成績(jī)查詢(xún),學(xué)習(xí)的交流. 二開(kāi)發(fā)學(xué)生成績(jī)管理的必要性 開(kāi)發(fā)一個(gè)學(xué)生成績(jī)管理系統(tǒng),采用計(jì)算機(jī)對(duì)學(xué)生成績(jī)進(jìn)行管理,進(jìn)一步提高了辦學(xué)效益和現(xiàn)代化水平.為廣大教師和學(xué)生提高工作效率,實(shí)現(xiàn)學(xué)生成績(jī)信息管理工作流程的系統(tǒng)化,規(guī)范化和自動(dòng)化.現(xiàn)在我國(guó)的大中專(zhuān)院校的學(xué)生成績(jī)檔案管理水平普遍都不是很高,有的還停留在
3、全用紙介質(zhì)基礎(chǔ)上,這種管理方式已不能適應(yīng)時(shí)代的發(fā)展,社會(huì)的需求,因?yàn)樗速M(fèi)了大量的人力物力,也存在著許多不足的因素.在今天信息時(shí)代這種傳統(tǒng)的管理方法必然會(huì)被計(jì)算機(jī)為基礎(chǔ)的信息管理系統(tǒng)所代替.一個(gè)高效的學(xué)生成績(jī)管理系統(tǒng)可以存儲(chǔ)歷屆的學(xué)生成績(jī)檔案,不需要大量的人力,只需要幾名專(zhuān)門(mén)錄入員即可操作系統(tǒng),節(jié)省大量人力,可以迅速查到所需信息,高效,安全,學(xué)生在能方便的查看自己的成績(jī).三.課程設(shè)計(jì)內(nèi)容問(wèn)題描述:一個(gè)有N個(gè)學(xué)生的班級(jí),每個(gè)學(xué)生有M門(mén)課程。該系統(tǒng)實(shí)現(xiàn)對(duì)班級(jí)成績(jī)的錄入、顯示、修改、排序、保存等操作的管理。功能要求:、本系統(tǒng)采用一個(gè)結(jié)構(gòu)體數(shù)組,每個(gè)數(shù)據(jù)的結(jié)構(gòu)應(yīng)當(dāng)包括:學(xué)號(hào)、姓名、M門(mén)課程名稱(chēng)。、本系
4、統(tǒng)顯示這樣的菜單:請(qǐng)選擇系統(tǒng)功能項(xiàng):a、 成績(jī)錄入b、 成績(jī)顯示c、 成績(jī)保存d、 成績(jī)排序e、 成績(jī)修改(要求先輸入密碼)f、 成績(jī)統(tǒng)計(jì)、顯示每門(mén)課程成績(jī)最高的學(xué)生的基本信息、顯示每門(mén)課程的平均成績(jī)g、 退出系統(tǒng)、執(zhí)行一個(gè)具體的功能之后,程序?qū)⒅匦嘛@示菜單。、將學(xué)生成績(jī)保存到文件中。算法提示:、數(shù)據(jù)結(jié)構(gòu):結(jié)構(gòu)體類(lèi)型數(shù)組。、數(shù)據(jù)庫(kù)結(jié)構(gòu):下表構(gòu)成該系統(tǒng)的基本數(shù)據(jù)庫(kù)。 姓名學(xué)號(hào)課程名稱(chēng)1課程名稱(chēng)2charCharfloatfloat 測(cè)試數(shù)據(jù):學(xué)生人數(shù)N=10課程門(mén)數(shù)M=4課程名:數(shù)學(xué)、語(yǔ)文、英語(yǔ)、政治其它該系統(tǒng)有興趣的同學(xué)可以在實(shí)現(xiàn)上述基本功能后,完善系統(tǒng)的其它功能。四.課程設(shè)計(jì)要求及分組安排。
5、 1. 課程設(shè)計(jì)要求1)設(shè)計(jì)正確,方案合理。2)界面友好,使用方便。3)程序精煉,結(jié)構(gòu)清晰。4)設(shè)計(jì)報(bào)告5000字以上,含程序設(shè)計(jì)說(shuō)明、用戶(hù)使用說(shuō)明,系統(tǒng)的功能框圖、流程圖、源程序清單等。5)上機(jī)演示。6)每個(gè)學(xué)生在規(guī)定的時(shí)間內(nèi)獨(dú)自完成相關(guān)課題的C源程序編寫(xiě),調(diào)整和運(yùn)行。源程序及編譯生成各文件均保存在軟盤(pán)中;7)實(shí)際操作過(guò)程中遇到的問(wèn)題及解決方法:設(shè)計(jì)總結(jié)及心得體會(huì).8)按任務(wù)書(shū)的要求,按附錄的要求編寫(xiě)課程設(shè)計(jì)報(bào)告(Word文檔格式)。并用A4的復(fù)印紙打印并裝訂。2.分組及安排所選題目(共8題)根據(jù)學(xué)生學(xué)號(hào)順序選課題號(hào),四個(gè)人一道題,相鄰四個(gè)學(xué)號(hào)的同學(xué)選同一道題,32號(hào)以后的同學(xué)按學(xué)號(hào)每人選一
6、題。如你的學(xué)號(hào)為15,則所選題目號(hào)為:第四題。3成績(jī)?cè)u(píng)定程序設(shè)計(jì)方案是否合理;程序設(shè)計(jì)是否正確;調(diào)試結(jié)果;設(shè)計(jì)說(shuō)明書(shū)的質(zhì)量高低;答辯時(shí)回答問(wèn)題情況;課程設(shè)計(jì)周表現(xiàn)情況;總評(píng)成績(jī)記入“課程設(shè)計(jì)成績(jī)?cè)u(píng)分表”。五. 進(jìn)度安排第 一 周 星期四 :課題講解,查閱資料。第 二 周 星期一 :總體設(shè)計(jì),詳細(xì)設(shè)計(jì)。 星期二 :編程,上機(jī)調(diào)試,修改程序。 星期三:上機(jī)調(diào)試,完善程序。星期四:上機(jī)調(diào)試,完善程序。星期五:答辯。星期六星期天:撰寫(xiě)課程設(shè)計(jì)報(bào)告。第二章:系統(tǒng)需求分析1程序的功能:對(duì)一個(gè)有N個(gè)學(xué)生的班級(jí),每個(gè)學(xué)生有M門(mén)課程。該系統(tǒng)實(shí)現(xiàn)對(duì)班級(jí)成績(jī)的錄入、顯示、修改、排序、保存等操作的管理。本系統(tǒng)采用一個(gè)
7、包含N個(gè)結(jié)構(gòu)的數(shù)組,每個(gè)數(shù)據(jù)結(jié)構(gòu)應(yīng)當(dāng)包括:學(xué)號(hào)、姓名、M個(gè)課程名稱(chēng)。2. 輸入輸出要求:在菜單選項(xiàng)中1-7,選擇功能項(xiàng),進(jìn)行對(duì)應(yīng)選項(xiàng)的函數(shù)調(diào)用.輸入1,輸入學(xué)生的基本信息存入磁盤(pán)文件中;輸入2,輸出已存盤(pán)的學(xué)生信息;輸入3,輸出用戶(hù)所要選擇科目的提問(wèn),輸入科目后輸出該科目一排好的學(xué)生成績(jī);輸入4,修改功能,輸入密碼.錯(cuò)誤輸出是否繼續(xù)輸入密碼.正確則逐個(gè)輸出是否想要修改學(xué)生信息;輸入5,輸出三項(xiàng)功能的介紹,輸入你的選擇后輸出實(shí)現(xiàn)的結(jié)果;每執(zhí)行一個(gè)具體的程序后都要重新顯示菜單。第三章:系統(tǒng)概要設(shè)計(jì)1程序的模塊組成第一個(gè)模塊:先定義好一些必要的全局變量以及調(diào)用的函數(shù)和結(jié)構(gòu)體數(shù)組。第二個(gè)模塊:設(shè)計(jì)一個(gè)
8、菜單函數(shù)menu();實(shí)現(xiàn)能供用戶(hù)選擇功能項(xiàng)。第三個(gè)模塊:用enter()函數(shù)實(shí)現(xiàn)成績(jī)的輸入。第四個(gè)模塊:用save()函數(shù)實(shí)現(xiàn)成績(jī)的保存。第五個(gè)模塊:用print()函數(shù)實(shí)現(xiàn)成績(jī)輸出。第六個(gè)模塊:用cort()函數(shù)實(shí)現(xiàn)成績(jī)排序功能。第七個(gè)模塊:用modify()函數(shù)實(shí)現(xiàn)成績(jī)修改功能。第八個(gè)模塊:用count()函數(shù)實(shí)現(xiàn)成績(jī)統(tǒng)計(jì)功能。2.學(xué)生信息結(jié)構(gòu)數(shù)組 struct stuchar name20; int num; int scoreM;3.各個(gè)程序的功能介紹1:為便于用戶(hù)使用,先定義一個(gè)常數(shù)N表示人數(shù),學(xué)生信息的結(jié)構(gòu)體數(shù)組,以及調(diào)用功能項(xiàng)的函數(shù)。2:在menu()函數(shù)中,用switch來(lái)選
9、擇要執(zhí)行的功能項(xiàng)用dowhile實(shí)現(xiàn)每種具體功能后能返回菜單。3:Enter()函數(shù),用scanf依次輸入學(xué)生信息,在輸入多門(mén)成績(jī)成績(jī)時(shí),用for循環(huán)來(lái)實(shí)現(xiàn),結(jié)尾調(diào)用save()函數(shù)保存。4:Print()函數(shù)中為使界面美觀(guān)對(duì)學(xué)生成績(jī)用%5d輸出,且用換行實(shí)現(xiàn),學(xué)生信息整齊排列。5:Save()函數(shù)使用文件保存。6:Cort()函數(shù)先定義choice1,輸出想要排序的 科目的 序號(hào),用選擇排序法實(shí)現(xiàn)函數(shù)學(xué)生成績(jī)的排序。7:Modify()函數(shù),先定義好 一個(gè)密碼以及flag=0;如果輸入的密碼錯(cuò)誤則flag=1,用do .while實(shí)現(xiàn)是否重新輸入密碼,密碼準(zhǔn)確后調(diào)用modi()函數(shù),實(shí)現(xiàn)修改
10、功能。 8:Count()函數(shù)用menu1函數(shù)實(shí)現(xiàn)一個(gè)菜單功能。用switch實(shí)現(xiàn),用戶(hù)選擇想執(zhí)行的功能,從而調(diào)用Show1()Show2()Show3();第四章:系統(tǒng)詳細(xì)設(shè)計(jì)1總流程圖開(kāi)始Main()enter()print()save()sort()modify ()運(yùn)行程序count()ChoiceChoice函數(shù)123456退出程序72.統(tǒng)計(jì)函數(shù)流程圖開(kāi)始調(diào)用menu1函數(shù)輸入choice1choice1調(diào)用show1函數(shù)調(diào)用show2函數(shù)輸入選擇的科目J=0I=0I=i+1Isn+1.scoreiTemp=si.scorensn.scorei=sn+1.scoreiSi+1.sco
11、ren=tempJ=j+1I=0;sum=0 I=i+1INSum=sum+si.scorejSum=sum+si.scorej輸出排序成績(jī)輸出平均成績(jī)返回函數(shù)123結(jié)束結(jié)束第五章:測(cè)試1系統(tǒng)調(diào)試1:在enter()函數(shù)中對(duì)學(xué)生成績(jī)的輸入用scanf(“%d”,s);當(dāng)輸入一門(mén)成績(jī)后就會(huì)跳回,使接下來(lái)的程序無(wú)法運(yùn)行,改為for(j=1;j=M;j+) scanf(“%d”,&si.scorej);將錯(cuò)誤解決.2:在enter函數(shù)中,輸入姓名用scanf(“%s”,&);錯(cuò)誤,在scanf函數(shù)中的輸入項(xiàng)如果是字符數(shù)組名代表該數(shù)組的起始地址.則應(yīng)改為scanf(“%d”,si.nam
12、e);3:在運(yùn)行print()函數(shù)時(shí),第四門(mén)課顯示出來(lái)的分?jǐn)?shù)并非輸入項(xiàng):錯(cuò)誤,在定義時(shí)將j=1,應(yīng)改為j=0。 4:學(xué)生成績(jī)定義為浮點(diǎn)型,但與scanf連接不起來(lái)。是 由于所使用的系統(tǒng)不支持該項(xiàng)操作。5:在count( )函數(shù)中,show3( );輸出的人數(shù)比 實(shí)際的多一人,因?yàn)閎+:在循環(huán)結(jié)束之后會(huì)自增一次,則比 實(shí)際的大一。2. 結(jié)果分析1:為了使調(diào)試程序簡(jiǎn)便,先定義班級(jí)的人數(shù)N為3人,編譯連接后,顯示出菜單桌面,先輸入學(xué)生成績(jī)保存起來(lái).2:選擇2.在用循環(huán)輸出學(xué)生的基本信息的最后加printf(“n”);,則輸出學(xué)生的基本信息是每行顯示一位同學(xué)的信息.3:選擇5.修改函數(shù)中用getcha
13、r()來(lái)覆蓋原有的,則就可輸出修改的信息.4:選擇6.用一個(gè)選擇菜單int menu1()int choice1;printf(n*n);printf(1:xian shi mei ke cheng ji zui gao de xue sheng xin xin);printf(2:xian shi mei ke ping jun cheng jin);printf(3:xian shi chao gou ping jun cheng ji de ren shun);printf(4:quitn);printf(*n);選擇.輸入選擇的科目用標(biāo)記法找出成績(jī)最高的的學(xué)生則輸出其基本信息.選擇.用
14、for循環(huán),先求出了每門(mén)的總成績(jī)?cè)俪匀藬?shù)的到平均成績(jī)用一個(gè)數(shù)組接收.再用循環(huán)則的到結(jié)果.選擇.先定義了一個(gè)數(shù)組bM.用循環(huán)如果出現(xiàn)超過(guò)平均成績(jī)的人就自增一次,接收到bM中,用循環(huán)輸出bM則得到每門(mén)超過(guò)平均成績(jī)的人數(shù).5:在modify( )函數(shù)中,當(dāng)輸入一個(gè)錯(cuò)誤的密碼時(shí)會(huì)出現(xiàn)死循環(huán),因?yàn)樘龅?位置錯(cuò)誤了第六章:該系統(tǒng)使用說(shuō)明1運(yùn)行時(shí)進(jìn)入主界面,系統(tǒng)根據(jù)輸入的數(shù)字選項(xiàng)來(lái)調(diào)用相應(yīng)的函數(shù)。主要實(shí)現(xiàn)“功能選擇”的界面,在這個(gè)界面里有顯示系統(tǒng)的七大功能,根據(jù)每個(gè)功能前面的序號(hào)進(jìn)行選擇。以下為該介面;2.當(dāng)錄入完成輸入顯示學(xué)生成績(jī)功能時(shí),運(yùn)行結(jié)果如下圖:3. 當(dāng)輸入輸入成績(jī)統(tǒng)計(jì)功能時(shí),運(yùn)行結(jié)果如下圖:
15、3.成績(jī)修改時(shí)需要輸入密碼才能進(jìn)行,密碼錯(cuò)誤時(shí)不能進(jìn)行該操作,只有輸入正確的密碼才能運(yùn)行,運(yùn)行結(jié)果如下圖:第七章:總結(jié) 不經(jīng)一番寒徹骨,哪得梅花撲鼻香。 一周的C語(yǔ)言課程設(shè)計(jì)已接近尾聲了,現(xiàn)在回想起來(lái)真是五味俱全,從開(kāi)始的懵懂無(wú)知到現(xiàn)在做出一本挺有厚度的資料,我不但實(shí)踐了課本的知識(shí),還編出小程序,雖然很多人幫了我的忙,仍舊感覺(jué)自己對(duì)C語(yǔ)言有了深入的了解,還是有所成長(zhǎng),有所收獲,在實(shí)踐中,自己編程常會(huì)犯錯(cuò)誤,并總結(jié)一些克服缺點(diǎn)的方法。深刻體會(huì)到程序設(shè)計(jì)中最重要的一部分不是編寫(xiě)源程序,而是調(diào)試過(guò)程。只有經(jīng)過(guò)調(diào)試程序,我們才能掌握正確的語(yǔ)法知識(shí)及把問(wèn)題的解決方法用程序語(yǔ)言來(lái)表達(dá)。 在這段時(shí)間里,我門(mén)
16、匆匆忙忙為了它準(zhǔn)備了很多,其中不免有嘆息聲,但是總的來(lái)說(shuō)讓我么學(xué)到了很多,也懂得了很多,不僅在知識(shí)方面,還在有人的生活態(tài)度,目標(biāo)上。這次的C語(yǔ)言課程設(shè)計(jì)充分展示了C的魅力,用一些小小的實(shí)現(xiàn)合成一個(gè)系統(tǒng)從而融入到生活中解決實(shí)際問(wèn)題。同時(shí)也教會(huì)了我應(yīng)站在用戶(hù)的角度去設(shè)計(jì)程序。在此次設(shè)計(jì)過(guò)程中必不可少的出現(xiàn)了 很多問(wèn)題,整體規(guī)劃,模塊與模塊之間的調(diào)用與劃分,標(biāo)識(shí)符的使用。單詞的拼寫(xiě)錯(cuò)誤,結(jié)構(gòu)體數(shù)組的使用,正確的使用循環(huán)的限制條件.。這些問(wèn)題大多是因?yàn)槠綍r(shí)上課很少聽(tīng)講的原因,以至于很多概念混淆不清 。這次的課程設(shè)計(jì)讓我看到自己對(duì)C語(yǔ)言研究地少之又少。這次的班級(jí)成績(jī)管理系統(tǒng)仍舊存在著不足。記得開(kāi)始課設(shè)的
17、第一天,我糊里糊涂地在機(jī)房呆了一個(gè)上午,對(duì)老師要求做的課程設(shè)計(jì)束手無(wú)策,上網(wǎng)搜了幾個(gè),但覺(jué)得沒(méi)點(diǎn)意思,最后還是沒(méi)有用。但相對(duì)于別人的做的系統(tǒng),我的好像簡(jiǎn)單多了。但后來(lái)還是不得不去看書(shū),因?yàn)楹芏鄸|西還牛毛都不知道。比如,做這個(gè)課程設(shè)計(jì)時(shí)候,最好使用鏈表,而鏈表我們還沒(méi)有深入去熟悉它,在說(shuō)這個(gè)課程設(shè)計(jì)牽涉到前面我們學(xué)過(guò)的所有內(nèi)容,如,一些基本函數(shù)的運(yùn)用,函數(shù)的調(diào)用及指針,結(jié)構(gòu)體。內(nèi)容多而復(fù)雜,如果沒(méi)有對(duì)教材有個(gè)很好的了解掌握,是不可能篇好這個(gè)程序的。我還在把書(shū)本重新溫習(xí)了一遍,對(duì)照程序一一翻書(shū),試圖找到一中解釋來(lái)說(shuō)明程序當(dāng)中一些函數(shù)的作用和結(jié)構(gòu)。接下來(lái)的一段時(shí)間里對(duì)這段程序進(jìn)行了修改,經(jīng)過(guò)東湊西湊
18、,拼拼剪剪,終于可以在電腦上運(yùn)行了,但是它的功能不是很完善,需要進(jìn)一步完善。后來(lái)懷著疑問(wèn)去詢(xún)問(wèn)老師才發(fā)現(xiàn)其實(shí)很多問(wèn)題都想比較簡(jiǎn)單的,比如在運(yùn)行程序時(shí)發(fā)現(xiàn)無(wú)論我怎么輸入成績(jī),第四門(mén)課的成績(jī)都與我輸入的分?jǐn)?shù)不同,自己也嘗試用很多方法去解決,最終不了了之。同學(xué)看過(guò)以后告訴我是我在定義的時(shí)候把初始值定義錯(cuò)了。在修該以后,再次運(yùn)行便沒(méi)看見(jiàn)以前的錯(cuò)誤了。后來(lái)有用這種方法把后面的兩個(gè)警告解決了一個(gè)。 在這個(gè)過(guò)程中,也試圖自己獨(dú)立完成這個(gè)課程,偶爾發(fā)現(xiàn)書(shū)本上第11章節(jié)里面,有介紹鏈表的使用,而且書(shū)本上關(guān)于這個(gè)課程的一些基本函數(shù)功能在本章節(jié)都有說(shuō)明,比如,鏈表的創(chuàng)建,節(jié)點(diǎn)的插入,刪除,一些基本信息的修改都有。
19、最終完成的課程的設(shè)計(jì),馬馬虎虎的,完成的,但是還是受益匪淺。其中老師與同學(xué)的教導(dǎo)讓我刻苦銘心。不管其結(jié)果怎么樣,但至少這個(gè)過(guò)程,讓我們明白了,懂得了很多。雖然有點(diǎn)挫折很艱辛在里面,但是那都是短暫的,美麗的,它教會(huì)了我們不經(jīng)過(guò)自己的努力,是達(dá)不到預(yù)期的結(jié)果的,不經(jīng)過(guò)自己的實(shí)踐操作,是體驗(yàn)不到其中的美妙的。不僅如此,還給了我們一個(gè)警告,對(duì)待學(xué)習(xí)不可馬馬虎虎,否則完成不了應(yīng)有的任務(wù),得不到理想的結(jié)果,半途而廢是失敗的首要原因,不要什么事情都覺(jué)得滿(mǎn)不在乎,踏踏實(shí)實(shí)的學(xué)習(xí),踏踏實(shí)實(shí)的工作,擁有積極樂(lè)觀(guān)的態(tài)度去應(yīng)對(duì)一切挫折,最終會(huì)讓你走想成功的前沿。因?yàn)椋骸皠倮肋h(yuǎn)是屬于永不放棄的人!附錄1. 參考文獻(xiàn)C
20、程序設(shè)計(jì)(第三版) 譚浩強(qiáng) 著 清華大學(xué)出版社C語(yǔ)言程序設(shè)計(jì)實(shí)用指南 譚浩強(qiáng) 著 清華大學(xué)出版社C語(yǔ)言大學(xué)實(shí)用教程學(xué)習(xí)指導(dǎo) 蘇小紅 著 電子工業(yè)出版社2. 源代碼#include /*I/O函數(shù)*/#include /*字符串函數(shù)*/#define M 4 /*課程數(shù)*/#define NUM 3 /*人數(shù)*/ #define NULL 0#include#includeint avarM;struct stuchar name20; int num; int scoreM; void enter(struct stu s,int n); /*進(jìn)入*/ void print(struct st
21、u s,int n); /*輸入文件*/ void save(struct stu s,int n); /*保存文件*/ void sort(struct stu s,int n); /*排序*/ void modify(struct stu s,int n); /*修改*/ void count(struct stu s,int n); /*統(tǒng)計(jì)*/ int menu();void main()void clrscr(); struct stu studentNUM; for( ; ; ) switch(menu() case 1:enter(student,NUM);break; case
22、 2:print(student,NUM);break; case 3:save(student,NUM);break; case 4:sort(student,NUM);break; case 5:modify(student,NUM);break; case 6:count(student,NUM);break; case 7:return; int menu()int choice;printf(n*級(jí)成績(jī)管理*n);printf( 1 成績(jī)錄入n);printf( 2 成績(jī)顯示n);printf( 3 成績(jī)保存n);printf( 4 成績(jī)排序n);printf( 5 成績(jī)修改n);p
23、rintf( 6 成績(jī)統(tǒng)計(jì)n);printf( 7 退出系統(tǒng)n);printf( 學(xué)生人數(shù)級(jí) NUM 課程 數(shù)學(xué)0 語(yǔ)文1 英語(yǔ)2 政治3n);printf(*n);doprintf(nchoice1-7:); scanf(%d,&choice);while(choice7);return choice;void enter(struct stu s,int n) /成績(jī)錄入char c;int i=0;int j;do printf(please enter the message:n);getchar(); printf(enter name:n); scanf(%s,);
24、printf(enter num:n); scanf(%d,&si.num);printf(enter score:n); for(j=0;jM;j+)scanf(%d,&si.scorej);printf(按Y繼續(xù)錄入,按N結(jié)束錄入!);getchar();scanf(%c,&c);if(c!=Y&c!=y) /可以選擇是否繼續(xù)錄入break;+i;while(i!=n);void save(struct stu s,int n) /文件存儲(chǔ)數(shù)據(jù)FILE *fp; int i; char save20; printf(enter the file name:); scanf(%s,save)
25、; /*輸入選擇項(xiàng)*/ if(fp=fopen(stu-list,wb)=NULL)printf(can not open filen); return; elsefor (i=0;in;i+) if(fwrite (&si,sizeof(struct stu),1,fp)!=1); printf(file write errorn); fclose(fp); printf(successn);void print (struct stu s,int n) /成績(jī)顯示int i,j; for(i=0;in;i+) printf( 數(shù)學(xué) 語(yǔ)文 英語(yǔ) 政治n);printf(%s,)
26、; printf(%d,si.num); for(j=0;jM;j+) printf(%5d,si.scorej); printf(n);void sort(struct stu s,int n) /*排序*/int i,j,min,temp,k; printf(please choice subject 1-4:n); scanf(%d,&k); for(i=0;in-1;i+)min=i; for(j=i+1;jsj.scorek)temp=smin.scorek; smin.scorek=sj.scorek; sj.scorek=temp; printf(n The sorted num
27、bers:n); for(i=0;in;i+) printf(%5d,si.scorek); printf(n);void count(struct stu s,int n)void show1(struct stu a,int n1);void show2(struct stu a,int n1);int menu1();for( ; ;) switch(menu1() case 1:show1(s,n);break; case 2:show2(s,n);break; case 3:return;int menu1()int choice1;printf(n*n);printf(1:顯示每科
28、成績(jī)最高的學(xué)生信息n);printf(2:顯示每科平均成績(jī)n);printf(3:退出n);printf(*n);do printf(n Enter tou choice1 (1-3):);scanf(%d,&choice1);while(choice13);return choice1;void show1(struct stu a,int n1)int k,i,j,c=0; printf(please enter the subject num:); scanf(%d,&k); for(i=0;in1;i+) if(ac.scorekai.scorek) c=i; printf(%s,%d,,ac.num); for(j=0;jM;j+) printf(%5d,ac.scorej);void show2(struct stu a,int n1)int i,j,sum; for(j=0;jM;j+)sum=0; for(i=0;in1;i+) sum=sum+ai.scorej; avarj=sum/n1; printf(The %d avarage is:%dn,j,avarj);void modify(str
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 現(xiàn)代辦公環(huán)境中職場(chǎng)的職業(yè)技能
- 湘教版數(shù)學(xué)九年級(jí)上冊(cè)2.2《一元二次方程的解法》聽(tīng)評(píng)課記錄11
- 電商品臺(tái)綠色物流配送模式的推廣與應(yīng)用
- 【培優(yōu)卷】同步分層練習(xí):四年級(jí)下冊(cè)語(yǔ)文第9課《短詩(shī)三首》(含答案)
- 環(huán)保材料與化學(xué)科技的應(yīng)用
- 環(huán)保決策支持系統(tǒng)的大數(shù)據(jù)技術(shù)
- 電商平臺(tái)物流配送的優(yōu)化與改進(jìn)方案
- 人教部編版九年級(jí)歷史下冊(cè)第16課《冷戰(zhàn)》聽(tīng)課評(píng)課記錄
- 2025年度裝配式建筑構(gòu)件制造勞務(wù)分包合同
- 現(xiàn)代辦公中如何有效進(jìn)行網(wǎng)絡(luò)輿情管理
- 2022年全球及中國(guó)肥胖人口數(shù)量及肥胖帶來(lái)的危害分析:預(yù)計(jì)2025年中國(guó)超重及肥胖人數(shù)將突破2.65億人圖
- 2022年垃圾焚燒發(fā)電項(xiàng)目可行性研究報(bào)告
- 無(wú)菌技術(shù)操作-PPT課件
- JTT888-2020公共汽車(chē)類(lèi)型劃分及等級(jí)評(píng)定_(高清-最新)
- 某天然氣公司場(chǎng)站設(shè)備管理制度
- T_CHES 22-2018 渡槽安全評(píng)價(jià)導(dǎo)則
- 臨時(shí)碼頭施工方案
- 汶川地震災(zāi)后恢復(fù)重建生產(chǎn)力布局和產(chǎn)業(yè)調(diào)整專(zhuān)項(xiàng)規(guī)劃
- 教師專(zhuān)業(yè)發(fā)展與職業(yè)生涯規(guī)劃優(yōu)秀課件
- 深化內(nèi)部改革轉(zhuǎn)換經(jīng)營(yíng)機(jī)制強(qiáng)推內(nèi)部市場(chǎng)機(jī)制管理
- 稅務(wù)師事務(wù)所收費(fèi)標(biāo)準(zhǔn)
評(píng)論
0/150
提交評(píng)論