學(xué)生成績管理系統(tǒng)設(shè)計(jì)_第1頁
學(xué)生成績管理系統(tǒng)設(shè)計(jì)_第2頁
學(xué)生成績管理系統(tǒng)設(shè)計(jì)_第3頁
學(xué)生成績管理系統(tǒng)設(shè)計(jì)_第4頁
學(xué)生成績管理系統(tǒng)設(shè)計(jì)_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

成果形式:實(shí)踐報(bào)告成果名稱:學(xué)生成績管理系統(tǒng)項(xiàng)目功能:1.功能說明:學(xué)生成績管理系統(tǒng)是一個用于存儲,學(xué)生成績管理系統(tǒng)的系統(tǒng),可以實(shí)現(xiàn)以下功能:1學(xué)生輸入2學(xué)生插入3學(xué)生查詢4學(xué)生刪除5學(xué)生輸出6計(jì)算每名學(xué)生的平均分并輸出7計(jì)算每科的平均分并輸出8對學(xué)生的平均分排序9統(tǒng)計(jì)每門課程的及格率并輸出10退出?2.功能框圖:以下是學(xué)生成績管理系統(tǒng)的功能框圖:開始開始輸入功能選項(xiàng)輸入功能選項(xiàng)查詢學(xué)生輸入,學(xué)生插入,學(xué)生刪除退出文件操作查詢學(xué)生輸入,學(xué)生插入,學(xué)生刪除退出文件操作學(xué)生查詢統(tǒng)計(jì)每門課程的及格率并輸出計(jì)算每科的平均分并輸出對學(xué)生的平均分排序退出系統(tǒng)保存到文件計(jì)算每名學(xué)生的平均分并輸出學(xué)生查詢統(tǒng)計(jì)每門課程的及格率并輸出計(jì)算每科的平均分并輸出對學(xué)生的平均分排序退出系統(tǒng)保存到文件計(jì)算每名學(xué)生的平均分并輸出算法設(shè)計(jì):1.算法思路:本程序包括主函數(shù)和實(shí)現(xiàn)各個功能的子函數(shù)在內(nèi),一共有10個函數(shù):主函數(shù)(main())主函數(shù)是執(zhí)行整個程序的起點(diǎn)和終點(diǎn),也是調(diào)用各函數(shù)以實(shí)現(xiàn)各種功能的場所,調(diào)用主菜單函數(shù)彈出主菜單以選擇1-10實(shí)現(xiàn)功能:主菜單函數(shù)主菜單函數(shù)用于輸出主菜單。通過主菜單來實(shí)現(xiàn)顯示操作類型。有1學(xué)生輸入2學(xué)生插入3學(xué)生查詢4學(xué)生刪除5學(xué)生輸出6計(jì)算每名學(xué)生的平均分并輸出7計(jì)算每科的平均分并輸出8對學(xué)生的平均分排序9統(tǒng)計(jì)每門課程的及格率并輸出10退出?學(xué)生輸入函數(shù)輸入函數(shù)用于錄入學(xué)生成績信息。首先輸出提示信息欄,接著根據(jù)各項(xiàng)提示信息輸入,每輸入完一項(xiàng)信息,回車結(jié)束輸入,到下一項(xiàng)輸入,知道結(jié)束輸入。學(xué)生插入函數(shù)學(xué)生插入函數(shù)用于將錄入的學(xué)號等信息調(diào)用,以方便后期管理和處理。學(xué)生查詢函數(shù)學(xué)生查詢函數(shù)用于實(shí)現(xiàn)學(xué)生信息的查詢。查看全體學(xué)生成績名單函數(shù)用于將已錄入的全部學(xué)生成績和姓名輸出以便查看。通過循環(huán),每個循環(huán)按順序輸出循環(huán)變量i所代表的i位的學(xué)生的信息,直至將所有存儲的學(xué)生成績信息輸出完畢。學(xué)生刪除函數(shù)找到給定的編號,并刪除對應(yīng)編號的信息,通過比較找到對應(yīng)編號,然后刪除以及通過移動數(shù)組元素來刪除信息。/*通過移動數(shù)組元素來刪除信息*/ for(j=i;j<size-1;j++){ im[j]=im[j+1]; }/*endoffor*/ size--; printf("刪除成功!\n");學(xué)生輸出函數(shù)輸出學(xué)生成績。計(jì)算每名學(xué)生的平均分并輸出函數(shù)計(jì)算出每名學(xué)生得平均分并且輸出,以便直觀得看出學(xué)生的平均成績。 for(i=0;i<size;i++){ sum1=sum1+im[i].student_eng; sum2=sum2+im[i].student_math; sum3=sum3+im[i].student_C; j++; } printf("英語平均成績:%0.2f\n",sum1/j); printf("數(shù)學(xué)平均成績:%0.2f\n",sum2/j); printf("C語言平均成績:%0.2f\n",sum3/j);}統(tǒng)計(jì)每門課程的及格率并輸出函數(shù)統(tǒng)計(jì)每門課程的及格率并輸出,以便統(tǒng)計(jì)學(xué)生得及格率??梢苑从硨W(xué)生的平均水平用for循環(huán)來實(shí)現(xiàn)inti,j=0,count1=0,count2=0,count3=0; for(i=0;i<size;i++){ if(im[i].student_eng>=60){ count1++; } if(im[i].student_math>=60){ count2++; } if(im[i].student_C>=60){ count3++; } j++; }對學(xué)生的平均分排序(由大到小)函數(shù)把學(xué)生的平均分由大到小排序。首先進(jìn)入循環(huán),然后,將每一個成績和別的學(xué)生的成績進(jìn)行對比,用循環(huán)來排序。退出程序的函數(shù)退出程序。2.算法流程圖:由程序開始,先要進(jìn)入登錄頁面,顯示學(xué)生屬性信息,包括學(xué)生的名字以及學(xué)號,然后打開主菜單,顯示將要操作的選項(xiàng),先開始輸入學(xué)生的名字,學(xué)號,班級以及各項(xiàng)成績,如果有其他成績未輸入的,可以選擇學(xué)生插入,插入學(xué)生的名字,學(xué)好班級以及各項(xiàng)科目的成績,可以選擇第3項(xiàng)查詢學(xué)生信息,若有不正確的,可以選擇第4項(xiàng),學(xué)生刪除,找到給定的編號并刪除對應(yīng)編號的信息,可以通過移動數(shù)組元素來刪除信息,在各項(xiàng)學(xué)生成績錄入完成后,計(jì)算每名學(xué)生的平均分并輸出,同時將每科的平均分輸出,為了考慮以及顯示教學(xué)質(zhì)量以及教學(xué)的實(shí)際情況,可以選擇第8項(xiàng),統(tǒng)計(jì)每門課程的及格率并輸出,最后對學(xué)生的平均分由大到小排序,顯示學(xué)生的排名信息,最后退出程序3.函數(shù)原型:主函數(shù)intmain(void)主菜單函數(shù)voidmenu()學(xué)生輸入函數(shù)voidadd_student(informationim[],intgeshu)學(xué)生插入函數(shù)voidst_insert(informationim[],intindex){學(xué)生查詢函數(shù)voidcheck_oneStudent(informationim[],intstudent_number)學(xué)生刪除函數(shù)voiddel_studentinfor(informationim[],intstudent_number)學(xué)生輸出函數(shù)voidcheck_student(informationim[])計(jì)算每名學(xué)生的平均分并輸出函數(shù)voidaveGrade(informationim[])統(tǒng)計(jì)每門課程的及格率并輸出函數(shù)voidevsub_ave(informationim[])對學(xué)生的平均分排序(由大到小)函數(shù)voidave_sort(informationim[])顯示學(xué)生屬性的信息typedefstructstudentInformation三、數(shù)據(jù)組織:1.數(shù)據(jù)類型定義:數(shù)據(jù)類型在數(shù)據(jù)結(jié)構(gòu)中的定義是一個值的集合以及定義在這個值集上的一組操作。變量是用來存儲值的所在處,它們有名字和數(shù)據(jù)類型。變量的數(shù)據(jù)類型決定了如何將代表這些值的位存儲到計(jì)算機(jī)的內(nèi)存中。在聲明變量時也可指定它的數(shù)據(jù)類型。所有變量都具有數(shù)據(jù)類型,以決定能夠存儲哪種數(shù)據(jù)。數(shù)據(jù)類型包括原始類型、多元組、記錄單元、代數(shù)數(shù)據(jù)類型、抽象數(shù)據(jù)類型、參考類型以及函數(shù)類型。第一類數(shù)據(jù):普通變量普通變量聲明:intquantity表1普通變量函數(shù)名變量類型長度quantityInt4字節(jié)第二類數(shù)據(jù):結(jié)構(gòu)體數(shù)組結(jié)構(gòu)體數(shù)組聲明:structstaffstaffmembers[1000](長度為1000組)結(jié)構(gòu)體內(nèi)的變量:表2結(jié)構(gòu)體內(nèi)的變量變量名變量類型長度numberlongint型4namechar型數(shù)組21sexchar型數(shù)組5birthyearchar型數(shù)組5birthmonthchar型數(shù)組3birthdaychar型數(shù)組3educationalbackgroundchar型數(shù)組9dutychar型數(shù)組21salarylongint型4addresschar型數(shù)組101phonelonglongint型8conditionchar型數(shù)組5(3)數(shù)據(jù)類型的封轉(zhuǎn)1、void的字面意思是“無類型”,void*則為“無類型指針”,void*可以指向任何數(shù)據(jù)類型的指針。2、void修飾的函數(shù)返回值和參數(shù),表示是無,如果函數(shù)沒有返回值,應(yīng)該將函數(shù)聲明為void類型,如果函數(shù)沒有參數(shù),應(yīng)該將函數(shù)括號中用void來明確表示。3、void指針的含義,C語言規(guī)定,只有同種類型的指針才能進(jìn)行賦值,void*作為左值的時候,可以接收任何類型的指針,void*作為右值的時候,需要進(jìn)行強(qiáng)制類型轉(zhuǎn)換。2.數(shù)據(jù)存儲:表3數(shù)據(jù)存儲文件名文件類型用途Dataforquantity文本(txt)文件存儲quantity數(shù)據(jù)Dataforstaffmembers文本(txt)文件存儲staffmembers數(shù)據(jù)四、調(diào)試和運(yùn)行:1.調(diào)試過程:此處為函數(shù)名錯誤,在修改了函數(shù)名之后編譯正確。此處為少加了一個“}”,在重新加入之后,解決了此問題。此處為子函數(shù)無定義,缺失了部分函數(shù),在補(bǔ)上并加以修改之后,編譯正確2.運(yùn)行結(jié)果:這個為登陸的運(yùn)行結(jié)果(2)這個為學(xué)生輸入的運(yùn)行結(jié)果(3)這個為學(xué)生插入的運(yùn)行結(jié)果(4)這個為學(xué)生查詢的運(yùn)行結(jié)果(5)這個為學(xué)生輸出的運(yùn)行結(jié)果(6)這個為計(jì)算每名學(xué)生的平均分并輸出的運(yùn)行結(jié)果(7)這個為統(tǒng)計(jì)每門課程的及格率并輸出函數(shù)的運(yùn)行結(jié)果(8)這個為排序后的結(jié)果(9)這個為統(tǒng)計(jì)每門課程的及格率并輸出的結(jié)果(10)這個為退出程序的結(jié)果五、心得體會:在初學(xué)c語言的一個學(xué)期后,我學(xué)會了編寫各種類型的程序,但也只是非常一小部分,而且非常簡單,對于一些復(fù)雜的程序,我甚至不敢下手去做,我深知還有很多很多我需要去學(xué)習(xí)。在這個學(xué)期末,我們進(jìn)行的暑期實(shí)訓(xùn)活動,讓我們對c語言,有了更深的了解,同學(xué)們互相討論,互相幫助,并且還共同解決了很多c語言的問題。暑期實(shí)訓(xùn)和平整的教學(xué)活動中,所接觸的有很多的不同,平時上課都是老師在講述,而實(shí)訓(xùn)周,都是同學(xué)們自己去做,自己動手實(shí)踐。在這次實(shí)訓(xùn)周里,我一些感悟:首先,因?yàn)槠綍r都是老師講述,所以我們學(xué)到的只是最初的基本理論知識,要說真正自己動手編寫程序,這是非常困難的,因?yàn)榻?jīng)驗(yàn)不足,在編寫的過程中常常會因?yàn)橐恍﹩栴}而無法編譯,或者程序運(yùn)行完之后,無法正常得出結(jié)果。實(shí)際上來說,當(dāng)最初拿到選題的時候,我們很多人都是一頭霧水,不知道該如何下手,如何來編寫程序。在這段時間里,老師講述的非常少,只有靠我們自己努力克服困難,才能將我們最初的理論知識轉(zhuǎn)化為基本技能,這也使得我對編程產(chǎn)生了極大的興趣。通過這次實(shí)訓(xùn),我也發(fā)現(xiàn)了許多問題,我認(rèn)識到自己還有很多不足,在平常學(xué)習(xí)中有的很多知識沒有掌握,也沒有弄清楚最基本的知識點(diǎn),而且許多東西需要看書,以及上網(wǎng)查閱,搜尋,經(jīng)常會因?yàn)橐恍┬栴},而導(dǎo)致程序無法運(yùn)行,從而感到焦躁不安,無法靜下心來編寫程序。由此,我感覺到了做程序員的不易,以及做程序員的挑戰(zhàn)性工作。在這次,我選擇的專題為:學(xué)生成績管理系統(tǒng)。學(xué)生成績管理系統(tǒng)是一個用于儲存管理學(xué)生成績的系統(tǒng),可以實(shí)現(xiàn)以下功能:一、學(xué)生輸入;二、學(xué)生插入;三、學(xué)生查詢;四、學(xué)生刪除;五、學(xué)生輸出;六、計(jì)算每名學(xué)生的平均分并輸出;七、計(jì)算每科的平均分并輸出;八、對學(xué)生的平均分進(jìn)行排序;九、統(tǒng)計(jì)每門課程的及格率并輸出。為了寫出這些程序,我查閱了不少書籍以及網(wǎng)上的資料,學(xué)習(xí)到不同在課上所學(xué)習(xí)到的函數(shù)名,同時也鍛煉了我自己的獨(dú)立的寫程序的思維。受益頗多。其次,我是第一次自己獨(dú)立完成這樣一個項(xiàng)目,屬實(shí)有些慌亂。通過這次經(jīng)歷,我覺得學(xué)習(xí)函數(shù)的方法為:牢記。無論用c語言變成什么樣的程序,都離不開函數(shù),只要牢記函數(shù)的功能,以及他的用途,就可以在我們編程中更好的去理解程序,編寫代碼。據(jù)一些已經(jīng)就業(yè)多年的程序員說,很多程序都是互通的,套路大致都相同,只要牢記函數(shù)功能以及其用途,就可以省去很多的時間,讓我們更好的編寫程序。除此之外,還要學(xué)會在程序里,寫注釋,如果不寫注釋,那么下一步將進(jìn)行得非常困難,并且一旦出了錯誤,想要在一行一行一行的代碼中找到錯誤是難上加難,只有學(xué)會寫注釋,才會減輕自己的工作量,實(shí)現(xiàn)更多的復(fù)雜代碼的編寫,充分應(yīng)用函數(shù),靈活將函數(shù)的調(diào)用和嵌套。雖然經(jīng)過這次練習(xí),我依然無法掌握指針,讓數(shù)據(jù)結(jié)構(gòu)在指針中運(yùn)行是很難的,我會再接下來的學(xué)習(xí)中,努力掌握指針,將理論知識實(shí)踐。本次實(shí)訓(xùn)周,我們還組織了去京東航天數(shù)字經(jīng)濟(jì)示范園,了解了現(xiàn)在互聯(lián)網(wǎng),發(fā)展的圍繞三個中心,“互聯(lián)網(wǎng)加現(xiàn)代農(nóng)業(yè)”中心,“互聯(lián)網(wǎng)加旅游”中心,“創(chuàng)新創(chuàng)業(yè)服務(wù)”中心。同時也了解到功能完備的互聯(lián)網(wǎng)加現(xiàn)代服務(wù)體系,以及各級政府資源的支持,生態(tài)資源的賦能,也是非常重要的。在參觀華為云的過程中,我們提出了一個疑問,人類是否會被AI取代在未來消失的職業(yè),很有可能會有客服人事,流水線作業(yè)人員,裁判員,新聞記者,收銀員導(dǎo)游,體力勞動者等等,伴隨著這些可能消失的職業(yè),新誕生的職業(yè)也會有數(shù)據(jù)科學(xué)家,數(shù)據(jù)偵探人工智能主管,醫(yī)療設(shè)備輔助人員方向。在十九大和十九屆二中三中全會特別推出,確保到2020年貧困地區(qū)與全國一道進(jìn)入全國小康社會,為實(shí)現(xiàn)農(nóng)村復(fù)興戰(zhàn)略打好基礎(chǔ),可以通過產(chǎn)業(yè)扶貧,電商扶貧。而一些諸如京東,華為的產(chǎn)業(yè)會進(jìn)行金融扶貧,創(chuàng)業(yè)扶貧,招工扶貧四位一體。對我來說深受啟發(fā)。除此以外,在未來的實(shí)習(xí)過程中,我需要

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論