国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁 > news >正文

html網(wǎng)站建設(shè)中源代碼免費(fèi)聊天軟件

html網(wǎng)站建設(shè)中源代碼,免費(fèi)聊天軟件,臺(tái)州超值營銷型網(wǎng)站建設(shè)地址,經(jīng)濟(jì)型網(wǎng)站建設(shè)C自學(xué)精簡教程 目錄(必讀) 作業(yè)目標(biāo): 這個(gè)作業(yè)中,你需要綜合運(yùn)用之前文章中的知識(shí),來解決一個(gè)相對(duì)完整的應(yīng)用程序。 作業(yè)描述: 1 在這個(gè)作業(yè)中你需要在文本文件中存儲(chǔ)學(xué)生通訊錄的信息,并在程序啟動(dòng)的時(shí)候加載這些…

C++自學(xué)精簡教程 目錄(必讀)

作業(yè)目標(biāo):

這個(gè)作業(yè)中,你需要綜合運(yùn)用之前文章中的知識(shí),來解決一個(gè)相對(duì)完整的應(yīng)用程序。

作業(yè)描述:

1 在這個(gè)作業(yè)中你需要在文本文件中存儲(chǔ)學(xué)生通訊錄的信息,并在程序啟動(dòng)的時(shí)候加載這些數(shù)據(jù)到內(nèi)存中。

2 在程序運(yùn)行過程中允許用戶用鍵盤輸入信息來完成對(duì)通訊錄數(shù)的增刪改查。

交互示例:

開始代碼

開始代碼不是完整的代碼,需要你填寫一部分代碼,使之完整。

答案在本文最后。

當(dāng)你填寫完整之后,運(yùn)行程序和示例的交互輸出一致,就算完成了這個(gè)作業(yè)

開始代碼:

#include <iostream>
#include <iostream>
#include <iomanip>
#include <string>
#include <vector>
#include <fstream>
using namespace std;class Person
{
public:friend ostream& operator<<(ostream& os, const Person& _person);friend istream& operator>>(istream& is, Person& _person);public:string m_id;string m_name;string m_tel;
};ostream& operator<<(ostream& os, const Person& person)
{os << left << setw(5) << person.m_id << setw(15) << person.m_name << setw(20) << person.m_tel;return os;
}istream& operator>>(istream& is, Person& person)
{//(1) your code // 使用輸入操作符重載,將流中的數(shù)據(jù),提取賦值給person對(duì)象的成員變量中//see https://zhuanlan.zhihu.com/p/412724745return is;
}class PersonManager
{
public:void InputOnePerson(void);bool LoadAllPersonFromFile(const string& fileName);bool DeletePerson(void);bool QueryPersonByName() const;bool QueryPersonByTel() const;void ShowAllPerson(void) const;bool SaveAllPersonToFile(void) const;private:vector<Person> m_allPerson;
};bool PersonManager::DeletePerson(void)
{cout << "Please input person id for delete:";string id;cin >> id;for (auto itr = m_allPerson.begin(); itr != m_allPerson.cend(); ++itr){if (itr->m_id == id){//(2) your code// 容器的erase方法支持刪除容器的元素時(shí),傳入指向元素的迭代器//see https://zhuanlan.zhihu.com/p/441293600}}return false;
}
bool PersonManager::QueryPersonByName() const
{//注意該函數(shù)需要返回bool值cout << "Please input name for query:";string name;cin >> name;for (auto itr = m_allPerson.cbegin(); itr != m_allPerson.cend(); ++itr){if (itr->m_name == name){cout << "Find:" << endl;//(3) your code//see https://zhuanlan.zhihu.com/p/376440190//see https://zhuanlan.zhihu.com/p/376446724}}cout << "not found " << name << endl;return false;
}
bool PersonManager::QueryPersonByTel() const
{cout << "Please input tel for query:";string tel;cin >> tel;for (auto itr = m_allPerson.cbegin(); itr != m_allPerson.cend(); ++itr){if (itr->m_tel == tel){cout << "Find:" << endl;//(4) your code//see https://zhuanlan.zhihu.com/p/376440190//see https://zhuanlan.zhihu.com/p/376446724}}cout << "not found " << tel << endl;return false;
}void PersonManager::ShowAllPerson(void) const
{cout << "All Person:" << endl;cout << left << setw(5) << "id" << setw(15) << "name" << setw(20) << "tel" << endl;for (auto& item : m_allPerson){cout << item << endl;}
}
bool PersonManager::SaveAllPersonToFile(void) const
{ofstream fout("data_saved.txt");//下面的常量迭代器 cbegin cend 中的 c 指的是 const的意思,表示不可以修改容器的元素for (auto itr = m_allPerson.cbegin(); itr != m_allPerson.cend(); ++itr){//(5) your code //see https://zhuanlan.zhihu.com/p/262508774}return true;
}bool PersonManager::LoadAllPersonFromFile(const string& fileName)
{ifstream fin(fileName);if (!fin){cout << "load data failed . file " << fileName << " not exits." << endl;return false;}Person person;while (fin >> person){m_allPerson.push_back(person);}cout << "load data from file success." << endl;return true;
}void PersonManager::InputOnePerson(void)
{cout << "Please input one person:" << endl;cout << "Please input id:";string id;cin >> id;Person person;person.m_id = id;for (auto itr = m_allPerson.cbegin(); itr != m_allPerson.cend(); ++itr){if (itr->m_id == id){cout << id << " already existed! Save failed." << endl;return;}}cout << "Please input name:";string name;cin >> name;person.m_name = name;cout << "Please input tel:";string tel;cin >> tel;person.m_tel = tel;cout << "Input finished, save successed." << endl;m_allPerson.push_back(person);
}int main(int argv, char* argc[])
{PersonManager personMgr;personMgr.LoadAllPersonFromFile("input_data.txt");personMgr.ShowAllPerson();while(true){cout<<"input a commond : "<<endl;cout<<"1 [AddPerson]"<<endl;cout<<"2 [ShowAllPerson]"<<endl;cout<<"3 [QueryPerson by name]"<<endl;cout<<"4 [QueryPerson by tel]"<<endl;cout<<"5 [SaveAllPersonToFile]"<<endl;cout<<"6 [DeletePerson]"<<endl;cout<<"0 [ExitAndSaveChange]"<<endl;int commond;cin>>commond;switch(commond){case 1: { personMgr.InputOnePerson(); break;}case 2: { personMgr.ShowAllPerson(); break;}case 3: { personMgr.QueryPersonByName(); break;}case 4: { personMgr.QueryPersonByTel(); break;}case 5: { personMgr.SaveAllPersonToFile(); break;}case 6: { personMgr.DeletePerson(); break;}case 0: { personMgr.SaveAllPersonToFile(); return 0;}default:{ cout<<"System Exit."<<endl; return 0;}}}return 0;
}

輸入文件

input_data.txt

文件內(nèi)容:

2    zhangsan2      13788889992         
3    zhangsan3      13788889993         
4    zhangsan4      13788889994         
5    wanger         13333333333      

運(yùn)行與輸出

load data from file success.
All Person:
id   name           tel
2    zhangsan2      13788889992
3    zhangsan3      13788889993
4    zhangsan4      13788889994
5    wanger         13333333333
input a commond :
1 [AddPerson]
2 [ShowAllPerson]
3 [QueryPerson by name]
4 [QueryPerson by tel]
5 [SaveAllPersonToFile]
6 [DeletePerson]
0 [ExitAndSaveChange]
2
All Person:
id   name           tel
2    zhangsan2      13788889992
3    zhangsan3      13788889993
4    zhangsan4      13788889994
5    wanger         13333333333
input a commond :
1 [AddPerson]
2 [ShowAllPerson]
3 [QueryPerson by name]
4 [QueryPerson by tel]
5 [SaveAllPersonToFile]
6 [DeletePerson]
0 [ExitAndSaveChange]
1
Please input one person:
Please input id:1
Please input name:zhangsan
Please input tel:13344445555
Input finished, save successed.
input a commond :
1 [AddPerson]
2 [ShowAllPerson]
3 [QueryPerson by name]
4 [QueryPerson by tel]
5 [SaveAllPersonToFile]
6 [DeletePerson]
0 [ExitAndSaveChange]
2
All Person:
id   name           tel
2    zhangsan2      13788889992
3    zhangsan3      13788889993
4    zhangsan4      13788889994
5    wanger         13333333333
1    zhangsan       13344445555
input a commond :
1 [AddPerson]
2 [ShowAllPerson]
3 [QueryPerson by name]
4 [QueryPerson by tel]
5 [SaveAllPersonToFile]
6 [DeletePerson]
0 [ExitAndSaveChange]
3
Please input name for query:zhangsan
Find:
1    zhangsan       13344445555
input a commond :
1 [AddPerson]
2 [ShowAllPerson]
3 [QueryPerson by name]
4 [QueryPerson by tel]
5 [SaveAllPersonToFile]
6 [DeletePerson]
0 [ExitAndSaveChange]
3
Please input name for query:zhang
not found zhang
input a commond :
1 [AddPerson]
2 [ShowAllPerson]
3 [QueryPerson by name]
4 [QueryPerson by tel]
5 [SaveAllPersonToFile]
6 [DeletePerson]
0 [ExitAndSaveChange]
4
Please input tel for query:13344445555
Find:
1    zhangsan       13344445555
input a commond :
1 [AddPerson]
2 [ShowAllPerson]
3 [QueryPerson by name]
4 [QueryPerson by tel]
5 [SaveAllPersonToFile]
6 [DeletePerson]
0 [ExitAndSaveChange]
4
Please input tel for query:1334444
not found 1334444
input a commond :
1 [AddPerson]
2 [ShowAllPerson]
3 [QueryPerson by name]
4 [QueryPerson by tel]
5 [SaveAllPersonToFile]
6 [DeletePerson]
0 [ExitAndSaveChange]
6
Please input person id for delete:4
input a commond :
1 [AddPerson]
2 [ShowAllPerson]
3 [QueryPerson by name]
4 [QueryPerson by tel]
5 [SaveAllPersonToFile]
6 [DeletePerson]
0 [ExitAndSaveChange]
2
All Person:
id   name           tel
2    zhangsan2      13788889992
3    zhangsan3      13788889993
5    wanger         13333333333
1    zhangsan       13344445555
input a commond :
1 [AddPerson]
2 [ShowAllPerson]
3 [QueryPerson by name]
4 [QueryPerson by tel]
5 [SaveAllPersonToFile]
6 [DeletePerson]
0 [ExitAndSaveChange]
5
input a commond :
1 [AddPerson]
2 [ShowAllPerson]
3 [QueryPerson by name]
4 [QueryPerson by tel]
5 [SaveAllPersonToFile]
6 [DeletePerson]
0 [ExitAndSaveChange]
0

最終保存數(shù)據(jù)到文件 data_saved.txt

文件 data_saved.txt 的內(nèi)容為:

2    zhangsan2      13788889992         
3    zhangsan3      13788889993         
5    wanger         13333333333         
1    zhangsan       13344445555       

你的結(jié)果也是這樣嗎?

答案在此

C++自學(xué)精簡教程 全部答案

學(xué)生完成該作業(yè)展示

另一個(gè)學(xué)生實(shí)現(xiàn)的效果

http://aloenet.com.cn/news/43411.html

相關(guān)文章:

  • 北京的網(wǎng)站建設(shè)公司廣州白云區(qū)最新信息
  • 濟(jì)南網(wǎng)站優(yōu)化公司電話評(píng)論優(yōu)化
  • 鎮(zhèn)江建工建設(shè)集團(tuán)網(wǎng)站百度搜索量怎么查
  • 一等一網(wǎng)站建設(shè)seo搜索排名優(yōu)化方法
  • 重慶時(shí)時(shí)彩在線網(wǎng)站制作百度提交收錄
  • 屬于垂直型b2b網(wǎng)站的有青島官網(wǎng)seo
  • 網(wǎng)站推廣策劃書金華百度推廣公司
  • 建設(shè)銀行 成都 招聘網(wǎng)站哈爾濱網(wǎng)絡(luò)seo公司
  • 溫州網(wǎng)站建設(shè)方案維護(hù)訊展網(wǎng)站優(yōu)化推廣
  • 制作網(wǎng)站建設(shè)策劃方案手機(jī)推廣app
  • 做網(wǎng)站每年都要費(fèi)用的嗎微商引流推廣
  • 網(wǎng)站建設(shè)環(huán)境分析百度推廣一般多少錢
  • 曲阜做網(wǎng)站最佳磁力搜索天堂
  • 2014做網(wǎng)站百度移動(dòng)端點(diǎn)贊排名軟件
  • 外貿(mào)軟件定制域名查詢seo
  • 做網(wǎng)站排名的公司有哪些最好的營銷策劃公司
  • 聾啞工作設(shè)計(jì)做網(wǎng)站免費(fèi)長尾詞挖掘工具
  • 怎樣做代刷網(wǎng)站百度廣告投放平臺(tái)叫什么
  • 電子類網(wǎng)站模板昆明百度推廣開戶費(fèi)用
  • 廣州做網(wǎng)站多百度小說排行榜前十名
  • wordpress的列表汕頭seo公司
  • 西安定制網(wǎng)站建設(shè)中國知名網(wǎng)站排行榜
  • 四川疫情最新消息2019網(wǎng)站推廣優(yōu)化技巧
  • 如何做網(wǎng)站大管家如何優(yōu)化推廣網(wǎng)站
  • 陜西西安網(wǎng)站建設(shè)公司排名重慶seo排名技術(shù)
  • 無錫做網(wǎng)站哪里好成都全網(wǎng)營銷推廣
  • 織夢(mèng)做電子商務(wù)網(wǎng)站小紅書seo排名帝搜軟件
  • 什么是網(wǎng)站建設(shè)和維護(hù)廈門seo小謝
  • 成功營銷案例免費(fèi)seo營銷優(yōu)化軟件下載
  • 做外貿(mào)網(wǎng)站要注意什么查企業(yè)信息查詢平臺(tái)