论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
IT评测·应用市场-qidao123.com
»
论坛
›
软件与程序人生
›
程序人生
›
C++实现简朴的通讯录体系
C++实现简朴的通讯录体系
嚴華
论坛元老
|
2024-10-25 16:48:08
|
显示全部楼层
|
阅读模式
楼主
主题
1049
|
帖子
1049
|
积分
3147
需求
利用C++写一个简朴的通讯录体系,具体需求如下:
体系中必要实现的功能如下:
添加接洽人:向通讯录中添加新人,信息包罗(姓名、性别、年事、接洽电话、家庭住址)最多记录100人
显示接洽人:显示通讯录中全部接洽人的信息
删除接洽人:按照姓名进行删除指定接洽人
查找接洽人:按照姓名查看指定接洽人信息
修改接洽人:按照姓名重新修改指定接洽人
清空接洽人:清空通讯录中全部信息
退出通讯录:退出当前利用的通讯录
体系展示
结构体的构建
结构体的构建
步伐中利用两个结构体,一个是接洽人的结构体,此结构体针对通讯录中的接洽人这个对象来进行构建
其包罗了序号、姓名、性别、年事、接洽电话、家庭住址这几个属性;第二个结构体是针对通讯录这个
对象来进行构建,其包罗了一个存放接洽人对象的数组和通讯录的规格这两个属性。
来看具体代码:
struct Linkman // 联系人结构体
{
int num;
string name;
string sexy;
int age;
string number;
string adress;
};
struct Addressbook //通讯录结构体
{
struct Linkman personarr[MAX]; //MAX采用宏定义
int size;
};
复制代码
主界面
主界面
主界面选择了在主函数中进行定义,其实很简朴,就是输出需求中的功能与其对应的操作序号供用户进行选择,
利用一个switch语句根据用户输入的操作序号调用相对应的功能函数。再用一个死循环控制,保证用户的持续操作。
在主函数中还要创建一个通讯录对象,并初始化其size的值为0.
来看具体代码:
int main()
{
struct Addressbook abs; //创建结构体对象
abs.size = 0; //初始化size的值
// 做主界面
while (true)
{
cout << "**********" << endl;
cout << "******欢迎进入系统******" << endl;
cout << "******请选择您的操作******" << endl;
cout << "******1、添加联系人******" << endl;
cout << "******2、显示联系人******" << endl;
cout << "******3、删除联系人******" << endl;
cout << "******4、查找联系人******" << endl;
cout << "******5、修改联系人******" << endl;
cout << "******6、清空联系人******" << endl;
cout << "******0、退出通讯录******" << endl;
int op;
cin >> op;
switch (op)
{
case 1:
cout << "添加联系人" << endl;
AddLinkman(&abs);
break;
case 2:
cout << "显示联系人" << endl;
showLinkman(&abs);
break;
case 3:
cout << "删除联系人" << endl;
deleteLinkman(&abs);
break;
case 4:
cout << "查找联系人" << endl;
findPerson(&abs);
break;
case 5:
cout << "修改联系人" << endl;
updataPerson(&abs);
break;
case 6:
cout << "清空联系人" << endl;
clearAddressbook(&abs);
break;
case 0:
cout << "退出通讯录" << endl;
return 0;
break;
default:
cout << "操作错误!" << endl;
break;
}
}
}
复制代码
添加接洽人
添加接洽人
创建一个无返回值函数用于实现添加接洽人功能,其形参是结构体指针。函数中首先判断通讯录是否已经达到人员上限。利
用一个if语句进行判断,假如size的大小大于MAX的值,就表示已经达到了通讯录人员上限;假如没
有就执行后续的添加接洽人操作。就是往Addressbook中的那个结构体数组内里增加接洽人对象,增加的
那个结构体对象对应的数组下标就是此时size的值。
来看具体代码:
void AddLinkman(Addressbook *p)
{
//判断通讯录是否已满
if (p->size == MAX)
{
cout << "通信录人员已满" << endl;
}
else
{
string name;
cout << "请输入添加联系人的姓名" << endl;
cin >> name;
p->personarr[p->size].name = name;
string sexy;
cout << "请输入联系人的性别:" << endl;
cin >> sexy;
p->personarr[p->size].sexy = sexy;
int age;
cout << "请输入联系人的年龄" << endl;
cin >> age;
p->personarr[p->size].age = age;
string number;
cout << "请输入联系人的号码" << endl;
cin >> number;
p->personarr[p->size].number = number;
string input_adress;
cout << "请输入联系的家庭住址" << endl;
cin >> input_adress;
p->personarr[p->size].adress = input_adress;
p->personarr[p->size].num = p->size + 1;
p->
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
嚴華
论坛元老
这个人很懒什么都没写!
楼主热帖
iOS全埋点解决方案-用户标识 ...
【万能皆可链接】C++中的动态链接库编 ...
用uniapp实现微信小程序的电子签名效果 ...
【云服务器】推荐阿贝云服务器,目前永 ...
【Selenium+Pytest+allure报告生成自动 ...
【Javaweb】Web工作原理、两种网页、两 ...
MySQL实战45讲 20
Spring Boot 配置文件
Qt-FFmpeg开发-打开本地摄像头(6) ...
微服务介绍
标签云
AI
运维
CIO
存储
服务器
浏览过的版块
物联网
分布式数据库
前端开发
快速回复
返回顶部
返回列表