语c言通讯x录程序设计--大学毕设论文.doc
《语c言通讯x录程序设计--大学毕设论文.doc》由会员分享,可在线阅读,更多相关《语c言通讯x录程序设计--大学毕设论文.doc(40页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、程序设计综合实习软实 习 报 告学 号159074210姓 名吴师庆班 级软152指导教师潘祥安徽工业大学2016年9月课程设计题目:个人通讯录管理系统一、需求分析个人通讯录管理系统的制作,为了实现数据的输入、输出、修改、删除、查询、存、取功能。程序的基本功能为:1.建立联系人信息,包括姓名、电话、地址、QQ;2.添加新的联系人信息(通讯录信息输入功能);3.可按姓名、电话、地址、QQ排序输出显示通讯录的所有信息(显示通讯录信息功能);4.按姓名、电话、地址、QQ查询某个联系人的信息(通讯录记录查询功能);5.输入联系人姓名以修改某个联系人的信息(修改通讯录信息功能);6.按姓名删除某个联系人
2、的信息(删除通讯录信息功能);7.将数据以文件的形式存储在磁盘上(保存通讯录信息功能)。二、总体设计各模块流程框图1.main()2. void input(PEOPLE pHead,int x)3. void search(PEOPLE pHead)4. int show(PEOPLE pHead)开始选显示排序依据调用address_sort ()函数调用phone_sort ()函数调用name_sort ()函数调用QQ_sort ()函数其他键4321按姓名顺序显示按电话顺序显示按地址顺序显示按QQ顺序显示输入错误输出所有联系人信息结束5. void modify(PEOPLE pH
3、ead)6. void delete_name(PEOPLE pHead,int x)7. void save(PEOPLE pHead)8. void quit()三、详细设计1.新建联系人功能主控函数void input(PEOPLE pHead,int x)实现添加新的联系人的功能。void input(PEOPLE pHead,int x) int i=0; PEOPLE p=pHead; while (p!=NULL&ipNext; +i; PEOPLE pNew=(PEOPLE)malloc(sizeof(people); if(pNew=NULL) printf(动态分配内存失败
4、! );exit(-1); printf(n*nn); printf(tt 请创建并添加联系人信息nn); printf(tt请输入联系人姓名:); gets(pNew-name); printf(tt请输入联系人电话:); gets(pNew-phone); printf(tt请输入联系人地址:); gets(pNew-address); printf(tt请输入联系人QQ:); gets(pNew-QQ); printf(ntt成功添加了联系人信息!nn); printf(请按Enter键继续);printf(n*n); getchar();PEOPLE q=p-pNext; p-pNex
5、t=pNew; pNew-pNext=q; 2.查询功能主控函数void search(PEOPLE pHead)实现可按姓名、电话、地址、QQ查询某联系人的功能,会分别调用相应的查询函数。void search(PEOPLE pHead) int num;printf (n*nn); printf (ttt1.按姓名查找n); printf (ttt2.按电话查找n); printf (ttt3.按地址查找n); printf (ttt4.按QQ查找n);printf (ntt选择你需要操作的功能号码(1-4):); num=getchar();getchar();switch(num)ca
6、se 1:name_search(pHead);break;case 2:phone_search(pHead);break;case 3:address_search(pHead);break;case 4:QQ_search(pHead);break;default:printf(ttt 输入错误!nn);printf(请按Enter键继续);printf (n*n);getchar();break;3.显示功能主控函数 int show(PEOPLE pHead)先调用排序函数,再按相应顺序将全部联系人的信息显示到屏幕。int show(PEOPLE pHead) int num;pri
7、ntf (n*nn); printf (ttt1.按姓名顺序显示n); printf (ttt2.按电话顺序显示n); printf (ttt3.按地址顺序显示n); printf (ttt4.按QQ顺序显示n); printf (ntt选择你需要操作的功能号码(1-4):); num=getchar();getchar();switch(num)case 1:name_sort(pHead);break;case 2:phone_sort(pHead);break;case 3:address_sort(pHead);break;case 4:QQ_sort(pHead);break;def
8、ault:printf(ttt 输入错误!nn);printf(请按Enter键继续);printf (n*n);getchar();return 0;int len=number(pHead); PEOPLE p=pHead-pNext; int i;printf (n*n); printf (= 用户信息记录表 =); printf (n*nn); if (p!=NULL) for (i=0;ipNext) printf (tt联系人姓名:%sn,p-name); printf (tt联系人电话号码:%sn,p-phone); printf (tt联系人地址:%sn,p-address);
9、 printf (tt联系人QQ:%sn,p-QQ); printf (n); if (i!=0&(i+1)%5=0) printf (nttt输入任意键显示下一页n);printf(n*n);getchar(); printf(请按Enter键继续);printf (n*n);getchar(); else printf (tt对不起!没有任何人的记录!nn); printf(请按Enter键继续);printf (n*n);getchar(); return 0; 4.修改功能主控函数void modify(PEOPLE pHead)输入要修改联系人的姓名,可显示该联系人信息,并输入该联系
10、人新的信息。void modify(PEOPLE pHead) int i; int mark=0; int len=number(pHead); char name25; PEOPLE p=pHead-pNext; printf(n*n); printf (= 用户信息修改功能 =); printf(n*nn);printf (tt输入要修改联系人的姓名:); gets(name); if(p!=NULL) for(i=1;ipNext) if(strcmp(name,p-name)=0) printf (*以下是您要修改的用户信息*nn); printf (联系人姓名:%sn, p-nam
11、e); printf (联系人电话号码:%sn, p-phone); printf (联系人地址:%sn, p-address); printf (联系人QQ:%sn, p-QQ); printf(n*nn); +mark; break; if(mark0) printf(tt请输入修改联系人信息nn); printf(tt请输入联系人姓名:); scanf(%s,p-name);printf(tt请输入联系人电话:); scanf(%s,p-phone);printf(tt请输入联系人地址:); scanf(%s,p-address);printf(tt请输入联系人QQ:); scanf(%
12、s,p-QQ);getchar();printf(ntt成功修改了联系人信息!nn);printf(请按Enter键继续);printf(n*n); getchar(); else printf (ntt对不起!没有该用户的记录!nn);printf(请按Enter键继续);printf(n*n); getchar(); else printf (ntt对不起!没有任何人的记录!nn); printf(请按Enter键继续);printf(n*n);getchar();5.删除功能主控函数void delete_name(PEOPLE pHead,int x)输入要删除联系人的姓名,可显示该联
13、系人信息,并提示是否确认删除,确认后会删除该联系人信息。void delete_name(PEOPLE pHead,int x) int i,pos; int mark=0; int len=number(pHead); char name25; PEOPLE p=pHead-pNext; printf(n*n); printf (= 用户信息删除功能 =); printf(n*nn);printf (tt输入要删除联系人的姓名:); gets(name); if(p!=NULL) for(i=1;ipNext) if(strcmp(name,p-name)=0) printf (*以下是您要
14、删除的用户信息*nn); printf (num:%dn, mark+1); printf (联系人姓名:%sn, p-name); printf (联系人电话号码:%sn, p-phone); printf (联系人地址:%sn, p-address); printf (联系人QQ:%sn, p-QQ); printf(n*n);pos=i; +mark; if(mark0) printf (ntt是否确定删除?(y/n); if(getchar()=y) getchar(); Delete(pHead,pos); /删除节点 printf(ntt删除成功!nn); printf(请按Ent
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 通讯 程序设计 大学 论文
限制150内