C程序实例1–个人通讯录管理系统

导读:本篇文章讲解 C程序实例1–个人通讯录管理系统,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

个人通讯录管理系统

已实现的功能:

1. 界面选择是否进入通讯录;
2. 一次添加多条联系人;
3. 显示全部联系人;

未实现的功能:

1. 退出程序后通讯录不会保存;
2. 退出系统后需要重新打开程序才可进入系统;

通讯录信息包括:姓名、工作单位、固定电话、手机号、关系、EMAIL、QQ。

数据变量 类型 说明
name char [30] 姓名
telephone char [30] 固定电话
mobilephone char [30] 手机号
type char [30] 关系
qq char [30] qq号
email char [64] EMAIL
department char [512] 工作单位

包含的功能:添加联系人、显示全部联系人。

添加联系人:首先需要输入添加几个联系人,然后分别添加每个联系人的信息,输入信息时需要与添加的信息内容保持一致;

代码:

#include <stdio.h>
#include <stdlib.h>

#define MAX_CHARS 512
#define MAX_CONTACTS_COUNT 256
enum {
	SYS_CONTACTS_INPUT=1,
	SYS_CONTACTS_OUTPUT=2,
	SYS_CONTACTS_EXIT = 3,
};

// 结构体 记录要输入或显示的信息,包括 姓名、单位、固定电话、手持电话、关系、email、qq
typedef struct T_SYS_CONTACTS{
	char name[30];  // 姓名
	char telephone[30];  // 固定电话
	char mobilphone[30];  // 手持电话
	char type[30];  // 关系
	char qq[30];  // qq
	char email[64];  // email
	char department[MAX_CHARS];  // 单位
}ContactSys;

void InputContacts();  // 添加联系人
void OutputContacts();  // 显示联系人

ContactSys g_contacts[MAX_CONTACTS_COUNT];  // 通讯录里的联系人信息
int nContacts;  // 联系人个数

int main()
{
	int isAccess = -1;  // 是否进入通讯录管理系统
	printf("【0】 进入个人通讯录管理系统\n");
	printf("【非0】 退出程序\n");
	printf("请输入你需要完成的操作:");
	scanf("%d",&isAccess);
	if(0 != isAccess)
		return 0;

	printf("*******************欢迎访问个人通讯录系统^_^****************************\r\n\n");
	do 
	{
		printf("\t序号【1】:添加联系人.\r\n");
		printf("\t序号【2】:显示联系人.\r\n");
		printf("\t序号【3】:退出系统\r\n\n");

		printf("请输入你需要完成的操作序号:");
		int nCommand;
		scanf("%d",&nCommand);

		switch(nCommand)
		{
		case SYS_CONTACTS_INPUT:
			InputContacts();
			break;
		case SYS_CONTACTS_OUTPUT:
			OutputContacts();
			break;
		case SYS_CONTACTS_EXIT:	
			{
				printf("退出个人通讯录管理系统\r\n");
			}
			break;
		}

		if(SYS_CONTACTS_EXIT == nCommand)
			break;

	} while (1);
	printf("\r\n*******************退出个人通讯录系统^_^****************************\r\n\n");


	system("pause");
	return 0;
}

void InputContacts()
{
	printf("\n##开始添加联系人\r\n请输入添加的联系人的个数(<256):");
	scanf("%d",&nContacts);

	printf("\t请输入联系人的信息,输入时使用Tab键对齐要输入的信息\r\n\t\t姓名\t单位\t固定电话\t移动手机\t分类\tEMAIL\t\tQQ\t\r\n");
	for(int i=0;i<nContacts;i++)
	{
		printf("\t\t");
		scanf("%s\t%s\t%s\t\t%s\t\t%s\t%s\t%s",&g_contacts[i].name,
			&g_contacts[i].department,
			&g_contacts[i].telephone,
			&g_contacts[i].mobilphone,
			&g_contacts[i].type,
			&g_contacts[i].email,
			&g_contacts[i].qq);
	}

	printf("\n添加联系人结束\r\n\n");

}

void OutputContacts()
{

	printf("\n##显示联系人\r\n");

	printf("姓名\t单位\t固定电话\t移动手机\t分类\tEMAIL\t\tQQ\t\r\n");
	for(int i=0;i<nContacts;i++)
	{
		printf("%s\t%s\t%s\t\t%s\t\t%s\t%s\t%s\r\n",g_contacts[i].name,
			g_contacts[i].department,
			g_contacts[i].telephone,
			g_contacts[i].mobilphone,
			g_contacts[i].type,
			g_contacts[i].email,
			g_contacts[i].qq);
		if((i+1) %10 ==0)
			printf("-------------------------------------------------------------\r\n");

	}

	printf("\n显示联系人结束\r\n\n");
}


运行结果:

C程序实例1--个人通讯录管理系统

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/46141.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!