學(xué)生信息管理系統(tǒng)C++代碼_第1頁(yè)
學(xué)生信息管理系統(tǒng)C++代碼_第2頁(yè)
學(xué)生信息管理系統(tǒng)C++代碼_第3頁(yè)
學(xué)生信息管理系統(tǒng)C++代碼_第4頁(yè)
學(xué)生信息管理系統(tǒng)C++代碼_第5頁(yè)
已閱讀5頁(yè),還剩9頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上1. 程序執(zhí)行后的部分效果1.1項(xiàng)目主菜單效果圖1.2初始化信息,第一次對(duì)信息的錄入1.3添加學(xué)生信息1.4刪除某學(xué)生信息1.5修改某學(xué)生信息1.6查詢某學(xué)生信息1.7顯示全部學(xué)生信息源代碼:/*把StudentData.cpp(源代碼) 和 student.txt(數(shù)據(jù)存放處)放在同一個(gè)文件夾下*/#include #include #include #include #include using namespace std;/最多提供50個(gè)學(xué)生的數(shù)據(jù),可根據(jù)需要進(jìn)行更改const int MAX = 50;int count = 0;/用來(lái)統(tǒng)計(jì)學(xué)生人數(shù)class

2、Student public:void Set();/初始化信息,第一次對(duì)信息的錄入void Add();/添加學(xué)生信息/從磁盤讀取數(shù)據(jù)以便 進(jìn)行 數(shù)據(jù)的操作,方便再重寫進(jìn)磁盤friend void Read(string no,string name,string sex,string special,string clas);int Judge(string num);/判斷 num 是否在學(xué)生信息數(shù)據(jù)庫(kù)中(注意它有一個(gè)參數(shù),并且有一個(gè)int型的返回值)void Delete();/刪除某學(xué)生信息void Change();/修改某學(xué)生信息 void Search();/查詢某學(xué)生信息vo

3、id Display();/顯示全部學(xué)生信息private:string m_no;string m_name;string m_sex;/m_ 指的是成員變量(member)string m_special;string m_clas;void Student:Set()string no, name, sex, special, clas;ofstream outfile(student.txt); /打開文件if(!outfile)cerr open errorendl;exit(1);/退出程序cout當(dāng)學(xué)號(hào)輸入為 0 時(shí),停止輸入!endl;cout請(qǐng)依次輸入學(xué)生的學(xué)號(hào),姓名,性別,

4、專業(yè),班級(jí):endl;for(int i=0; iMAX; i+)cout第count+1個(gè)學(xué)生:no;if(no = 0) break;/當(dāng)輸入的學(xué)號(hào)是 0 時(shí),停止錄入cinnamesexspecialclas;count+;m_no = no;outfilem_not;/每錄入一個(gè)學(xué)號(hào),寫進(jìn)磁盤保存,以下同理m_name = name;outfilem_namet;m_sex = sex;outfilem_sext;m_special = special;outfilem_specialt;m_clas = clas;outfilem_clasendl;outfile.close();/

5、添加學(xué)生信息void Student:Add()string no, name, sex, special, clas;/以追加的方式錄入信息,直接將信息追加到以前文件的末尾ofstream outfile(student.txt,ios:app);if(!outfile) cerr open errorendl; exit(1); count+;/添加一個(gè)學(xué)生信息,當(dāng)然 count 要 +1cout請(qǐng)依次輸入要添加的學(xué)生學(xué)號(hào),姓名,性別,專業(yè),班級(jí):nonamesexspecialclas;m_no = no;outfilem_not;m_name = name;outfilem_namet

6、;m_sex = sex;outfilem_sext;m_special = special;outfilem_specialt;m_clas = clas;outfilem_clasendl;outfile.close();cout已添加成功!endl;/從磁盤讀取數(shù)據(jù)void Read(string no,string name,string sex,string special,string clas)ifstream infile(student.txt,ios:in);if(!infile)cerr open errorendl;exit(1);for(int i=0; inoina

7、meisexispecialiclasi;infile.close();/判斷某學(xué)號(hào)的學(xué)生是否在數(shù)據(jù)庫(kù)中int Student:Judge(string num)string noMAX, nameMAX, sexMAX, specialMAX, clasMAX;Read(no, name, sex, special, clas);/調(diào)用Read()函數(shù),獲取數(shù)據(jù),以便等下進(jìn)行相關(guān)數(shù)據(jù)的判斷for(int i=0; icount; i+)if(num = noi)return i;/如果存在,返回其下標(biāo)break;return -1;/否則,返回-1/刪除某學(xué)生信息void Student:D

8、elete()string num, noMAX, nameMAX, sexMAX, specialMAX, clasMAX;Read(no, name, sex, special, clas);/讀取學(xué)生所有數(shù)據(jù),coutnum;int k = Judge(num);/定義一個(gè)k來(lái)接收J(rèn)udge()的返回值,等下用來(lái)判斷該num是否存在if(k != -1)/如果k不等于-1, 表示要?jiǎng)h除的學(xué)生存在ofstream outfile(student.txt);if(!outfile)cerr open errorendl; exit(1); for(int i=0; icount; i+)if

9、(i != k)/把下標(biāo)不等于K(即除了要?jiǎng)h的學(xué)生外)其余的數(shù)據(jù)重新寫入磁盤保存outfilenoit;outfilenameit;outfilesexit;outfilespecialit;outfileclasiendl;outfile.close();count-;/刪除一個(gè)學(xué)生,人數(shù) -1cout刪除成功!endl;elsecout該數(shù)據(jù)庫(kù)沒有此學(xué)生!endl;void Student:Change()string num, noMAX, nameMAX, sexMAX, specialMAX, clasMAX;coutnum;int k = Judge(num);if(k != -1

10、)Read(no, name, sex, special, clas);/讀取學(xué)生所有數(shù)據(jù),cout請(qǐng)依次輸入修改后的學(xué)生學(xué)號(hào),姓名,性別,專業(yè),班級(jí):noknameksexkspecialkclask;/把下標(biāo)是k的學(xué)生進(jìn)行修改ofstream outfile(student.txt,ios:out);if(!outfile) cerr open errorendl; exit(1); for(int i=0; icount; i+)/改完后,回寫進(jìn)磁盤保存outfilenoit;outfilenameit;outfilesexit;outfilespecialit;outfileclasi

11、endl;outfile.close();cout修改成功!endl;elsecout該數(shù)據(jù)庫(kù)沒有此學(xué)生!endl;void Student:Search()string num, noMAX, nameMAX, sexMAX, specialMAX, clasMAX;Read(no, name, sex, special, clas);coutnum;int k = Judge(num);if(k != -1)/找到該學(xué)生就打印出其信息cout學(xué)號(hào)t姓名t性別t專業(yè)t班級(jí)endl;coutnokt;coutnamekt;coutsexkt;coutspecialkt;coutclaskend

12、l;elsecout該數(shù)據(jù)庫(kù)沒有此學(xué)生!endl;/顯示學(xué)生的所有信息void Student:Display()string noMAX, nameMAX, sexMAX, specialMAX, clasMAX;Read(no, name, sex, special, clas);/先讀取cout學(xué)號(hào)t姓名t性別t專業(yè)t班級(jí)endl;for(int i=0; icount; i+)/后打印coutnoit;coutnameit;coutsexit;coutspecialit;coutclasiendl;int main()int choice = -1;Student s;while(ch

13、oice != 0)/除非你選擇退出,否則一直循環(huán)coutnttt-學(xué)生信息管理系統(tǒng)-nn;coutttt| 1.錄入學(xué)生信息 |n;coutttt| 2.添加一個(gè)信息 |n;coutttt| 3.刪除一個(gè)信息 |n;coutttt| 4.修改學(xué)生信息 |n;coutttt| 5.查詢學(xué)生信息 |n;coutttt| 6.顯示學(xué)生信息 |n;coutttt| 0.退出 系統(tǒng) |n;coutchoice;switch(choice)case 1:s.Set();break;case 2:s.Add();break;case 3:s.Delete();break;case 4:s.Change();break;case 5:s.Search();break;case 6:s.Display();break;case 0:break;defaul

溫馨提示

  • 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論