目录
创建
在第一步编写一个分文件,将打印通讯录功能扔了进去
#pragma once
#include <iostream>
#include<string>
using namespace std;
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;
}
第二步,在mian中体现
#include <iostream>
#include<string>
using namespace std;
#include"print_mulu.h"
void showMenu();
int main()
{
showMenu();
搭设架构
第二,根据功能要求,搭设架构
int main()
{
showMenu();
int user_select = 0; //准备变量接收用户的输入
while (true)
{
showMenu();
cin >> user_select; //接收用户的输入
switch (user_select)
{
case 1: //添加联系人
break;
case 2: //显示联系人
break;
case 3: //删除联系人
break;
case 4: //查找联系人
break;
case 5: //修改联系人
break;
case 6: //清空联系人
break;
case 0: //退出通讯录
cout << "欢迎下次使用" << endl;
system("pause");
return 0;
break;
default:
break;
}
}
system("pause");
return 0;
}
顺手完成退出功能的实现,
case 0: //退出通讯录
cout << "欢迎下次使用" << endl;
system("pause");
return 0;
break;
default:
break;
请注意,只有输入0,才会退出哦
第三步,搭建联系人的功能
联系人结构体
struct lianxiren //联系人结构体
{
//姓名
string m_name;
//年龄
int age;
//住址
string m_addr;
//电话
string m_phone;
};
通讯录结构体
#define max 100 //宏常量
struct tongxunlu
{
//通讯录保留联系人的数组
struct lianxiren lianxiren_arry [max];
//通讯录当前记录联系人的个数
int m_size;
};
封装通讯录添加功能。
void add_lianxiren(tongxunlu *txl)
{
if (txl->m_size == max) //判断通讯录是否满
{
cout << "通讯录已满,请删除部分通讯录!" << endl;
return ;
}
else
{
//添加性别、姓名、年龄、电话、地址
string name;
cout << "请输入一个姓名: "<<endl;
cin >> name;
txl->lianxiren_arry[txl->m_size].m_name = name; //使用值传递,将信息传到m_name中
cout << "请输入性别: " << endl;
cout << "1————男 2————女" << endl;
int sex = 0;
while (true)//为了确保信息输入正确,一直为真循环输入
{
if (sex == 1 || sex == 2) // 不正确输入就一直循环
{
txl->lianxiren_arry[txl->m_size].m_sex = sex;
break; //正确输入就退出
}
else
{
cout << "请根据提示重新输入性别信息。 " << endl;
}
}
cout << "请输入年龄: (0-110之间)" << endl;
int age = 0;
cin >> age;
while (true)
{
if (age >= 0 || age <= 11)
{
txl->lianxiren_arry[txl->m_size].m_age = age;
break;
}
else
{
cout << "请根据提示重新输入年龄信息。 " << endl;
}
}
cout << "请输入电话:" << endl;
string phone;
cin >> phone;
txl->lianxiren_arry[txl->m_size].m_phone = phone;
cout << "请输入电话:" << endl;
string dizhi;
cin >> dizhi;
txl->lianxiren_arry[txl->m_size].m_addr = dizhi;
//更新通讯录人说
txl->m_size++;
cout << "恭喜您添加成功!!" << endl;
system("pause");
system("cls");
}
}
1、首先判断通讯录是否已满?满了拒绝添加,使用if判断实