C++學生選課系統(tǒng)_第1頁
C++學生選課系統(tǒng)_第2頁
C++學生選課系統(tǒng)_第3頁
C++學生選課系統(tǒng)_第4頁
C++學生選課系統(tǒng)_第5頁
已閱讀5頁,還剩30頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、摘要本課程設(shè)計的目的是設(shè)計一個學生選修課程系統(tǒng)的程序,用來實現(xiàn)對學生成績的管理, 其中包括學生信息的文件讀入、添加、 查詢、 保存、 刪除以及相應(yīng)的課程信息管理。程序設(shè)計了兩個類,其中一個包含學生的學號、姓名、選課數(shù)以及選修總學分,另一個則包含了課程的信息,包括課程編號、課程名稱、課程性質(zhì)、課時等等。然后通過數(shù)組、向量、集合等來實現(xiàn)學生選課信息的記錄、保存,刪除等相關(guān)操作從而達到管理學生選課的。因為這次課程設(shè)計,我們可以熟練的使用C+叫言來完成一個學生選課管理系統(tǒng)。 但是編寫過程中難免會遇到錯誤,希望老師給予指導(dǎo)。1 需求分析12 概要設(shè)計12.1 對象設(shè)計 12.2 設(shè)計優(yōu)缺點 13 詳細設(shè)

2、計 23.1 總體設(shè)計思路 23.2 類定義 23.3 宏定義 33.4 文件操作函數(shù) 33.5 用戶操作函數(shù) 33.6 其他重要函數(shù) 34 測試結(jié)果及運行效果 45 系統(tǒng)開發(fā)所用到的技術(shù) 6參考文獻 7附錄 全部代碼81 需求分析計算機技術(shù)作為信息化的核心技術(shù)受到全社會的普遍重視。如今,計算機的使用也已不再局限于科學計算,它已進入人類社會的各個領(lǐng)域并發(fā)揮著越來越重要的作用。深入掌握計算機專業(yè)知識、具有良好系統(tǒng)設(shè)計與分析能力的計算機高級專業(yè)人才在社會上深受歡迎。而系統(tǒng)設(shè)計與分析能力的培養(yǎng)需要通過實踐訓練才能獲得。通過計算機對一些系統(tǒng)的管理已經(jīng)成為一種系統(tǒng)、便捷的方式。本課程設(shè)計就是用C+般計學

3、生選課系統(tǒng)的問題,實現(xiàn)對學生選課的管理操作。本課程設(shè)計的目的是設(shè)計一個學生選修課程系統(tǒng)的程序,用來實現(xiàn)對學生成績的管理, 其中包括學生信息的文件讀入、添加、 查詢、 保存、 刪除以及相應(yīng)的課程信息管理。程序設(shè)計了兩個類,其中一個包含學生的學號、姓名、選課數(shù)以及選修總學分,另一個則包含了課程的信息,包括課程編號、課程名稱、課程性質(zhì)、課時等等。然后通過數(shù)組、向量、集合等來實現(xiàn)學生選課信息的記錄、保存,刪除等相關(guān)操作從而達到管理學生選課的。2 概要設(shè)計2.1 對象設(shè)計把學生和學科信息設(shè)計成類student 和類 subject ,通過文件操作函數(shù)對輸入的學生和學科信息進行讀取和存放。2.2 設(shè)計優(yōu)缺

4、點優(yōu)點:1. 人性化的程序提示語言,程序提示語言較人性化,不僅大多為祈使語句、疑問句,而且提示明確,具有較強的明確的指導(dǎo)作用。程序提示不僅層次分明,提示方式多樣,而且提示信息井然有序,更加有利于用戶順利、準確地進行程序的操作。2. 所有的操作大多是在內(nèi)存中實現(xiàn),增加操作的速度,十分的方便。缺點:1. 程序雖然經(jīng)過多次精簡,但僅僅是形式上、小范圍的精簡,仍未得到本質(zhì)上的精簡,即未找到更加簡單、更加高效、更加合理、更小占用的資源的算法。2. 程序仍然存在不合理的地方,例如程序某些部分輸入錯誤會導(dǎo)致程序中止或轉(zhuǎn)向其他功能模塊,即程序建議用戶注意提示,進行合理的準確的輸入,這樣更有利于管理工作。建立一

5、個課程類,保存課程信息建立一個學生類,保存學生信息選課主菜單函數(shù)/ 登錄界面的函數(shù)載入文件信息的函數(shù)提取選課編號的函數(shù)/ 添加學生信息的函數(shù)3 詳細設(shè)計3.1 總體設(shè)計思路通過對課題的分析,程序的要求是設(shè)計選修課管理系統(tǒng),對選修課程能夠進行錄入和修改操作等,要求有主界面和退出功能。首先,考慮到程序的數(shù)據(jù)輸入,可以設(shè)置一個課程增加選項,通過該界面,進行選修課的錄入和修改操作,最后將錄入的課程存到相應(yīng)的文件中。然后定義各種函數(shù)的功能包括:查看、查詢、刪除等。另一個為選課界面,該界面學生可以進行課程選擇和瀏覽查詢等操作。在進行該操作之前需要對保存的文件進行讀取,然后對其中的東西進行查詢等。在學生選好

6、課程以后,可以將選好的課程保存于相應(yīng)的文件中,以便下次進行修改。通過函數(shù)的層層調(diào)用來實現(xiàn)程序的邏輯結(jié)構(gòu)。中間通過文件的打開和關(guān)閉實現(xiàn)對文件內(nèi)部所包含的數(shù)據(jù)操作。為了方便用戶控制管理,又添加了一些更人性化的功能如人工調(diào)試,運行配置等功能。文件存儲信息的方式更是簡化了程序結(jié)構(gòu),使程序讀起來更容易懂。除此之外,本系統(tǒng)采用分塊實現(xiàn)功能,將要實現(xiàn)的增加課程信息、修改課程信息、刪除課程信息、增加學生信息和修改學生信息等功能分別用不同的子程序來完成,這樣不僅方便了我們程序調(diào)試,更提高了程序的移植性。3.2 類定義class subject/class student/函數(shù):該程序包含的主要函數(shù)功能說明:vo

7、id XuanKeMenu(); / int find(int no);void Save();void DL();void MainMenu();void output();void Load();/void Load2();void quit();void add();void ChaXun();void chaxun1();void chaxun2();void xuanke();void tq1();/void tq2();void AddStuInfo();/保存學生信息到文件中/ 刪除已選課程信息的函數(shù)void SaveStuInfo();void del();void sum()

8、;3.3 宏定義#define N 103.4 文件操作函數(shù)void AddStuInfo();/ 添加學生信息的函數(shù)void SaveStuInfo();/ 保存學生信息到文件中3.5 用戶操作函數(shù)/該函數(shù)根據(jù)用戶的選擇,完成指定的操作void DL()/ 登錄界面void MainMenu()/ 系統(tǒng)主菜單void output()/ 顯示函數(shù):將課程信息輸出到屏幕void AddStuInfo()/ 增加學生信息,并保存在文件中void add()/ 增加課程信息,并保存在文件中void del()/ 刪除已選課程信息void ChaXun()/ 查詢主菜單函數(shù)void xuanke()

9、/ 選課函數(shù):執(zhí)行選課功能void sum()/ 統(tǒng)計函數(shù),統(tǒng)計并輸出文件中的數(shù)據(jù)3.6 其他重要函數(shù)void Load()/ 載入函數(shù):載入課程信息(文件此前已建立)void Load2()/ 載入學生信息(文件此前已建立)void Save()/ 保存已選的課程信息void SaveStuInfo()/保存學生信息void quit()/退出函數(shù)void chaxun1()/按學分方式查詢void chaxun2()/按課程性質(zhì)查詢void tq1(char *str)/提取出選課時輸入的課程編號int find(int no)/尋找函數(shù),找到想要的課程編號void display(int

10、 i)/輸出函數(shù)void tq2(char *str)/提取函數(shù):提前刪除時輸入的課程編號4測試結(jié)果及運行效果運行程序后,登陸界面登陸學號,進入登陸后的界面,在其中可以選擇查看課程信 息、添加課程信息、查詢課程信息、學生選課、統(tǒng)計情況和退出。按照提示輸入0-5和Enter鍵進入下級菜單,或者退出程序。«.息息杲出選況 課課課上情 京詢生計 查田善學管請選擇鼻:圖4-1登陸后的界面輸入1進入查看課程信息頁面后,給出存放在文件類的所有課程信息, 鍵停留界面,按n和Enter退出。按y和Enter課程信息程號8課名果時V1F nnI八務(wù)t課期5理學語絡(luò) 鬟英網(wǎng)4 小毒子機卻 大離計鍛 12

11、 3 4By- 裸mix* mix* mRFnR 、TP、TP TP M_Tk 公必必必4 4 .4 4大大大大-是否續(xù)查看“N】:圖4-2進入查看課程信息界面在主菜單中選擇2,進入添加課程信息界面。*其KMX- MH魄:MX XKIOCHXKXKXH靠其X* 其它箕其翼莫NMX:MKK* KMXICimXXXX典翼苒苒工)1彳,-x苒XU藺 課 程 信 息、 -MX首”藺彳,靛:葡彳前K入夕人人入課港息電學開nlrg 1黑 4 期 型五子:學 蜀程評課札分課:5;e"面向?qū)ο蟪绦蛟O(shè)計.必修諫 60(實驗學時).±a:大二是否繼續(xù)添加tY-l:.圖4-3添加課程時的界面在主

12、菜單中選4,學生選課界面學生選課姓名;23口學號門 已選3門課程 已選課程總學分二12選程號已量息課名一晶發(fā)刀J譚用黑英山母子大離大理學語mE.I-PK mVEh LUT_ E/T公必必6I00-大大大1J開始選課121刪除已選課程tai返回請選擇1上21二圖4-4學生選課時的界面在登陸界面輸入exit退出系統(tǒng)* W M HU M * W Mi M iM第 Mi M iM M SMHM M K M M M Mi M * M *M M Mi M * M *M*,1現(xiàn)1-1*-1現(xiàn)第1美詵課 若豈充 MM MM MMX M * MM M MMX M MMKXJKXXNNJCKXJKXJCJlJCJ

13、CXKJCJfJCJlJCJCXKKMiXJlXKKXKMXJlXKKXKMXJlXKKXK退出請輸入Exit 學號:exit圖4-5退出系統(tǒng)時的界面5系統(tǒng)開發(fā)所用到的技術(shù)操作系統(tǒng):Windows 7開發(fā)軟件:Microsoft Visual Studio 2013技術(shù):功能模塊(函數(shù));向量;文件保存及讀取。模塊:是抽象的概念,按照功能劃分模塊,盡可能保證每個模塊互相獨立。這個一 股同程序的邏輯設(shè)計有關(guān),同具體語言關(guān)系不大。函數(shù):一般都有有明確的定義,有明確的語法。用來完成相對獨立功能和程序。向量(Vector) : Vector是C+五準程序庫中的一個類,可視為會自動擴展容量的 數(shù)組,以循

14、序(Sequential)的方式維護變量集合。vector的特色包括支持隨機存取,在 集合尾端增刪元素很快,但是在集合中間增刪元素比較費時。vector是C+五準程序庫中的眾多容器(container )之一,除此之外還有 list、set、map等等。vector 以模板(泛型)方式實現(xiàn),可以存儲任何類型的變量,包括用戶自定義的數(shù)據(jù)型態(tài)。文件操作:C語言對文件的處理一般有兩種方法, 緩沖文件系統(tǒng)和非緩沖文件系統(tǒng)。 在文件系統(tǒng)中,系統(tǒng)對文件進行讀寫之前首先在內(nèi)存區(qū)開辟一個稱作緩沖區(qū)的專用內(nèi)存 區(qū)域。在緩沖文件系統(tǒng)中,系統(tǒng)對文件進行讀寫之前首先在內(nèi)存區(qū)開辟一個稱作緩沖區(qū) 的專用內(nèi)存區(qū)域。從內(nèi)存向

15、磁盤寫文件時必須先寫入緩沖區(qū),裝滿緩沖區(qū)后才一起寫到 磁盤上去;從磁盤讀文件時必須先把一批數(shù)據(jù)讀到緩沖區(qū)(充滿緩沖區(qū)),然后再從緩 沖區(qū)將數(shù)據(jù)逐個送到用戶數(shù)據(jù)區(qū)。在非緩沖文件系統(tǒng)中,文件的處理不自動開辟確定大 小的緩沖區(qū),而是由程序設(shè)定的緩沖區(qū)。一般用緩沖文件系統(tǒng)進行的輸入/輸出。用非 緩沖文件系統(tǒng)進行的輸入/輸出稱為低級(低層)輸入/輸出。ANSI C標準采用緩沖文件 系統(tǒng),現(xiàn)代的操作系統(tǒng)也廣泛采用緩沖型文件系統(tǒng)。參考文獻1李素若.C+面向?qū)ο蟪绦蛟O(shè)計.北京:中國水利水電出版社,2013.2曾輝.王更生.C+程序設(shè)計實訓教程.北京:北京郵電大學出版社,20113揣錦華等編.C+程序設(shè)計語言.

16、西安:西安電子科技大學出版社,20114張素琴主編.C+程序設(shè)計語言.北京:清華大學出版社,20105鄧飛,李瑤主編C+程序設(shè)計.北京科海電子出版社 20096李軍民等編.C+程序設(shè)計語言.西安:西安電子科技大學出版社,2011附錄 全部代碼#include<iostream>#include<vector>#include<set>#include<string.h>#include<conio.h>#include<stdlib.h>#include<fstream>#define N 10using na

17、mespace std;int F;class subjectpublic:int num;char name30;char cha20;int Time, time1, time2, xf;char kkxq20;S;class studentpublic:char nam10;char num15;int zxf;int cnt;Stu;vector <subject> v;vector <student> z;/建立一個課程類,保存課程信息/建立一個學生類,保存學生信息/聲明一個指向課程信息的向量/聲明一個指向?qū)W生信息的向量/建立一個集合/建立一個向量集合/建立一

18、個迭代器set <int> T;vector <set<int> > TT;set <int> :iterator it;void XuanKeMenu();int find(int no);void Save();void DL();void MainMenu();void output();void Load();void Load2();void quit();void add();void ChaXun();void chaxun1();void chaxun2();void xuanke();void tq1();void tq2();

19、void AddStuInfo();void del();void sum();/聲明一個選課主菜單函數(shù)/聲明一個登錄界面的函數(shù)/聲明載入文件信息的函數(shù)/聲明提取信息的函數(shù)/聲明添加學生信息的函數(shù)void AddStuInfo()FILE *fp;/打開學生信息文件fp = fopen("d:student.txt", "a"); fseek(fp, 0, 2); system("cls");cout << endl << endl << endl << endl << en

20、dl;cout << "tt*”<< endl;cout << "tt*學生選課系統(tǒng)*”<< endl;cout << "tt*”<< endl <<endl;cout << "ttt 請輸入學號:" cin >> Stu.num;cout << "ttt 請輸入姓名:" cin >> Stu.nam;St = Stu.zxf = 0;fprintf(fp, "%s %s %d %dn

21、", Stu.num, Stu.nam, St, Stu.zxf); /存入文件 z.push_back(Stu); T.clear(); TT.push_back(T);/用向量指向?qū)W生信息fclose(fp); void add()A: system("cls");cout << endl << endl << endl;cout << "t*"<< endl;cout << "t*課程信息*"<< endl;cout <<

22、"t*”<< endl << endl;cout << "ttt請輸入課程編號:"cin >> S.num;cout << "ttt請輸入課程名稱:"cin >> S.name;cout << "ttt 請輸入課程性質(zhì):"cin >> S.cha;cout << "ttt 請輸入總課時:"cin >> S.Time;cout << "ttt 請輸入授課學時"

23、;cin >> S.time1;cout << "ttt請輸入上機學時(實驗學時):cin >> S.time2;cout << "ttt 請輸入學分:"cin >> S.xf;cout << "ttt請輸入開課學期:cin >> S.kkxq;v.push_back(S);Save();cout << endl << "t 是否繼續(xù)添加Y/N:"string s; cin >> s;if (s0 = 'Y&

24、#39; | s0 = 'y') goto A;else MainMenu();void Save()/保存已選的課程信息FILE *fp;fp = fopen("d:subject.txt", "w");for (unsigned int i = 0; i<v.size(); i+)fprintf(fp, "%d %s %s %d %d %d %d %sn", vi.num, ,vi.cha, vi.Time, vi.time1, vi.time2, vi.xf, vi.kkxq);fclose(

25、fp);void SaveStuInfo()/保存學生信息FILE *fp;fp = fopen("d:student.txt", "w");for (unsigned int i = 0; i<z.size(); i+)fprintf(fp, "%s %s %d %d", zi.num, zi.nam, t, zi.zxf);for (it = TTi.begin(); it != TTi.end(); it+)fprintf(fp, " %d", *it);fprintf(fp, "n

26、");fclose(fp);void quit()/退出函數(shù)exit(1);/查詢主菜單函數(shù)void ChaXun() system("cls");cout << endl << endl << endl;cout << "t*"<< endl;cout << "t*課程信息*”<< endl;cout << "t*”<< endl << endl;cout << "tttt 請選擇查

27、詢方式:ntttt1學分查詢 ntttt2課程性質(zhì)查詢 ntttt0返回主菜單nn"cout << "tttt 請選擇0-2:"int choice;cin >> choice;if (choice >= 0 && choice<3)if (choice = 1) chaxun1();if (choice = 2) chaxun2();if (choice = 0) MainMenu();else ChaXun();void chaxun1()/按學分方式查詢system("cls"); in

28、t cnt = 0;cout << endl << endl << endl;cout << "t*”<< endl;cout << "t*課程信息*”<< endl;cout << "t*”<< endl << endl;cout << "t請輸入學分:"int key;cin >> key;cout << "t課程" << "" <

29、;< " 課程 " << "課程" << "" << "總"<< "" << "授課" << "" << "實驗或" << "" << "學分" << "" << "開課" << endl;cout <&

30、lt; "t編號" << "" << " 名稱 " << "性質(zhì)" << "" << "學時"<< "" << "學時" << "" << "上機學時" << "" << "學分" << "" &

31、lt;< "學期" << endl << endl;for (unsigned int i = 0; i<v.size(); i+)(if (cnt&&cnt % 10 = 0)(cout << endl << "t="<< endl;cout << "t按任意鍵查看下一頁"_getch();system("cls");cout << endl << endl << endl;co

32、ut << "t<< endl;cout << "t*課程信息*”<< endl;cout << "t*”<< endl << endl;cout << "t 課程"<< ""<< "課程" << "課程" << "" << "總*“<< "" << &quo

33、t;授課" << "" << "實驗或" << "" << "學分"<< ""<< "開課"<< endl;cout << "t 編號" << "" << " 名稱 " << "性質(zhì)" << "" << "

34、;學時 "<< "" << "學時" << "" << "上機學時" << "" << "學分"<< ""<< "學期"<< endl << endl;)if (vi.xf = key)cnt+;printf("t %3d%12s%8s%4d%6d%8d%8d%7sn",vi.num, v

35、, vi.cha, vi.Time, vi.time1, vi.time2, vi.xf, vi.kkxq);cout << endl << "t 是否繼續(xù)查詢Y/N:"string s; cin >> s;if (s0 = 'Y' | s0 = 'y') chaxun1();else MainMenu();/按課程性質(zhì)查詢void chaxun2()(system("cls"); int cnt = 0;cout << endl << endl &l

36、t;< endl;cout << "t*"<< endl;cout << "t*課程信息*"<< endl;cout << "t*”<< endl << endl;cout << "t請輸入課程性質(zhì):"char key20;cin >> key;cout << "t 課程" << "" << " 課程 " <&l

37、t; "課程" << "" << "總"<< "" << "授課"vv "" << "實驗或" << "" << "學分"VV "" << "開課" << endl;cout vv "t 編號"vv " " vv " 名稱

38、 "vv "性質(zhì)"vv " " vv "學時"VV " " vv "學時"vv " " vv "上機學時"vv " " vv "學分"vv " " vv "學期"vv endl vv endl;for (unsigned int i = 0; ivv.size(); i+) (if (cnt&&cnt % 10 = 0)cout << en

39、dl << "t="<< endl;cout << "t按任意鍵查看下一頁"_getch();system("cls");cout << endl << endl << endl;cout << "t<< endl;cout << "t*課程信息*"<< endl;cout << "t*"<< endl << endl;cout &

40、lt;< "t 課程"<< ""<< "課程" << "課程" << "" << "總*”<< "" << "授課" << "" << "實驗或" << "" << "學分"<< ""<<

41、 "開課"<< endl;cout << "t 編號" << "" << " 名稱 " << "性質(zhì)" << "" << "學時"<< "" << "學時" << "" << "上機學時" << "" <<

42、; "學分"<< ""<< "學期"<< endl << endl;)if (!strcmp(vi.cha, key)(cnt+;printf("t %3d%12s%8s%4d%6d%8d%8d%7sn",vi.num, , vi.cha, vi.Time, vi.time1, vi.time2, vi.xf, vi.kkxq);)cout << endl << "t 是否繼續(xù)查詢Y/N:"string s;

43、cin >> s;if (s0 = 'Y' | s0 = 'y') chaxun2();else MainMenu();void tq1(char *str) /提取出選課時輸入的課程編號string t = ""int i = 0, cont = 0;while (stri)if (isalnum(stri) t += stri; elsei+;int tmp = atoi(t.c_str();if (TTF.find(tmp) != TTF.end() t = "" i+; continue; zF.zxf

44、 += vfind(tmp).xf;TTF.insert(tmp); t = "" cont+;int tmp = atoi(t.c_str();if (TTF.find(tmp) = TTF.end() cont+;TTF.insert(tmp);zF.zxf += vfind(tmp).xf;zF.cnt += cont;void xuanke() /選課函數(shù):執(zhí)行選課功能char str100;system("cls");cout << endl << endl;cout << "t*”<<

45、 endl;cout << "t< < endl;cout << "t< < endl << endl;cout << "t<< ""< < endl;cout << "t<< endl;cout << "t*課程信息*”<< endl;cout << "t*"<< endl << endl;cout << &quo

46、t;t 課程"<< ""<< "課程" << "課程" << "" << "總*課程信 息 *"*"課程" << "" << "課程" << "課程" << "" << "總"< < "授課" << &qu

47、ot;" << "實驗或" << "" << "學分" << "" << "開課"編號" << "" << "名稱" << "性質(zhì)" << "" << "學時"< < "學時" << "" <

48、;< "上機學時" << "" << "學分" << "" << "學期" << endl << endl;for (unsigned int i = 0; i<v.size(); i+)(if (i&&i % 10 = 0)(cout << endl << "t="<< endl;cout << endl << &q

49、uot;t請輸入所選課程編號:"gets(str);if (strcmp(str, "") tql(str);/, system("cls");cout << endl << endl;cout << "t*”< < "" << "授課" << "" << "實驗或" << "" << "學分"<<

50、 ""<< "開課"<< endl;cout << "t 編號" << "" << " 名稱 " << "性質(zhì)" << "" << "學時< < "" << "學時" << "" << "上機學時" << &quo

51、t;" << "學分"<< ""<<"學期"<< endl << endl; )printf("t %3d%12s%8s%4d%6d%8d%8d%7sn",vi.num, , vi.cha, vi.Time, vi.time1, vi.time2, vi.xf, vi.kkxq); cout << endl << "t;cout << endl << "t 請輸入所

52、選課程編號:" gets(str);if (strcmp(str, "") tq1(str);SaveStuInfo();cout << "tt是否繼續(xù)選課!Y/N”;string x; cin >> x;if (x0 = 'y' | x0 = 'Y') xuanke();else XuanKeMenu();int find(int no)/尋找函數(shù),找到想要的課程編號for (unsigned int i = 0; i<v.size(); i+) if (vi.num = no) retur

53、n i; void display(int i)printf("t %3d%12s%8s%4d%6d%8d%8d%7sn",vi.num, , vi.cha, vi.Time, vi.time1, vi.time2, vi.xf, vi.kkxq); /選課菜單函數(shù)void XuanKeMenu()system("cls");int choice, l = 0;cout << endl << endl;cout << "t<< endl;cout << "t*學

54、生選課*”*”<< endl;*”<< endl;cout << "t*學生選課*”<< endl;cout << "t<< endl << endl;cout << "t 姓名:"<< zF.nam << " 學號:"<< zF.num << " 已選"<< zF.cnt;cout << "門課程" << "

55、;已選課程總學分:"<< zF.zxf << endl;cout << "t="<< endl;cout << "t已選課程信息:n"cout << "t課程" << "" << " 課程 " << "課程" << "" << "總"<< "" << &

56、quot;授課" << "" << "實驗或" << "" << "學分" << "" << "開課" << endl;cout << "t編號" << "" << " 名稱 " << "性質(zhì)" << "" <<

57、"學時"<< "" << "學時" << "" << "上機學時" << "" << "學分" << "" << "學期" << endl << endl;for (it = TTF.begin(); it != TTF.end(); it+, l+)if (l&&l % 10 =

58、0)cout << endl << "t="<< endl;cout << "t1 開始選課 2刪除已選課程3下一頁0返回 請選擇0/3:" cin >> choice; getchar();if (choice = 1) xuanke();else if (choice = 2) del();else if (choice = 0) MainMenu();else if (choice = 3);else XuanKeMenu();system("cls");cout &l

59、t;< endl << endl;cout << "t*“<< endl << endl;cout << "t*”cout << "t姓名:"<< zF.nam << " 學號:"<< zF.num << " 已選<< zF.cnt;cout << "門課程" << " 已選課程總學分:"<< zF.zxf <

60、;< endl;cout << "t="<< endl;cout << "t 已選課程信息:n"cout << "t課程" << "" << " 課程 " << "課程" << "" << "總"<< "" << "授課" << "&quo

61、t; << "實驗或" << "" << "學分"<< ""<< "開課"<< endl;cout << "t編號" << "" << " 名稱 " << "性質(zhì)" << "" << "學時"<< ""

62、<< "學時" << "" << "上機學時" << "" << "學分"<< ""<< "學期"<< endl << endl;)display(find(*it);)cout << endl << "t="<< endl;cout << "t1開始選課2刪除已選課程 0

63、返回請選擇0:";cin >> choice; getchar();if (choice = 1) xuanke();else if (choice = 2) del();else if (choice = 0) MainMenu();else XuanKeMenu();)void tq2(char *str)/提取函數(shù):提前刪除時輸入的課程編號(string t =""int i = 0, cont = 0;while (stri)(if (isalnum(stri) t += stri;elseint tmp = atoi(t.c_str();se

64、t<int>:iterator _t = TTF.find(tmp); if (_t != TTF.end() t = ""TTF.erase(_t);zF.cnt-;zF.zxf -= vfind(tmp).xf;i+;int tmp = atoi(t.c_str();set<int>:iterator _t = TTF.find(tmp); if (_t != TTF.end()t = ""TTF.erase(_t);zF.cnt-;zF.zxf -= vfind(tmp).xf;/刪除已選課程信息void del()int

65、m, l = 0, k = 0;char str100;system("cls");cout << endl << endl;cout << "t*”<< endl;cout << "t*學生選課*”<< endl;*”cout << "t*學生選課*"<< endl;cout << "t<< endl << endl;cout << "t 姓名:"<<

66、; zF.nam << " 學號:"<< zF.num << " 已選"<< zF.cnt;cout << "門課程" << " 已選課程總學分:"<< zF.zxf << endl;cout << "t="<< endl;cout << "t已選課程信息:n"cout << "t課程" << "" << " 課程 " << "課程" << "" << "總"<< "" << "授課" << "" << "實驗或" << "" << "學分" << "" << "

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論