第1页共36页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第1页共36页广州大学物理与电子工程学院程序与设计训练通讯录管理系统实验报告专业班级:电子121设计人员:元达鹏学号:12192000652013年6月24日第2页共36页第1页共36页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第2页共36页通讯录管理系统一.需求分析设计题目及需求:(1)查看功能:选择此功能时,列出下列三类选择。A办公类B个人类C商务类,当选中某类时,显示出此类所有数据中的姓名和电话号码)(2)增加功能:能录入新数据(一个结点包括:姓名、电话号码、分类(可选项有:A办公类B个人类C商务类)、电子邮件。例如:杨春13589664454商务类chuny@126.com(3)当录入了重复的姓名和电话号码时,则提示数据录入重复并取消录入;当通信录中超过15条信息时,存储空间已满,不能再录入新数据;录入的新数据能按递增的顺序自动进行条目编号。(4)修改功能:选中某个人的姓名时,可对此人的相应数据进行修改(5)删除功能:选中某个人的姓名时,可对此人的相应数据进行删除,并自动调整后续条目的编号。系统功能需求分析:主要包含以下几种功能:1.建立通讯录(建立功能)2.删除通讯人(删除功能)3.保存通讯录(保存功能)4.读取通讯录文件(读取功能)5.查找通讯人(查找功能)第3页共36页第2页共36页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第3页共36页6.添加通讯人(添加功能)7.修改通讯人信息(修改功能)8.退出通讯录系统二.概要设计系统功能模块图:建立功能:在主菜单中输入1,进入建立功能。用户自己输入通讯录文件名,建立一个新的通讯录,便开始输入信息,一旦想结束添加,在输入姓名处输入“*”结束录入。(当录入相同的姓名和电话时,系统会告诉你已经重复录入)删除功能:在主菜单中输入2,进入删除功能。用户输入待删除人的姓名,系统会自动显示待删除人的信息,并且提示是否删除该通讯人。(当输入的姓名不存在的时候,系统会告诉你此人不存在)保存功能:在主菜单中输入3,进入保存功能。将你已经写好的通讯录保存在建立时创建的文件里面。(当保存成功后,系统会告诉你保存成功)读取功能:在主菜单中输入4,进入读取功能。读取一个任意一个已经存在的主菜单建立删除保存读取查找添加修改退出第4页共36页第3页共36页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第4页共36页文件,用户可以输入想要读取的文件,一旦文件读取成功,系统会告诉你文件读取成功。查找功能:在主菜单中输入5,进入查找功能。查找方式有三种:1.按姓名查找2.按类型查找3.查看所有人添加功能:在主菜单中输入6,进入添加功能。在还没有读取或者建立一个新的通讯录的时候,添加功能是无效的,系统会告诉你请你先新建立一个通讯录或者先读取通讯录文件。进入添加功能以后,可以按提示添加通讯人信息。修改功能:在主菜单中输入7,进入修改功能。在还没有读取或者建立一个新的通讯录的时候,修改功能也是无效的,系统会告诉你请你先新建立一个通讯录或者先读取通讯录文件。修改功能是和删除功能一样,也是通过姓名进行查找的。退出功能:在主菜单中输入8,退出通讯录管理系统。三.详细设计(1)通讯录#defineIDstructtel//宏定义,方便以后的使用structtel{charname[10];//姓名chartele[15];//电话第5页共36页第4页共36页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第5页共36页charstyle[15];//类型charmail[20];//邮箱ID*next;};voidmain(){ID*head=NULL;//这是这个程序的头,什么功能都是靠这个来进行链接的intchoice;//存放用户的选择intj=0;//这个j是用于功能之间的配合使用while(1){system("cls");//清屏printf("\n\n");printf("\t#####SystemOfCommunication#####\n");printf("\t1.建立通讯录\n");printf("\t2.删除通讯人\n");printf("\t3.保存通讯录\n");printf("\t4.读取通讯录文件\n");printf("\t5.查找通讯人\n");printf("\t6.添加通讯人\n");printf("\t7.修改通讯人信息\n");printf("\t8.退出通讯录系统\n");printf(...