栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

通讯录信息系统的管理

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

通讯录信息系统的管理

通讯录信息系统的管理
知识方面需要熟练掌握链表相关的算法知识即可完成相关系统
了解更多数据结构实验报告方面的内容
点击链接有惊喜在等你哦

#include 
#include 
#include 
#include 
typedef struct  {  //通讯录结点类型
  char num[5];   //编号
  char name[9];  //姓名
  char sex[3];    //性别
  char phone[13]; //电话
  char addr[31];  //地址
} DataType;
typedef struct node {   //结点类型定义
   DataType data;    //结点数据域(注意存放的是上面结构体的数据类型)
   struct node *next;  //结点指针域
} ListNode,*LinkList;
LinkList head;//头指针
ListNode *p;//用作更新新的节点使用

//函数说明
int menu_select();
LinkList CreateList();//通讯录链表的建立 
void InsertNode(LinkList head,ListNode *p);//插入 
ListNode *ListFind(LinkList head);//查询联系人 
void DelNode(LinkList head);//删除节点 
void PrintList(LinkList head);//输出所有联系人 
int main()
{
	printf("******************************n");
	printf("**       欢迎使用通讯录     **n");
	printf("**--------------------------**n");
	printf("**                          **n");
	printf("**    0.  创建通讯录    **n");
	printf("**    1.  添加联系人信息    **n");
	printf("**    2.  查询联系人信息    **n");
	printf("**    3.  删除联系人信息    **n");
	printf("**    4.  输出联系人信息    **n");
	printf("**    5.  退出    **n");
	printf("**                          **n");
	printf("******************************n");
	int m=menu_select();
	head=(LinkList)malloc(sizeof(ListNode));
	while(m!=5) {
		if(m==0){
			head=CreateList();
			printf("创建成功n");
		}
		if(m==1){
			InsertNode(head, p);
		}
		if(m==2){
			LinkList s=(LinkList)malloc(sizeof(ListNode));
			printf("请输入联系人姓名:");
			s=ListFind(head);
			if(s){
				printf("联系人的基本信息:%s %s %s %s %sn",s->data.num,s->data.name,s->data.sex,s->data.phone,s->data.addr);
			}
			else{
				printf("Not Foundn");
			}
		}
		if(m==3){
			DelNode(head);
		}
		if(m==4){
			PrintList(head);
		}
		m=menu_select();
	}
	printf("退出管理系统n"); 
	return 0;
}
int menu_select()
{
	
	int n;
	scanf("%d",&n);
	return n;
}
LinkList CreateList()
{
	LinkList L=(LinkList)malloc(sizeof(ListNode));
	L->next=NULL;
	return L;
}
void InsertNode(LinkList head,ListNode *p)
{
	p=(LinkList)malloc(sizeof(ListNode));
	while(head->next!=NULL)
	{
		head=head->next;
	 } 
	printf("请输入联系人的基本信息:");
	scanf("%s%s%s%s%s",p->data.num,p->data.name,p->data.sex,p->data.phone,p->data.addr);
	p->next=head->next;
	head->next=p;
}
ListNode *ListFind(LinkList head) 
{
	char Name[10];
	scanf("%s",Name);
	while(head->next)
	{
		head=head->next;
		if(strcmp(head->data.name,Name)==0)
		return head;
	}
	return NULL;
}
void DelNode(LinkList head)
{
	char Name[10];
	printf("请输入要删除的联系人姓名:");
	scanf("%s",Name);
	while(head->next)
	{
		
		if(strcmp(head->next->data.name,Name)==0){
			head->next=head->next->next;
			break;
		}
		head=head->next;
	}	
}
void PrintList(LinkList head)
{
	while(head->next){
		head=head->next;
		printf("联系人的基本信息:%s %s %s %s %sn",head->data.num,head->data.name,head->data.sex,head->data.phone,head->data.addr);
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/955320.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号