版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、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 <iostream>#include <string>#include <fstream>#include <string>#include <iomanip>using namespace std;/最多提供50個(gè)學(xué)生
2、的數(shù)據(jù),可根據(jù)需要進(jìn)行更改const int MAX = 50;int count = 0;/用來(lái)統(tǒng)計(jì)學(xué)生人數(shù)class 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 Del
3、ete();/刪除某學(xué)生信息void Change();/修改某學(xué)生信息 void Search();/查詢某學(xué)生信息void 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&l
4、t;<" open error"<<endl;exit(1);/退出程序cout<<"當(dāng)學(xué)號(hào)輸入為 0 時(shí),停止輸入!"<<endl;cout<<"請(qǐng)依次輸入學(xué)生的學(xué)號(hào),姓名,性別,專業(yè),班級(jí):"<<endl;for(int i=0; i<MAX; i+)cout<<"第"<<count+1<<"個(gè)學(xué)生:"<<endl;cin>>no;if(no = "0
5、") break;/當(dāng)輸入的學(xué)號(hào)是 0 時(shí),停止錄入cin>>name>>sex>>special>>clas;count+;m_no = no;outfile<<m_no<<"t"/每錄入一個(gè)學(xué)號(hào),寫進(jìn)磁盤保存,以下同理m_name = name;outfile<<m_name<<"t"m_sex = sex;outfile<<m_sex<<"t"m_special = special;outfile&l
6、t;<m_special<<"t"m_clas = clas;outfile<<m_clas<<endl;outfile.close();/添加學(xué)生信息void Student:Add()string no, name, sex, special, clas;/以追加的方式錄入信息,直接將信息追加到以前文件的末尾ofstream outfile("student.txt",ios:app);if(!outfile) cerr<<" open error"<<endl;
7、exit(1); count+;/添加一個(gè)學(xué)生信息,當(dāng)然 count 要 +1cout<<"請(qǐng)依次輸入要添加的學(xué)生學(xué)號(hào),姓名,性別,專業(yè),班級(jí):"<<endl;cin>>no>>name>>sex>>special>>clas;m_no = no;outfile<<m_no<<"t"m_name = name;outfile<<m_name<<"t"m_sex = sex;outfile<<m
8、_sex<<"t"m_special = special;outfile<<m_special<<"t"m_clas = clas;outfile<<m_clas<<endl;outfile.close();cout<<"已添加成功!"<<endl;/從磁盤讀取數(shù)據(jù)void Read(string no,string name,string sex,string special,string clas)ifstream infile("stu
9、dent.txt",ios:in);if(!infile)cerr<<" open error"<<endl;exit(1);for(int i=0; i<count; i+)/只讀取存放在數(shù)組中 但不對(duì)其進(jìn)行相關(guān)操作infile>>noi>>namei>>sexi>>speciali>>clasi;infile.close();/判斷某學(xué)號(hào)的學(xué)生是否在數(shù)據(jù)庫(kù)中int Student:Judge(string num)string noMAX, nameMAX, sexMAX
10、, specialMAX, clasMAX;Read(no, name, sex, special, clas);/調(diào)用Read()函數(shù),獲取數(shù)據(jù),以便等下進(jìn)行相關(guān)數(shù)據(jù)的判斷for(int i=0; i<count; i+)if(num = noi)return i;/如果存在,返回其下標(biāo)break;return -1;/否則,返回-1/刪除某學(xué)生信息void Student:Delete()string num, noMAX, nameMAX, sexMAX, specialMAX, clasMAX;Read(no, name, sex, special, clas);/讀取學(xué)生所有數(shù)
11、據(jù),cout<<"請(qǐng)輸入你要?jiǎng)h除的學(xué)生學(xué)號(hào):"cin>>num;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 error"<<endl; exit(1); for(int i=0; i<count; i+)if(i != k)/把下標(biāo)不等于K(即
12、除了要?jiǎng)h的學(xué)生外)其余的數(shù)據(jù)重新寫入磁盤保存outfile<<noi<<"t"outfile<<namei<<"t"outfile<<sexi<<"t"outfile<<speciali<<"t"outfile<<clasi<<endl;outfile.close();count-;/刪除一個(gè)學(xué)生,人數(shù) -1cout<<"刪除成功!"<<endl;els
13、ecout<<"該數(shù)據(jù)庫(kù)沒有此學(xué)生!"<<endl;void Student:Change()string num, noMAX, nameMAX, sexMAX, specialMAX, clasMAX;cout<<"請(qǐng)輸入你要修改的學(xué)生學(xué)號(hào):"cin>>num;int k = Judge(num);if(k != -1)Read(no, name, sex, special, clas);/讀取學(xué)生所有數(shù)據(jù),cout<<"請(qǐng)依次輸入修改后的學(xué)生學(xué)號(hào),姓名,性別,專業(yè),班級(jí):&quo
14、t;<<endl;cin>>nok>>namek>>sexk>>specialk>>clask;/把下標(biāo)是k的學(xué)生進(jìn)行修改ofstream outfile("student.txt",ios:out);if(!outfile) cerr<<" open error"<<endl; exit(1); for(int i=0; i<count; i+)/改完后,回寫進(jìn)磁盤保存outfile<<noi<<"t"out
15、file<<namei<<"t"outfile<<sexi<<"t"outfile<<speciali<<"t"outfile<<clasi<<endl;outfile.close();cout<<"修改成功!"<<endl;elsecout<<"該數(shù)據(jù)庫(kù)沒有此學(xué)生!"<<endl;void Student:Search()string num, noM
16、AX, nameMAX, sexMAX, specialMAX, clasMAX;Read(no, name, sex, special, clas);cout<<"請(qǐng)輸入你要查找的學(xué)生學(xué)號(hào)"cin>>num;int k = Judge(num);if(k != -1)/找到該學(xué)生就打印出其信息cout<<"學(xué)號(hào)t姓名t性別t專業(yè)t班級(jí)"<<endl;cout<<nok<<"t"cout<<namek<<"t"cout&
17、lt;<sexk<<"t"cout<<specialk<<"t"cout<<clask<<endl;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
18、性別t專業(yè)t班級(jí)"<<endl;for(int i=0; i<count; i+)/后打印cout<<noi<<"t"cout<<namei<<"t"cout<<sexi<<"t"cout<<speciali<<"t"cout<<clasi<<endl;int main()int choice = -1;Student s;while(choice != 0)/除非你選擇退出,否則一直循環(huán)cout<
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年管涵施工與建筑廢棄物處理合同3篇
- 二零二五年度集裝箱購(gòu)置與綠色港口運(yùn)營(yíng)合同3篇
- 二零二五年度集資房項(xiàng)目審計(jì)與財(cái)務(wù)報(bào)表編制合同3篇
- 2024年海南經(jīng)貿(mào)職業(yè)技術(shù)學(xué)院高職單招職業(yè)適應(yīng)性測(cè)試歷年參考題庫(kù)含答案解析
- 二零二五年戶外廣告安裝工程量清單及結(jié)算合同3篇
- 吉林省農(nóng)安縣九年級(jí)物理全冊(cè)182電功率課件新版新人教版
- 2024年河南質(zhì)量工程職業(yè)學(xué)院高職單招職業(yè)技能測(cè)驗(yàn)歷年參考題庫(kù)(頻考版)含答案解析
- 2024年河南工業(yè)和信息化職業(yè)學(xué)院高職單招職業(yè)技能測(cè)驗(yàn)歷年參考題庫(kù)(頻考版)含答案解析
- 2024年河北政法職業(yè)學(xué)院高職單招職業(yè)技能測(cè)驗(yàn)歷年參考題庫(kù)(頻考版)含答案解析
- 《陋室銘》(過關(guān)檢測(cè))(原卷版)-2024年中考語(yǔ)文課內(nèi)39篇文言文閱讀
- 福建省福州市2023-2024學(xué)年高一上學(xué)期期末考試物理試卷 附答案
- 2024-2030年中國(guó)IT運(yùn)營(yíng)管理(ITOM)軟件行業(yè)市場(chǎng)發(fā)展趨勢(shì)與前景展望戰(zhàn)略研究報(bào)告
- 圍欄護(hù)欄施工合同協(xié)議書
- 2021版血液凈化標(biāo)準(zhǔn)操作規(guī)程考核試題及答案
- 第5課《弘揚(yáng)勞動(dòng)精神勞模精神工匠精神》第1框《理解勞動(dòng)精神勞模精神工匠精神》-【中職專用】《職業(yè)道德與法治》同步課堂課件
- 2025美國(guó)國(guó)防部財(cái)年美軍武器裝備采購(gòu)預(yù)算中文版
- 70歲換證三力測(cè)試題附答案
- 中華醫(yī)學(xué)會(huì)利益沖突聲明模板
- 帶你玩轉(zhuǎn)VR虛擬現(xiàn)實(shí)智慧樹知到期末考試答案2024年
- DAM10KW中波發(fā)射機(jī)各單元的檢測(cè)與調(diào)整指導(dǎo)示意圖
評(píng)論
0/150
提交評(píng)論