简单的通信管理系统

#include<iostream>
using namespace std;
#include<string>
#define max 1000

//创建联系人结构体
typedef struct person
{
	string name;
	string sex;
	int age;
	int phone;
	string address;
}person;

//创建通讯录结构体
typedef struct
{
	struct person personArrey[max];
	int size;
}addressbooks;

//显示通讯录界面
void showbooks(addressbooks* abs)
{
	cout << "**************************" << endl;
	cout << "****** 1.添加联系人 ******" << endl
		 << "****** 2.显示联系人 ******" << endl
		 << "****** 3.查找联系人 ******" << endl
		 << "****** 4.删除联系人 ******" << endl
		 << "****** 5.清空通讯录 ******" << endl
		 << "****** 0.退出通讯录 ******" << endl;
	cout << "**************************" << endl;
}

//添加联系人
void addperson(addressbooks* abs)
{
	int ret = 0;
	if (abs->size == max)
	{
		cout << "抱歉!通讯录已满." << endl;
	}
	cout << "请输入联系人姓名:" << endl;
	cin>>abs->personArrey[abs->size].name;
	
	while (ret!=1 && ret!=2)
	{
		cout << "性别:1 男 2 女" << endl;
		cin >> ret;
		if (ret != 1 && ret != 2)
		{
			cout << "输入错误" << endl;
			continue;
		}
		abs->personArrey[abs->size].sex = (ret == 1 ? "男" : "女");
	}

	cout << "年龄:" << endl;
	cin >> abs->personArrey[abs->size].age;

	cout << "电话号码:" << endl;
	cin >> abs->personArrey[abs->size].phone;

	cout << "住址:" << endl;
	cin >> abs->personArrey[abs->size].address;

	abs->size++;
}

//显示联系人
void showperson(addressbooks* abs)
{
	if (abs->size == 0)
		cout << "无联系人" << endl;
	else
	{
		for (int i = 0; i < abs->size; i++)
		{
			cout << "联系人姓名:" << abs->personArrey[i].name <<
			" 联系人性别:" << abs->personArrey[i].sex <<
			" 联系人年龄:" << abs->personArrey[i].age<<
			" 联系人电话:" << abs->personArrey[i].phone<<
			" 联系人住址: " << abs->personArrey[i].address << endl;
		}
	}

	system("pause");
	system("cls");
}

//查找联系人
void Getperson(addressbooks* abs,string name)
{
	int ret = 0;
	int i = 0;
	if (abs->size == 0)
		cout << "查无此人" << endl;
	else
	{
		while (abs->personArrey[i].name != name && i < abs->size)
			i++;
		if (i == abs->size)
			cout << "查无此人" << endl;
		else
		{
			cout << "联系人姓名:" << abs->personArrey[i].name <<
			 " 联系人性别:" << abs->personArrey[i].sex <<
			" 联系人年龄:" << abs->personArrey[i].age <<
			" 联系人电话:" << abs->personArrey[i].phone <<
			" 联系人住址: " << abs->personArrey[i].address << endl;
		}
	}
	system("pause");
	system("cls");
}

//删除联系人
void deleteperson(addressbooks* abs,string name_2)
{
	void Emptybooks(addressbooks * abs);
	int i = 0;
	for (i = 0; i < abs->size; i++)
	{
		if (abs->personArrey[i].name == name_2)
		{
			if (abs->size == 1)
				Emptybooks(abs);
			else if (i == abs->size - 1)
				abs->size--;
			else
				for (int j = i; j < abs->size - 1; j++)
					abs->personArrey[j] = abs->personArrey[j + 1];
			break;
		}
	}
	if (i < abs->size)
		cout << "删除成功" << endl;
	else cout << "删除失败" << endl;
}

//清空通讯录
void Emptybooks(addressbooks* abs)
{
	int ret = 0;
	cout << "1 确认清空 2 取消清空" << endl;
	cin >> ret;
	if (ret == 1)
		abs->size = 0;
	
}
int main()
{
	string name_1;
	string name_2;
	addressbooks abs;
	abs.size = 0;
	int choice = 0;
	while (true)
	{
		showbooks(&abs);       //界面展示
		cin >> choice;               //  cin>>choice>>endl; 报错

		switch (choice)
		{
		case 0:  //退出通讯录
			cout << "欢迎下次使用" << endl;
			system("pause");
			return 0;
			break;                 //问:break的作用是什么
		case 1:  //添加联系人
			addperson(&abs);
			system("cls");
			break;
		case 2:  //显示联系人
			showperson(&abs);
			system("cls");
			break;
		case 3:  //查找联系人
			cout << "请输入联系人姓名:" << endl;
			cin >> name_1;
			Getperson(&abs, name_1);
			system("cls");
			break;
		case 4:  //删除联系人
			cout << "请输入联系人姓名:" << endl;
			cin >> name_2;
			deleteperson(&abs, name_2);
			system("cls");
			break;
		case 5:  //清空通讯录
			Emptybooks(&abs);
			system("pause");
			system("cls");
			break;
		default:
			cout << "输入错误" << endl;
			system("pause");
			system("cls");
			break;
		}
		
	}
	system("pause");

	return 0;
}

### 回答1: SQLite是一种轻量级的关系型数据库管理系统,它在移动端或者小型应用程序中得到广泛应用。通信管理系统是利用SQLite来存储和管理用户的通信信息。 通信管理系统可以用于记录和管理个人或团队的联系人信息。用户可以通过系统来添加、修改、删除联系人的姓名、电话号码和电子邮件等信息。通过使用SQLite,系统可以将这些联系人信息持久化地保存在数据库中,并且可以方便地进行查询和检索。 系统可以提供以下功能: 1. 添加联系人:用户可以通过输入姓名、电话号码和电子邮件等信息,将新的联系人添加到系统中。 2. 修改联系人:用户可以对已存在的联系人信息进行修改,例如修改电话号码或者电子邮件地址等。 3. 删除联系人:用户可以选择删除某个联系人的记录,删除后该联系人的信息将从数据库中移除。 4. 查询联系人:用户可以通过输入关键字,查询满足条件的联系人信息。系统将从数据库中检索相应的记录,并展示给用户。 5. 显示联系人列表:系统可以将所有联系人信息以列表形式展示给用户,并且可以按照姓名的字母顺序进行排序。 通过以上功能,SQLite3通信管理系统可以帮助用户便捷地管理个人或团队的联系人信息。SQLite具有较小的内存占用和快速的读写速度,因此适用于小型应用程序或移动端,并且可以保证数据的安全性和可靠性。 ### 回答2: SQLite3通信管理系统是一种用SQLite3数据库来管理和存储通信录信息的系统。SQLite3是一种轻型的关系型数据库,具有快速、稳定、易于使用的特点,非常适合作为通信管理系统的数据库引擎。 通信管理系统的基本功能包括:添加联系人、查找联系人、编辑联系人、删除联系人等。用户可以通过系统提供的界面输入联系人的姓名、电话号码、电子邮件等信息,系统将这些信息存储到SQLite3数据库中,实现对联系人信息的持久化存储。 在系统中,通信录信息以表的形式存储在SQLite3数据库中。每个联系人的信息将作为一行数据,包括姓名、电话号码、电子邮件等字段,每个字段对应表中的一列。通过SQLite3提供的SQL语句,可以方便地查询、添加、编辑、删除联系人信息。 通信管理系统还可以提供一些附加功能,如分组管理、导入导出联系人、备份恢复等。用户可以将联系人按照不同的分组进行管理,方便快速查找和管理不同类型的联系人。导入导出联系人功能可以将联系人信息导出为文件,或将外部文件中的联系人信息导入到系统中。备份恢复功能可以保护用户的通信录数据免受意外损失。 总之,SQLite3通信管理系统是一款基于SQLite3数据库的方便、高效的通信录管理工具,通过它,用户可以轻松地管理和查找联系人信息,提高工作和生活的效率。 ### 回答3: SQLite3通信管理系统是一种基于SQLite3数据库的系统,用于管理个人和组织的联系人信息。该系统提供了一个用户友好的界面,使用户能够轻松地添加、编辑、搜索和删除联系人信息。 系统具有以下主要功能: 1. 添加联系人:用户可以通过输入联系人的姓名、电话号码、电子邮件地址等信息,将新联系人添加到数据库中。系统还提供了一个独特的ID,用于标识每个联系人。 2. 编辑联系人:用户可以随时编辑联系人信息,包括姓名、电话号码、电子邮件地址等。用户只需选择要编辑的联系人,并更新所需的信息。 3. 搜索联系人:系统提供了一个强大的搜索功能,用户可以根据姓名、号码或电子邮件地址,快速找到所需联系人。搜索结果将显示与搜索条件匹配的联系人列表。 4. 删除联系人:如果用户不再需要某个联系人的信息,则可以选择删除该联系人。系统将从数据库中删除该联系人的所有信息。 5. 查看联系人列表:用户可以通过系统查看所有添加的联系人。联系人列表将显示每个联系人的姓名、号码和电子邮件地址,方便用户快速浏览。 6. 数据备份和恢复:系统提供了数据备份和恢复功能,确保联系人信息不会意外丢失。 SQLite3通信管理系统是一个有效和高效的工具,可以轻松地管理个人和组织的联系人信息。它提供了简单但强大的功能,适用于个人用户、小型企业和组织的联系人管理需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值