200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > c++通讯录控制台小程序

c++通讯录控制台小程序

时间:2022-09-27 16:43:59

相关推荐

c++通讯录控制台小程序

#include <iostream>#include <string>using namespace std;#define Max 1000// 菜单选项void showMenu(){cout<<"************************"<<endl;cout<<"***** 1、添加联系人 *****"<<endl;cout<<"***** 2、显示联系人 *****"<<endl;cout<<"***** 3、删除联系人 *****"<<endl;cout<<"***** 4、查找联系人 *****"<<endl;cout<<"***** 5、修改联系人 *****"<<endl;cout<<"***** 6、清空联系人 *****"<<endl;cout<<"***** 0、退出联系人 *****"<<endl;cout<<"*************************"<<endl;}// 联系人结构体struct Person{string m_Name;int m_sex;int m_age;string m_Phone;string m_Addr;};// 通讯录的结构体struct Addressbooks{// 能存多少个人struct Person personArray[Max];// 当前个数int m_Size;};// 添加联系人void addPerson(Addressbooks *abs){// 判断通讯录满了吗if (abs->m_Size==Max){cout<<"通讯录满了"<<endl;return;}else{// 添加具体联系人// 姓名cout<<"请输入姓名"<<endl;string name;cin>>name;abs->personArray[abs->m_Size].m_Name=name;// 性别int sex=0;while (true){cout<<"请输入性别"<<endl;cout<<"1-------男"<<endl;cout<<"2-------女"<<endl;cin>>sex;if (sex==1||sex==2){abs->personArray[abs->m_Size].m_sex=sex;break;}else{cout<<"输入错误重新输入"<<endl;}}// 年龄int age=0;cout<<"请输入年龄"<<endl;cin>>age;abs->personArray[abs->m_Size].m_age=age;// 电话string phone;cout<<"请输入电话"<<endl;cin>>phone;abs->personArray[abs->m_Size].m_Phone=phone;// 住址string addr;cout<<"请输入地址"<<endl;cin>>addr;abs->personArray[abs->m_Size].m_Addr=addr;abs->m_Size++;cout<<"添加成功了"<<endl;system("pause");system("cls");}}// 显示联系人void showPerson(Addressbooks *abs){// 判断通讯录是否为0if (abs->m_Size==0){cout<<"当前记录为空"<<endl;}else{for (int i = 0; i <abs->m_Size; i++){cout<<"姓名"<<abs->personArray[i].m_Name<<endl;cout<<"年龄"<<abs->personArray[i].m_age<<endl;cout<<"性别"<<abs->personArray[i].m_sex<<endl;cout<<"电话"<<abs->personArray[i].m_Phone<<endl;cout<<"地址"<<abs->personArray[i].m_Addr<<endl;}}system("pause");system("cls");}// 是不是存在int isExist(Addressbooks *abs,string name){// 检测是不是存在for (int i = 0; i <abs->m_Size; i++){if (abs->personArray[i].m_Name==name){return i ;}}return -1;}// 删除联系人void deletePerson(Addressbooks *abs){cout<<"请输入要删除的联系人"<<endl;string name;cin>>name;int ret=isExist(abs,name);if (ret!=-1){// 前移删除数据for (int i=ret;i<abs->m_Size;i++){abs->personArray[i]=abs->personArray[i+1];}abs->m_Size--;cout<<"删除成功"<<endl;}else{cout<<"查无此人"<<endl;}system("pause");system("cls");}// 查找联系人void findPerson(Addressbooks *abs){//string name;cout<<"请输入要查的联系人"<<endl;cin>>name;int ret=isExist(abs,name);if (ret!=-1){cout<<"姓名 "<<abs->personArray[ret].m_Name<<endl;cout<<"年龄 "<<abs->personArray[ret].m_age<<endl;cout<<"性别 "<<abs->personArray[ret].m_sex<<endl;cout<<"电话 "<<abs->personArray[ret].m_Phone<<endl;cout<<"地址 "<<abs->personArray[ret].m_Addr<<endl;}else{cout<<"查无此人"<<endl;}system("pause");system("cls");}// 修改指定联系人信息void modifyPerson(Addressbooks *abs){string name;cout<<"请输入修改的联系人"<<endl;cin>>name;int ret=isExist(abs,name);if (ret!=-1){// 添加具体联系人// 姓名cout<<"请输入姓名"<<endl;string name;cin>>name;abs->personArray[ret].m_Name=name;// 性别int sex=0;while (true){cout<<"请输入性别"<<endl;cout<<"1-------男"<<endl;cout<<"2-------女"<<endl;cin>>sex;if (sex==1||sex==2){abs->personArray[ret].m_sex=sex;break;}else{cout<<"输入错误重新输入"<<endl;}}// 年龄int age=0;cout<<"请输入年龄"<<endl;cin>>age;abs->personArray[ret].m_age=age;// 电话string phone;cout<<"请输入电话"<<endl;cin>>phone;abs->personArray[ret].m_Phone=phone;// 住址string addr;cout<<"请输入地址"<<endl;cin>>addr;abs->personArray[ret].m_Addr=addr;cout<<"修改成功了"<<endl;}else{cout<<"查无此人"<<endl;}system("pause");system("cls");}// 清空void cleanPerson(Addressbooks *abs){abs->m_Size=0;cout<<"清空成功"<<endl;system("pause");system("cls");}int main(){// 创建结构体Addressbooks abs;abs.m_Size=0;while (true){int select =0;//显示菜单showMenu();cin>>select;// cout<<select<<endl;switch(select){case 1:/* 添加联系人*/addPerson(&abs);break;case 2:/* 显示联系人 */showPerson(&abs);break;case 3:/* 删除联系人 */deletePerson(&abs);break;case 4:/* 查找联系人 */findPerson(&abs);break;case 5:/* 修改联系人 */modifyPerson(&abs);break;case 6:/* 清空联系人 */cleanPerson(&abs);break;case 0:/* 退出 */cout<<"欢迎下次使用"<<endl;system("pause") ;return 0;break;default:break;}}system("pause") ;return 0;}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。