日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

C++实现简单电话通讯录

發布時間:2023/12/20 c/c++ 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C++实现简单电话通讯录 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
  • 課程設計
  • 新增Win32GUI設計版本

主函數

#include <iostream> #include "PersonBook.h"using namespace std;int menu_select() {//顯示主菜單int c;cout << "*******************************\n";cout << "* 模擬電話簿 v1.0*\n";cout << "* *\n";cout << "* 1. 添加通信錄*\n";cout << "* 2. 刪除通信錄*\n";cout << "* 3. 修改通信錄*\n";cout << "* 4. 顯示通信錄*\n";cout << "* 5. 電話簿存盤*\n";cout << "* 6. 讀出電話簿*\n";cout << "* 7. 退出*\n";cout << "*******************************\n";cout << "\n 請輸入(1~7): ";do //鍵盤輸入循環{cin>>c;}while(c<1 || c>7);return c; } void menu() {char choice;PersonBook maillist;for(;;) //循環,直到鍵盤輸入結束代碼{try{choice = menu_select();switch(choice) //根據鍵盤輸入,調用相應的功能{case 1:maillist.Enter();break;case 2:maillist.Erase();break;case 3:maillist.Modify();break;case 4:maillist.List();break;case 5:maillist.Save();break;case 6:maillist.Load();break;case 7:throw 7;}}catch(int n){if(n==7)break;}} }int main() {menu();return 0; }

Person.h文件

#ifndef PERSON_H #define PERSON_H #include <iostream> using namespace std;class Person { private:string name,gender;int age;string phone,address; public:Person();void setName(string name);void setGender(string gender);void setAge(int age);void setPhone(string phone);void setAddress(string address);string getName();string getGender();int getAge();string getPhone();string getAddress();void show();virtual ~Person(); };#endif // PERSON_H

Person.cpp文件

#include <iostream> #include "Person.h" using namespace std;Person::Person() {name=gender=phone=address="NULL";age=-1; } void Person::setName(string name) {this->name=name; } void Person::setGender(string gender) {this->gender=gender; } void Person::setAge(int age) {this->age=age; } void Person::setPhone(string phone) {this->phone=phone; } void Person::setAddress(string address) {this->address=address; } string Person::getName() {return name; } string Person::getGender() {return gender; } int Person::getAge() {return age; } string Person::getPhone() {return phone; } string Person::getAddress() {return address; } void Person::show() {cout<<name<<"\t"<<gender<<"\t"<<age<<"\t"<<phone<<"\t"<<address<<endl; } Person::~Person() {//dtor }

PersonBook.h文件

#ifndef PERSONBOOK_H #define PERSONBOOK_H #include<vector> #include"Person.h"const int itemNum = 100; class PersonBook { public:PersonBook();void Enter();void Erase();void Modify();void Load();void Save();void List();virtual ~PersonBook();protected:private:Person item[itemNum];int num; };#endif // PERSONBOOK_H

PersonBook.cpp文件

#include "PersonBook.h" #include<iostream> #include<vector> #include<cstring> #include"Person.h" #include <iomanip> #include <fstream>using namespace std;PersonBook::PersonBook() {num=0; } void PersonBook::Enter() {string name,gender,phone,address;int age;try{cout<<" 添加聯系人"<<endl;cout<<" \t請輸入姓名:";cin>>name;if(name.length()<=0||name.length()>10)throw 1;cout<<" \t請輸入性別:";cin>>gender;/*if(gender!="男"||gender!="女")throw 2;*/cout<<" \t請輸入年齡:";cin>>age;if(age<0||age>150)throw 3;cout<<" \t請輸入手機號:";cin>>phone;if(phone.length()!=11)throw 4;cout<<" \t請輸入地址:";cin>>address;if(address.length()<=0||address.length()>30)throw 5;Person p;p.setName(name);p.setGender(gender);p.setAge(age);p.setPhone(phone);p.setAddress(address);item[num]=p;num++;cout<<endl;}catch(int n){if(n==1)cout<<" \t姓名長度在1 到 10 之間."<<endl;else if(n==2)cout<<" \t性別應輸入”男“或”女“."<<endl;else if(n==3)cout<<" \t年齡大小在0 到150 之間."<<endl;else if(n==4)cout<<" \t手機號為11 位."<<endl;else if(n==5)cout<<" \t地址長度在1 到 30 之間."<<endl;elsecout<<" \t程序運行錯誤"<<endl;cout<<"\n \t請再一次輸入."<<endl;Enter();} } void PersonBook::Erase() {string name;try{if(num==0)throw 0;cout<<" 請輸入刪除聯系人的姓名:";cin>>name;if(name.length()<=0||name.length()>10)throw 1;else{for(int i=0; i<num; i++){if(item[i].getName()==name){item[i].setName("NULL");item[i].setGender("NULL");item[i].setPhone("NULL");item[i].setAddress("NULL");item[i].setAge(-1);num--;cout<<" 刪除成功!"<<endl;cout<<endl;}else{cout<<" 未找到該聯系人!"<<endl;}}}}catch(int n){if(n==1)cout<<" 姓名長度在1 到 10 之間."<<endl;else if(n==0)cout<<" 通訊錄為空!"<<endl;elsecout<<" 程序運行錯誤"<<endl;cout<<" 請再一次輸入."<<endl;Erase();} } void PersonBook::Modify() {string name,gender;int age;string phone,address;try{if(num==0)throw 0;cout<<" 請輸入修改聯系人的姓名:";cin>>name;cout<<" 請輸入修改聯系人的性別:";cin>>gender;cout<<" 請輸入修改聯系人的年齡:";cin>>age;cout<<" 請輸入修改聯系人的手機號:";cin>>phone;cout<<" 請輸入修改聯系人的地址:";cin>>address;if(name.length()<=0||name.length()>10)throw 1;else{for(int i=0; i<num; i++){if(item[i].getName()==name){item[i].setName(name);item[i].setGender(gender);item[i].setPhone(phone);item[i].setAddress(address);item[i].setAge(age);cout<<" 修改成功!"<<endl;cout<<endl;}else{cout<<" 未找到該聯系人!"<<endl;}}}}catch(int n){if(n==1){cout<<" 姓名長度在1 到 10 之間."<<endl;cout<<" 請再一次輸入."<<endl;Modify();}else if(n==0)cout<<" 通訊錄為空!"<<endl;elsecout<<" 程序運行錯誤"<<endl;} } void PersonBook::Load() {ifstream file;int i;char fname[]="F:\\Files\\codeblockFile\\exp\\book.txt";/*cout << " 輸入讀取的文件名: ";cin >> fname;*/file.open(fname,ios::in);if(!file){cout << " 打開文件失敗!\n";cin.get();}else{num = 0;for(i=0; i<itemNum; i++){if(file&&!file.eof()){file.read(reinterpret_cast<char*>(&item[i]), sizeof(Person) );}if(item[i].getName()!="NULL"){num++;}}cout<<" 導入成功!\n"<<endl;file.close();} } void PersonBook::Save() {ofstream file;int i;char fname[]="F:\\Files\\codeblockFile\\exp\\book.txt";/*cout << " 輸入保存的文件名: ";cin >> fname;*/file.open(fname,ios::out);if(!file){cout << " 打開文件失敗!\n";cin.get();}else{for(i=0; i<itemNum; i++){if(file&&!file.eof())file.write(reinterpret_cast<const char*>(&item[i]), sizeof(Person) );}file.close();cout<<" 保存成功!\n"<<endl;} } void PersonBook::List() {cout<<" 通訊錄"<<endl;cout<<" 序號\t姓名\t性別\t年齡\t手機號\t\t地址"<<endl;for(int i=0; i<num; i++){cout<<" "<<i+1<<"\t";cout<<item[i].getName()<<"\t";cout<<item[i].getGender()<<"\t";cout<<item[i].getAge()<<"\t";cout<<item[i].getPhone()<<"\t";cout<<item[i].getAddress()<<endl;}cout<<"\n"; } PersonBook::~PersonBook() {//dtor }

總結

以上是生活随笔為你收集整理的C++实现简单电话通讯录的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲日本色图 | 91色站 | 久久久久久久久久久久久国产 | 91精品国产乱码久久久久久久久 | 男女日屁视频 | 91精选| 一本久久综合亚洲鲁鲁五月天 | 欧美在线资源 | 久久午夜精品 | 六月综合网 | 亚洲精品99 | 福利一区二区在线观看 | 黄视频网站在线观看 | 成人入口| 国产成人小视频在线观看 | а√天堂www在线天堂小说 | 国产a视频免费观看 | 成年人在线观看网站 | 国产精品中文无码 | 成人av电影免费观看 | 午夜在线精品 | 欧美xxxⅹ性欧美大片 | 欧美三级午夜理伦三级中视频 | 免费观看日韩 | 天天色天天看 | 97人妻精品视频一区 | 午夜两性| 欧美成人性色 | 亚洲欧洲一二三区 | 岛国大片在线免费观看 | 欧美一a一片一级一片 | 国产调教av| 少妇一级淫片免费放播放 | 九色精品视频 | 激情五月婷婷久久 | 欧美成人一级 | 亚洲免费色 | 国产美女91呻吟求 | 一级人爱视频 | 豆豆色成人网 | 欧美特级特黄aaaaaa在线看 | 成人娱乐网 | 色01看片网 | 日本亚洲国产 | av天堂一区 | 国产免费观看一区 | a∨视频 | 无码人妻精品一区二区三区99日韩 | 就操在线 | 日韩一区二区三区三四区视频在线观看 | 久久av一区二区三区 | 亚洲区一| 天天操天天干天天爱 | 亚洲欧美日本在线观看 | 色视频网站 | 精品毛片一区二区三区 | 日韩美女在线视频 | 免费一级黄色大片 | 97久久国产精品 | 日韩精品在线视频免费观看 | 免费观看成年人网站 | 亚洲乱熟女一区二区 | 一卡二卡在线视频 | 久久久久久久久久福利 | 热久久中文字幕 | 丝袜制服一区 | 精品国产视频 | 日本视频h | 久久91av| 成人日韩在线观看 | 精品97人妻无码中文永久在线 | 日韩天堂在线视频 | 精品少妇一区二区三区免费观看 | 久久伊人婷婷 | 天堂va蜜桃一区二区三区漫画版 | 国产又白又嫩又爽又黄 | 成人在线观看www | 欧美日韩国产亚洲沙发 | 无码人妻精品一区二区三区夜夜嗨 | 亚洲精品韩国 | 日本男人天堂 | www夜插内射视频网站 | 国产毛片a | 国产精品人人 | 视频在线观看电影完整版高清免费 | 草草在线视频 | 狠狠操天天射 | a资源在线观看 | 国产一卡二卡在线 | 神马影院一区二区三区 | 午夜免费一级片 | 都市激情国产精品 | 精品国产一区在线观看 | 欧美午夜精品久久久久久人妖 | 色婷婷综合成人av | 国产不卡免费视频 | 美女扒逼 | 成熟妇人a片免费看网站 | 精品久久久久久亚洲精品 |