




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 成都工業(yè)學(xué)院專周報(bào)告課程名稱面向?qū)ο蟪绦蛟O(shè)計(jì)專周項(xiàng)目名稱學(xué)生成績管理系統(tǒng)姓 名杜銳班 級1506041學(xué) 號1501511768指導(dǎo)教師徐琳老師設(shè)計(jì)時(shí)間2016年06月13日 至 2016年06月17日成都工業(yè)學(xué)院計(jì)算機(jī)工程學(xué)院一、項(xiàng)目要求1(一) 項(xiàng)目名稱:1(二) 功能說明:1二、項(xiàng)目開發(fā)環(huán)境1三、類設(shè)計(jì)1四、項(xiàng)目功能結(jié)構(gòu)圖1五、設(shè)計(jì)與實(shí)現(xiàn)2(一) 分析問題2(二) 設(shè)計(jì)思路2(三) 功能實(shí)現(xiàn)3(四) 算法、技巧及調(diào)試5六、總結(jié)5七、參考文獻(xiàn)5一、項(xiàng)目要求(一)項(xiàng)目名稱:學(xué)生成績管理系統(tǒng)(二)功能說明:1. 成績錄入功能:可以選擇將單個(gè)學(xué)生或以班級為單位的學(xué)生成績和班級等信息錄入程序中并
2、且以txt文件的形式保存。2. 成績查詢功能:本功能分為通過學(xué)號查詢成績,通過姓名查詢成績,通過班級查詢成績,查詢不及格成績,查詢學(xué)科任意分?jǐn)?shù)段內(nèi)學(xué)生成績五個(gè)模塊。其中通過班級查詢成績會(huì)按照冒泡排序法將學(xué)生成績從高到低依次排序。3. 成績修改功能:本功能可通過學(xué)生學(xué)號查找學(xué)生成績信息,然后對學(xué)生成績信息進(jìn)行修改。4.成績刪除功能:本功能可通過學(xué)生學(xué)號查找學(xué)生成績信息,然后選擇是否刪除該學(xué)生成績信息。或者可以直接選擇是否刪除所有學(xué)生成績信息。二、項(xiàng)目開發(fā)環(huán)境操作系統(tǒng)版本:Windows10 64位軟件版本:Visual studio 2015三、數(shù)據(jù)庫設(shè)計(jì)學(xué)生類:(用于存儲和處理學(xué)生的相關(guān)信息)
3、dataint num;char name20;char sex10;int year;functionint return_num()char return_name()班級類:(用于存儲和處理班級的相關(guān)信息)dataLong ClassChar system20Char major20Int numberfunctionInt return_num()大學(xué)生類:(學(xué)生類和班級類的派生類,用于存儲和處理大學(xué)生的相關(guān)信息)dataChar school20課程類:(用于存儲和處理課程的相關(guān)信息)dataLong bianhaoChar name20Char teacher20Int xuefe
4、nfunctionchar cin_normal10Double in_normalChar cfinal10Double finalChar cpercentage_in10Double percentage_inChar ctotal10Double total課程成績類:(課程類的派生類,用于存儲和處理課程成績的相關(guān)信息)dataInt banjihaoChar name20Int num1Int termDouble totalDouble average學(xué)生成績類:(大學(xué)生類和課程成績類的派生類,用于存儲和處理學(xué)生成績的相關(guān)信息)functionVoid menu()Void wri
5、te()Void change()Void Delete()Void show()Void hy()Score banji_set(int,int)Int fail()Int Fs()四、項(xiàng)目功能結(jié)構(gòu)圖1.成績錄入功能:可以選擇將單個(gè)學(xué)生或以班級為單位的學(xué)生成績和班級等信息錄入程序中并且以txt文件的形式保存。2.成績查詢功能:可以通過學(xué)號查詢成績,通過姓名查詢成績,通過班級查詢成績,查詢不及格成績,查詢學(xué)科任意分?jǐn)?shù)段內(nèi)學(xué)生成績。3.成績修改功能:可通過學(xué)生學(xué)號查找學(xué)生成績信息,對學(xué)生成績信息進(jìn)行修改。4.成績刪除功能:可通過學(xué)生學(xué)號查找學(xué)生成績信息,選擇是否刪除該學(xué)生成績信息。或可以直接選擇
6、是否刪除所有學(xué)生成績信息。五、設(shè)計(jì)與實(shí)現(xiàn)侯志林組分工:組長:侯志林 負(fù)責(zé):查詢功能(姓名查詢,學(xué)號查詢,不及格名單)組員1:陸海空 負(fù)責(zé):錄入功能,一級界面組員2:杜銳 負(fù)責(zé):查詢功能(學(xué)科分?jǐn)?shù)段成績查詢),刪除功能組員3:王雪劍 負(fù)責(zé):修改功能,查詢功能(班級查詢)(一)分析問題1.我所負(fù)責(zé)的刪除功能和按學(xué)科分?jǐn)?shù)段查詢功能,在刪除功能中,主要有從數(shù)組中匹配的問題,如何實(shí)現(xiàn)單個(gè)刪除的問題,還有就是刪除后保存的問題。2.在按學(xué)科分?jǐn)?shù)段查詢時(shí),主要有如何同時(shí)查詢學(xué)科以及分?jǐn)?shù)段,同時(shí)實(shí)現(xiàn)兩個(gè)條件的判定。3.循環(huán)的使用,如何做到所有文件全部都要被判定。(二)設(shè)計(jì)思路 1.首先我想要?jiǎng)h除信息,就必須的找
7、到信息。這就得把數(shù)組里的信息一一匹配,用for循環(huán)實(shí)現(xiàn)。找到相應(yīng)的人使用數(shù)組覆蓋,使得刪除完成。 2.要同時(shí)實(shí)現(xiàn)按學(xué)科和分?jǐn)?shù)段查詢,確實(shí)比較麻煩,所以我先讓其選擇學(xué)科,然后找到這一科的所有信息,然后分?jǐn)?shù)段的判斷全部在這一科的前提下實(shí)現(xiàn)的,這樣比較容易實(shí)現(xiàn)。(三)功能實(shí)現(xiàn)成績刪除功能的運(yùn)行效果圖、流程圖、代碼及注釋: 運(yùn)行效果圖:刪除單個(gè)成績圖示刪除全部信息 流程圖: 代碼及注釋void Score:Delete()system(cls);cout nntt1.刪除單個(gè)學(xué)生成績信息nn;cout nntt2.刪除所有學(xué)生成績信息nn;cout x;if (x = 2)ofstream outfi
8、le(學(xué)生成績信息庫.txt, ios:out); /以這種方式打開將清空所有數(shù)據(jù)if (!outfile)cout 文件打開失敗n;exit(0);outfile.close();cout nn已清空所有數(shù)據(jù)!nn;cout x2;if (x2 = 2) exit(0);while (x2 = 1) break; if (x = 1)ifstream fin(學(xué)生成績信息庫.txt, ios:in);/以輸入方式打開文件if (!fin)cout 文件打開失敗n;exit(0);Score s100; /若申請的內(nèi)存空間過大,則有可能導(dǎo)致失敗int y = 0;for (int i = 0;
9、 i si; /把文件信息讀入到內(nèi)存中if (fin.eof()y = i; break;fin.close();cout num;for (int j = 0; j y; j+)if (sj.num = num)/匹配相應(yīng)的學(xué)號system(cls);cout nn你欲刪除的信息為:nn;cout sj;cout x1;if (x1 = 1)ofstream outfile(學(xué)生成績信息庫.txt, ios:out);/以輸出方式打開文件if (!outfile)cout 文件打開失敗n;exit(0);for (int g = j; gy - 1; g+) /執(zhí)行刪除操作sg = sg+1
10、;/覆蓋欲刪除的成員for (int n = 0; ny; n+)outfile sn; /把信息再讀入到文件當(dāng)中去cout nn信息刪除完畢!nn;cout x2;if (x2 = 2) outfile.close(); exit(0); if (x2 = 1) outfile.close(); break; if (x1 = 2) break; i+; return(n+i); 按學(xué)科分?jǐn)?shù)段查詢功能的運(yùn)行效果圖、流程圖、代碼及注釋: 運(yùn)行效果圖: 流程圖:代碼及注釋int Score:Fs()/創(chuàng)建一個(gè)函數(shù)int a, b, low, up, cnt = 0;int o;cout 請輸入你
11、要選擇的學(xué)科: endl;cout tt nn;cout tt nn;cout tt 1. 數(shù)學(xué)成績 nn;cout tt nn;cout tt 2. 英語成績 nn;cout tt nn;cout tt 3. C+程序 nn;cout tt nn;cout tt 0.返回 nn;cout o;while (o = 0) show(); cout 請輸入要查找的分?jǐn)?shù)段: a b;if (a b)up = a;low = b;elselow = a;up = b;/分?jǐn)?shù)段的輸入,并進(jìn)行大小比較int x = 1;while (x) /使函數(shù)返回時(shí)停留在該層界面system(cls);ifstre
12、am fin(學(xué)生成績信息庫.txt, ios:in);if (!fin)cout 文件打開失敗n;exit(0);Score s100; /若申請的內(nèi)存空間過大,則有可能導(dǎo)致失敗int y = 0;for (int i = 0; i si;if (fin.eof()y = i; break;while (o = 1)o = a;int p = 0;int l= 0;for (l =0;l 100;l+)/進(jìn)行循環(huán)操作if(sl.cj.M.total=low)/比較成績是否在這各分?jǐn)?shù)段cout 姓名: ;cout n;cout 成績: sl.cj.M.total endl;p+;
13、/有一次,p加一記錄個(gè)數(shù);if (l = 100)cout 該分?jǐn)?shù)段人數(shù)為: p endl;system(pause);return 0;while (o = 2)o = a;int p = 0;int l = 0;for (l = 0;l 100;l+)if (sl.cj.E.totallow)cout 姓名: ;cout n;cout 成績: sl.cj.E.total endl;p+;if (l = 100)cout 該分?jǐn)?shù)段人數(shù)為: p endl;system(pause);return 0;while (o =3)o = a;int p = 0;int l = 0;fo
14、r (l = 0;l 100;l+)if (sl.cj.C.total = low)cout 姓名: ;cout n;cout 成績: sl.cj.C.total endl;p+;if (l = 100)cout 該分?jǐn)?shù)段人數(shù)為: p endl;system(pause);return 0; 算法、技巧及調(diào)試1.在按分?jǐn)?shù)段查詢功能中,用到了for循環(huán),if判斷語句。在刪除中用到了ios:out抹掉全部數(shù)據(jù),和數(shù)組的覆蓋。2.運(yùn)用了形參的比較和賦值,使得比較分?jǐn)?shù)段的更加精準(zhǔn),不用認(rèn)為分分?jǐn)?shù)段的大小。3.在寫按分?jǐn)?shù)段查詢功能時(shí),循環(huán)的時(shí)候,前幾次都只是輸出一個(gè)名字,循環(huán)只進(jìn)行了一次,
15、在多次調(diào)試下,都不能成功,先是發(fā)現(xiàn)循環(huán)的判定條件寫錯(cuò)了,修改后還不能運(yùn)行,多次調(diào)試又發(fā)現(xiàn)文件沒有全部寫入S這個(gè)數(shù)組中,經(jīng)過多次修改調(diào)試終于完成了。六、總結(jié)這次的專周做成績管理系統(tǒng),本以為并不是很困難,但是當(dāng)自己著手開始時(shí),才發(fā)現(xiàn)自己一片茫然。和小組成員在一起花了一個(gè)上午討論了我們的整個(gè)思路,我們在一起捋思路,明確一個(gè)大致的方向畫了一個(gè)整體的流程圖。然后每個(gè)人分配了自己的任務(wù)。我的任務(wù)就是做刪除和按學(xué)科和分?jǐn)?shù)段查詢成績。在做刪除函數(shù)時(shí),問題不是很大,運(yùn)用了ios:out解決全部刪除的問題,單個(gè)刪除時(shí),遇到點(diǎn)麻煩,首先是要找到你要?jiǎng)h除的信息,這就的把你輸入的與數(shù)組中的信息所匹配,在匹配這點(diǎn)上,我花了大量的時(shí)間,有很多不明白的東西,也請教了老師,在老師和我查閱書籍的雙重幫助下終于完成了匹配,然后運(yùn)用數(shù)組的覆蓋實(shí)現(xiàn)單個(gè)信息的刪除。在做按學(xué)科和分?jǐn)?shù)段查詢成績時(shí),再有先前匹配數(shù)據(jù)的經(jīng)驗(yàn)后,我于是把學(xué)科用同樣的方式匹配,然后在每個(gè)學(xué)科下進(jìn)行分?jǐn)?shù)段的操作。進(jìn)過多次的調(diào)試,總算是做好了自己被分配的工作。在后期結(jié)合的時(shí)候又遇到了很多的問題,因?yàn)橹拔唇y(tǒng)一好,所以有些難以融合,進(jìn)過多次的調(diào)試,修改,運(yùn)用函數(shù)調(diào)用,終于最后能完美結(jié)合。經(jīng)過這次專周的實(shí)踐,我發(fā)現(xiàn)理論和實(shí)踐確實(shí)有差別,多次的修改和構(gòu)思,我覺得我在編程上有了重大的突破,和自己的想
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 智能交通系統(tǒng)在高速公路管理中的智能交通組織與優(yōu)化創(chuàng)新應(yīng)用創(chuàng)新應(yīng)用創(chuàng)新策略報(bào)告
- 教育質(zhì)量標(biāo)準(zhǔn)與認(rèn)證體系2025年構(gòu)建與創(chuàng)新研究
- 2025年跨境電商物流服務(wù)供應(yīng)鏈金融創(chuàng)新報(bào)告
- 互聯(lián)網(wǎng)金融平臺用戶信任機(jī)制與金融科技融合研究報(bào)告
- 2025年城市污水處理廠智能化改造對城市可持續(xù)發(fā)展的貢獻(xiàn)報(bào)告
- 老年教育課程設(shè)置與社區(qū)參與式教學(xué)模式創(chuàng)新實(shí)踐報(bào)告
- 哈爾濱市會(huì)展產(chǎn)業(yè)集群發(fā)展的可行性分析
- SHINY CRYSTAL金牌導(dǎo)購之飾品銷售技巧(繁體字)
- 作弊檢討九篇
- 公司禁止打游戲管理制度
- HG∕T 4104-2019 水性氟樹脂涂料
- 上海市閔行區(qū)2023-2024學(xué)年六年級下學(xué)期期末考試語文試題
- 醫(yī)學(xué)免疫學(xué)(山東聯(lián)盟 濰坊醫(yī)學(xué)院版) 知到智慧樹網(wǎng)課答案
- 數(shù)據(jù)庫程序設(shè)計(jì)智慧樹知到期末考試答案章節(jié)答案2024年外交學(xué)院
- 2024年陜西西安市碑林區(qū)人力資源和社會(huì)保障局招聘61人公開引進(jìn)高層次人才和急需緊缺人才筆試參考題庫(共500題)答案詳解版
- 中職數(shù)學(xué)單招一輪總復(fù)習(xí)《集合》復(fù)習(xí)課件
- 外來醫(yī)療器械清洗消毒
- (高清版)TDT 1055-2019 第三次全國國土調(diào)查技術(shù)規(guī)程
- 再回首混聲合唱譜
- 按揭貸款風(fēng)險(xiǎn)揭示及應(yīng)對措施
- 2023年11月南昌高新技術(shù)產(chǎn)業(yè)開發(fā)區(qū)人民檢察院招考4名聘用制檢察輔助人員筆試近6年高頻考題難、易錯(cuò)點(diǎn)薈萃答案帶詳解附后
評論
0/150
提交評論