同学录管理系统设计报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 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;

相关文档
最新文档