C++課程設(shè)計(jì)_ (5)學(xué)生選修課選課管理系統(tǒng)

上傳人:少*** 文檔編號(hào):53515800 上傳時(shí)間:2022-02-10 格式:DOC 頁(yè)數(shù):13 大?。?76.50KB
收藏 版權(quán)申訴 舉報(bào) 下載
C++課程設(shè)計(jì)_ (5)學(xué)生選修課選課管理系統(tǒng)_第1頁(yè)
第1頁(yè) / 共13頁(yè)
C++課程設(shè)計(jì)_ (5)學(xué)生選修課選課管理系統(tǒng)_第2頁(yè)
第2頁(yè) / 共13頁(yè)
C++課程設(shè)計(jì)_ (5)學(xué)生選修課選課管理系統(tǒng)_第3頁(yè)
第3頁(yè) / 共13頁(yè)

下載文檔到電腦,查找使用更方便

16 積分

下載資源

還剩頁(yè)未讀,繼續(xù)閱讀

資源描述:

《C++課程設(shè)計(jì)_ (5)學(xué)生選修課選課管理系統(tǒng)》由會(huì)員分享,可在線閱讀,更多相關(guān)《C++課程設(shè)計(jì)_ (5)學(xué)生選修課選課管理系統(tǒng)(13頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、 程序設(shè)計(jì)基礎(chǔ)課程設(shè)計(jì)報(bào)告程序設(shè)計(jì)基礎(chǔ)課程設(shè)計(jì)報(bào)告學(xué)生選修課管理系統(tǒng)學(xué)生選修課管理系統(tǒng)專專 業(yè):業(yè): 電子信息工程電子信息工程 班班 級(jí):級(jí): 20072007 級(jí)級(jí) 1 1 班班 學(xué)學(xué) 號(hào):號(hào): 20070820242007082024 姓姓 名:名: 孫孫 曉曉 東東 指導(dǎo)教師:指導(dǎo)教師: 常常 耀耀 輝輝 二二 OOOO 八八 年年 六月三十日六月三十日- 1 -目目 錄錄一、一、 編程目的:1二、二、 設(shè)計(jì)要求:1三、三、 函數(shù)主體說(shuō)明:.1四、四、 運(yùn)行結(jié)果.9五、五、 流程圖:.10六、六、 總結(jié):10參考數(shù)目:11一、一、編程目的:編程目的: 建立一學(xué)生選修課選課管理系統(tǒng),并對(duì)它

2、進(jìn)行輸入、輸出、查詢、選課等操作。二、二、設(shè)計(jì)要求設(shè)計(jì)要求:1.系統(tǒng)以菜單方式工作2.課程信息錄入功能(課程信息用文件保存)輸入3.課程信息瀏覽功能輸出4.查詢功能:(至少一種查詢方式)算法5.按學(xué)分查詢- 2 -6.按課程性質(zhì)查詢7.學(xué)生選修課程(可選項(xiàng))三、三、函數(shù)主體說(shuō)明函數(shù)主體說(shuō)明:#include#include#include#includeusing namespace std;class Coursepublic: void input()coutnumber; coutcourse_name; coutcourse_kind; couttotal_time; coutlear

3、n_time; couttime; coutcredit_hour; coutcourse_time; void input_1(ifstream &ji) / 輸入別名引用輸入別名引用jicourse_namecourse_kind total_timelearn_timetimecredit_hourcourse_time; void display()coutnumbersetw(12)course_namesetw(5)course_kindsetw(10)total_timesetw(10)learn_timesetw(10)timesetw(13)credit_hoursetw(1

4、2)course_timeendl;void display(ofstream &jb) / 輸出別名引用輸出別名引用jbnumbersetw(10)course_namesetw(5)course_kindsetw(5) total_timesetw(5)learn_timesetw(5)timesetw(5)credit_hoursetw(10)course_timeendl; friend class Class_array;- 3 -private:int num; / 學(xué)號(hào)學(xué)號(hào)int number; / 編號(hào)編號(hào)char course_name40; / 課程名稱課程名稱char c

5、ourse_kind10; / 課程性質(zhì)課程性質(zhì)int total_time; / 總學(xué)時(shí)總學(xué)時(shí)int learn_time; / 授課學(xué)時(shí)授課學(xué)時(shí)int time; / 實(shí)驗(yàn)或上機(jī)學(xué)時(shí)實(shí)驗(yàn)或上機(jī)學(xué)時(shí)int credit_hour; / 學(xué)分學(xué)分char course_time40; / 開(kāi)課學(xué)期開(kāi)課學(xué)期;class Studentpublic: void input()coutnum;coutname; void input_1(ifstream &ji)jinumname; void display()cout學(xué)號(hào)學(xué)號(hào):numsetw(14)姓名姓名:nameendl; void disp

6、lay_1(ofstream &jb)jbnum name(pb+i)-num; if(pb+i)-num=-1) break; else ji(pb+i)-name;L+; ji.close(); Class_array(int a) / 建立學(xué)生課程建立學(xué)生課程 Course 數(shù)組數(shù)組 int i;L=0;ji.open(course.txt,ios:in);p=new Course30;for(i=0;i+) ji(p+i)-number;if(p+i)-number=-1) break;else (p+i)-input_1(ji); L+; ji.close(); Class_arra

7、y(int a,int b) / 建立學(xué)生已選課的建立學(xué)生已選課的 Course1 數(shù)組數(shù)組 int i;L=0;ji.open(course1.txt,ios:in);p=new Course20;for(i=0;i+)ji(p+i)-num;if(p+i)-num=-1) break;else ji(p+i)-number;(p+i)-input_1(ji);L+;- 5 -ji.close(); void display() / 輸出輸出 Student 數(shù)組數(shù)組 int i;for(i=0;idisplay(); void display_1() / 輸出輸出 Course 數(shù)組數(shù)組

8、int i; cout編號(hào)編號(hào) 課程名稱課程名稱 課程性質(zhì)課程性質(zhì) 總學(xué)時(shí)總學(xué)時(shí) 授課學(xué)時(shí)授課學(xué)時(shí) 實(shí)驗(yàn)或上機(jī)學(xué)實(shí)驗(yàn)或上機(jī)學(xué)時(shí)時(shí) 學(xué)分學(xué)分 開(kāi)課學(xué)期開(kāi)課學(xué)期endl; for(i=0;idisplay(); void input() / course 課程信息錄入功能課程信息錄入功能,b 調(diào)用調(diào)用 (p+L)-input(); / 在數(shù)組最后增加數(shù)據(jù)在數(shù)組最后增加數(shù)據(jù) L+; void find_credit_hour() / 按學(xué)分查詢按學(xué)分查詢 int k,i;coutk;for(i=0;icredit_hour=k)(p+i)-display(); void find_course_ki

9、nd() / 按課程性質(zhì)查詢按課程性質(zhì)查詢 char a20;int i;couta; for(i=0;icourse_kind,a)=0) (p+i)-display(); void find(Class_array &c) / 按學(xué)生選修課程查詢按學(xué)生選修課程查詢 int k,i;- 6 -Course *b=c.p;coutk;for(i=0;inum=k)(pb+i)-display(); cout編號(hào)編號(hào) 課程名稱課程名稱 課程性質(zhì)課程性質(zhì) 總學(xué)時(shí)總學(xué)時(shí) 授課學(xué)時(shí)授課學(xué)時(shí) 實(shí)驗(yàn)或上機(jī)學(xué)時(shí)實(shí)驗(yàn)或上機(jī)學(xué)時(shí) 學(xué)分學(xué)分 開(kāi)課學(xué)期開(kāi)課學(xué)期endl; for(i=0;inum=k) (b+i)-

10、display(); Course find_number() / 按課程編碼查詢按課程編碼查詢,b 調(diào)用調(diào)用 int k,i;coutk;for(i=0;inumber=k) break; return *(p+i); int total_credit(int i) / 計(jì)算某學(xué)生的總學(xué)分計(jì)算某學(xué)生的總學(xué)分,c 調(diào)用調(diào)用 int k,j=0;for(k=0;kL;k+) if(pk.num=i) j=j+pk.credit_hour;return j; void choose(Class_array &b) / 選課程序選課程序,c 調(diào)用調(diào)用 int i,k; Course p1; cout

11、i; b.display_1(); for(;) p1=b.find_number(); / 選課選課p1.num=i; / 將學(xué)號(hào)填到數(shù)據(jù)中將學(xué)號(hào)填到數(shù)據(jù)中pL=p1; / 將節(jié)點(diǎn)填到將節(jié)點(diǎn)填到 c 鏈表中鏈表中L+; k=total_credit(i); / 計(jì)算學(xué)號(hào)為計(jì)算學(xué)號(hào)為 i 的總學(xué)分的總學(xué)分- 7 - if(k=8) cout請(qǐng)繼續(xù)選課請(qǐng)繼續(xù)選課;else cout你的學(xué)分已超過(guò)你的學(xué)分已超過(guò) 8 分分!endl; break; void save() / student.txt保存文件函數(shù)保存文件函數(shù) int i,k=-1;jb.open(student.txt,ios:out

12、);if(!jb) cout錯(cuò)誤錯(cuò)誤endl;exit(1); for(i=0;idisplay_1(jb); jbk; jb.close(); void save_1() / course.txt保存文件函數(shù)保存文件函數(shù) int i,k=-1;jb.open(course.txt,ios:out);if(!jb) cout錯(cuò)誤錯(cuò)誤endl;exit(1); for(i=0;idisplay(jb); jbk; jb.close(); void save_2() / course1.txt保存函數(shù)保存函數(shù) int i,k=-1;jb.open(course1.txt,ios:out);if(!

13、jb) cout錯(cuò)誤錯(cuò)誤endl;exit(1); for(i=0;iL;i+)- 8 - jbnumdisplay(jb); jbk; jb.close(); private: Course *p; / Course 數(shù)組地址數(shù)組地址 Student *pb; / Student 數(shù)組地址數(shù)組地址 ifstream ji; / 輸入流輸入流 ofstream jb; / 輸出流輸出流 int L; / 長(zhǎng)度長(zhǎng)度;int main() Class_array a,b(1),c(1,2); int i,j;cout-學(xué)生選修課課程系統(tǒng)設(shè)計(jì)學(xué)生選修課課程系統(tǒng)設(shè)計(jì)-endl;for(;)cout1

14、新課程信息輸入新課程信息輸入 2 課程信息瀏覽課程信息瀏覽 3 查詢功能查詢功能 4 選課選課 5 結(jié)束結(jié)束endl;couti;if(i=1)cout-新課程信息輸入新課程信息輸入-endl;b.input();else if(i=2)cout-課程信息瀏覽課程信息瀏覽-endl; b.display_1();else if(i=3)cout-查詢功能查詢功能-endl;cout1 學(xué)分查詢學(xué)分查詢 2 課程性質(zhì)查詢課程性質(zhì)查詢 3 學(xué)生選修課程學(xué)生選修課程endl;coutj;if(j=1) cout-學(xué)分查詢學(xué)分查詢-endl;b.find_credit_hour();else if(j

15、=2) cout-課程性質(zhì)查詢課程性質(zhì)查詢-endl;b.find_course_kind();else if(j=3) - 9 -cout-學(xué)生選修課程學(xué)生選修課程-endl;a.find(c);else if(i=4)c.choose(b);else if(i=5)break;else cout無(wú)效輸入無(wú)效輸入endl; a.save(); b.save_1(); c.save_2();return 0;四、四、運(yùn)行結(jié)果運(yùn)行結(jié)果- 10 - 五、五、流程圖:流程圖:- 11 -開(kāi)始選擇功能課程信息瀏覽選課查詢功能課程錄入結(jié)束輸入課程信息瀏覽以選課程信息瀏覽進(jìn)行選課123455555六、六、

16、總結(jié)總結(jié): 剛開(kāi)始選題的時(shí)候就覺(jué)得這題有點(diǎn)難度,覺(jué)得不怎么好入手。首先是以菜單方式展開(kāi),就覺(jué)得怎么這么難。做的時(shí)候,就覺(jué)得更難了。其次是把一些以前分開(kāi)再的小題目合起來(lái),就覺(jué)得又難了許多。從未編過(guò)這樣的程序,就覺(jué)得僅這個(gè)就挺嚇人的。其中,有些函數(shù)就沒(méi)應(yīng)用過(guò),比如那輸入/輸出引用函數(shù),見(jiàn)都沒(méi)見(jiàn)過(guò),幸好有師兄們的幫忙,才能把程序弄完,這也覺(jué)得自己什么也沒(méi)學(xué)懂,也是我覺(jué)得自己與別人的差距,通過(guò)這次的設(shè)計(jì)我也覺(jué)得自己又有一點(diǎn)新的收獲,也了解了為什么學(xué)這門(mén)課程了,對(duì)其有了新認(rèn)識(shí)。在做程序設(shè)計(jì)前還必須把書(shū)本上的基本知識(shí)搞懂,程序設(shè)- 12 -計(jì)會(huì)用到書(shū)中的類做,對(duì)類的理解也不是很到位,一些概念的知識(shí)還沒(méi)有很好的理解,所以還需要借助書(shū)中的知識(shí)來(lái)加深對(duì)類的理解。 通過(guò)對(duì)其的編程,也理解了類這個(gè)新名詞在程序中的重要性。也知道了C 與 C+的重大區(qū)別,C+更使編程人員有了一個(gè)好的工具進(jìn)行編程??傊?,此次的程序設(shè)計(jì)是我們對(duì)系統(tǒng)(程序)設(shè)計(jì)的技巧、系統(tǒng)分析和類等許多知識(shí)的綜合應(yīng)用,大大提高思維了能力,為畢業(yè)設(shè)計(jì)和以后的工作打下了一個(gè)良好的基礎(chǔ)。工程完成時(shí)間:2008-6-28 孫曉東 電信 07參考數(shù)目參考數(shù)目 【1】譚浩強(qiáng), C+程序設(shè)計(jì) ,清華大學(xué)出版社,2006 年。

展開(kāi)閱讀全文
溫馨提示:
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. 裝配圖網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!