1、4.1.1 新增联系人 114.1.2 查询联系人 13课程设计目的1 需求分析通讯录档案信息采用文件存储,因而要提供文件的输入输出操作;根据联系人信息的变动情况,添加删除记录,因而要提供文件的添加删除操作;根据编号进项查询,所以要提供文件的查找操作;高级编辑功能,就是提供文件的修改操作;显示功能就是显示出通讯录中所有联系人的功能;另外还要提供键盘式选择菜单以实现功能选择。2 总体分析与设计1.总体设计总体设计目标:使用者可以利用本系统对通讯录的各项管理进行操作,根据用户要求自动进行新增联系人,保存联系人,删除联系人,查找所要的联系人,修改所要的联系人,最后将他们清楚地显示在屏幕中。结合上述分
2、析,该系统应包括一下模块:新增联系人,保存联系人,查询联系人,修改联系人,显示联系人,删除联系人,退出系统。结构图如下。2.1 总体设计方案图2-1 系统功能模块图2.2 功能描述根据以上需求分析,通讯录管理系统划分为七个功能模块,分别是新增联系人模块,保存联系人模块,查找联系人模块,修改联系人模块,显示联系人模块,删除联系人模块,读取联系人模块。其中各功能模块的具体说明如下。2.2.1 新增联系人模块增加联系人模块:该模块的功能是增加新的联系人信息。信息包括联系人姓名,联系人所在单位,联系人电话号码等。然后从键盘输入并逐条写入到的文件中。增加成功后提示增加联系人信息成功!2.2.2 保存联系
3、人模块 保存联系人模块:该模块会保存所新增联系人,修改联系人等信息到指定文件夹中。2.2.3 查找联系人模块查找人事信息模块:该模块的功能是,查找文件中的联系人信息记录,从键盘输入联系人编号,输入时会判断该联系人编号是否存在,若不存在,则重新输入。若存在,则将该人事信息输出到窗口。2.2.4 修改联系人模块修改人事信息模块:该模块的功能是由用户输入所需修改的联系人信息编号。然后对联系人信息(姓名和电话号码等)进行修改,最后保存修改后的结果。2.2.5 显示联系人模块该模块将文件里的内容输出到电脑屏幕。用户可以通过该功能看到文件当中的所有联系人的信息。2.2.6 删除联系人模块 删除人事信息模块
4、:该模块首先由用户输入要删除的联系人的编号,根据编号删除所需的联系人信息,删除后提示联系人删除成功。删除的方法是将文件中的数据读入内存,赋给相应的结构体,并将结构体数组中将删除的后面的数据赋给前一个结构体,然后将相应数据写入文件并保存。2.2.7 读取联系人模块 该模块将保存到文件中的联系人读取到内存中以供程序操作。2.2.8 退出系统模块 若在系统最初运行时,选择退出系统,则系统退出运行。2.3 系统流程图 3 系统实现程序源码#include string.hstdlib.h#includestruct BOOKS int id;char tell12,phone12,name31,add
5、20,email30,qq20;books100,*p;void page_title(char *menu_item) printf(tt*n,menu_item);tt* 欢迎使用通讯录管理系统 *ntt* *ntt* 系统设计人:吴肖军 *ntt*nn- %s -nnvoid return_confirm(void) printf(n按任意键返回n); getchar();void books_add(void) /输入模块 int n;system(cls/清屏page_title(新增联系人 for(n=0;n100;n+) if(booksn.id=0) break;序号: sca
6、nf(%d,&booksn.id);姓名:%sbooksn.name);单位:booksn.add);固定电话:booksn.tell);移动电话:booksn.phone);邮件:booksn.email);QQ:booksn.qq); return_confirm();int books_search(void)/查找模块 int n,i=-1; char nam30; system(请输入联系人:nam);n+) if(strcmp(booksn.name,nam)=0)%dt,booksn.id);联系人:%st,booksn.name);,booksn.add);,booksn.te
7、ll);,booksn.phone);,booksn.email);%sn,booksn.qq);i=n; if(i=-1)n没有找到相关记录.n return i; int books_change(void)/修改模块 int n,i; page_title(修改联系人信息请输入要修改的联系人编号:i); if(booksn.id=i) 修改联系人:修改单位: scanf(修改固定电话:修改移动电话:修改邮件:修改QQ:修改联系人信息成功.n return n; return -1; int books_show(void)/显示模块int n,i=1; if(strlen(booksn.name)!=0) i=0; if(i=1)int books_del(void)/删除模块 int n,num,i;删除联系人请输入所要删除的联系人的编号:nnum); if(booksn.id=num) for(i=n;iid,p-name,p-add,p-tell
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1