??每一个不曾起舞的日子,都是对生命的辜负??
??日出东方却落于西,人海相识却散于席??
来了来了,通讯录管理系统踏着七彩祥云飞来了,结合前面的结构体知识和分文件编写方法,我总结并码了一个带菜单的通讯录管理系统,在这篇文章中将会提到C的清空屏幕函数,嵌套结构体具体实现,简单且充实,跟着我的思路,可以很清晰的解决这个项目,再不点进来看看博主就要emo了!
目录
一、确定结构体
通讯录里应该存有联系人的信息,包括姓名、性别、电话、地址等等,通讯录也应该有长度,存的联系人要有上限。所以我们这样确定结构体:
#define Max 1000
struct person
{
string m_Name;
string m_Sex;//规定 1 为男 2为女
int m_age;
string m_phone;
string m_Address;
};
struct addressBooks
{
struct person personArray[Max];//通讯录中保存的联系人数组
int m_size = 0;//通讯录中人员个数
};
结构体 addressBooks 中定义联系人数组最大为1000,同时初始化人联系人为0。还有一点值得注意,被嵌套的结构体person 需要在 addressBooks前创建,避免出现未定义的情况。
二、简易菜单
要做通讯录管理系统,就要首先确定系统的功能。所以我确定了通讯录的增、删、改、查、显示、清空和退出 七个功能,代码上简单编写一个无返回值(void)的函数即可。
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;
}
tips:这里“ ”会让光标向后跳8个字符的位置,可以理解为将菜单“居中”显示,稍微美观一点。
三、为通讯录添加功能
代码展示: