同学录管理系统设计报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、设计目的
同学,是伴随着我成长的伙伴。随着时间的改变,我们身边的同学也变得不同。珍惜我们的回忆,珍视我们从前和现在的伙伴。同学录,记录曾经和现在一起生活学习同学的信息,已达到方便联系的目的,同学之间的感情也可以得以加深。本同学录管理系统旨在设计一种简洁、灵活的操作方式提供快速记录、查找、删除和保存信息的功能。系统虽小,但智能化设计能够体现出现代同学录的先进性、实用性和便利性,打造出一部记录成长历程的个人专属同学录。
一、要求
实现功能如下:
(1)按姓名查找
(2)按姓名删除
(3)插入一条记录
(4)显示所有记录
(5)存盘并退出
二、内容
1.同学录包含的内容:姓名、电子邮箱、电话号码、同学时段。
2.功能设计:
(1)为便于用户使用本系统时,对各个功能的选择,本系统设计一个操作简单的菜单工作方式。用户根据需要选择相应的菜
单项,即可根据提示完成相应的功能。
(2)各个模块设计
a.主函数main()模块:其功能为显示中文提示菜单,根
据用户输入的菜单选项,调用相应功能的各个函数。
b.装填函数load()模块:其功能为由文件中的数据生成
一个同学录的链表,如果文件不存在,则建立一个空链表。
c.插入函数insert()模块:其功能为插入一个记录。
d.显示函数display()模块:其功能为显示所有记录的姓
名、电子邮箱、电话号码、同学时段。
e.查询函数find()模块:其功能为按指定姓名进行查询。
如果找到了,显示该记录的姓名、电子邮箱、电话号码、同
学时段。如果未找到,则显示“查无此人”的信息。
f.删除函数deletee()模块:其功能为按指定姓名删除记录。
如果找到了,删除该记录;如果未找到,则提示“查无此人”
的信息。
g.保存函数save()模块:其功能为将同学录链表中的内
容保存到文件中。
3.main()函数流程图
四、结果
1.主菜单界面
开始
提示“请输入通讯录信息”
调用load()函数
打开相应文件
显示主菜单
根据choice值调用函数
调用insert()
函数
调用
display()
函数
调用
find()
函数
调用
deletee()
函数
调用
save()
函数
结束
2.输入数据:在主菜单中,按“3”键,输入数据
3.查找记录:在主菜单中,按“1”键,查找数据。
4.删除记录:在主菜单中,按“2”键,输入姓名,删除数据。
5.显示记录:在主菜单按“4”键
6.存盘并退出:在主菜单按“5”键
代码:
邮箱同学录程序代码
#include
#include
#include
#define NOD struct email_list
struct person
{char name[20];
char email[40];
char time[20];
char phone[15];
};
NOD
{char name[20];
char email[40];
char time[20];
char phone[15];
};
FILE *fp;
NOD *load(char filename[])
{NOD *p,*q,*head;
struct person per;
p=(NOD*)malloc(sizeof(NOD));
q=head=NULL;
if((fp=fopen(filename,"rb"))==NULL)
return head;
else
{while(!feof(fp))
{ if (fread(&per,sizeof(struct person),1,fp)==1) {
p=(NOD*)malloc(sizeof(NOD));
strcpy(p->name,);
strcpy(p->email,per.email);
strcpy(p->time,per.time);
strcpy(p->phone,per.phone);
head=p;
p->next=q;
q=head;
}
}
}
fclose(fp);
return(head);
}
NOD *insert(NOD *head)
{NOD *temp,*p;
p=head;
temp=(NOD*)malloc(sizeof(NOD));
printf("\n\t 请输入姓名:");
scanf("%s",temp->name);
printf("\n\t 请输入电子邮箱:");
scanf("%s",temp->email);
printf("\n\t 请输入同学的时段:");
scanf("%s",temp->time);
printf("\n\t 请输入手机号码:");
scanf("%s",temp->phone);
head=temp;
temp->next=p;