C语言通讯录管理系统程序设计.docx

上传人:b****1 文档编号:1116820 上传时间:2022-10-17 格式:DOCX 页数:21 大小:331.92KB
下载 相关 举报
C语言通讯录管理系统程序设计.docx_第1页
第1页 / 共21页
C语言通讯录管理系统程序设计.docx_第2页
第2页 / 共21页
C语言通讯录管理系统程序设计.docx_第3页
第3页 / 共21页
C语言通讯录管理系统程序设计.docx_第4页
第4页 / 共21页
C语言通讯录管理系统程序设计.docx_第5页
第5页 / 共21页
点击查看更多>>
下载资源
资源描述

C语言通讯录管理系统程序设计.docx

《C语言通讯录管理系统程序设计.docx》由会员分享,可在线阅读,更多相关《C语言通讯录管理系统程序设计.docx(21页珍藏版)》请在冰豆网上搜索。

C语言通讯录管理系统程序设计.docx

C语言通讯录管理系统程序设计

C语言通讯录管理系统程序设计

 

 

————————————————————————————————作者:

————————————————————————————————日期:

 

广西科技大学鹿山学院

课程设计报告

课程名称:

c语言程序设计

课题名称:

通讯录管理系统设计

指导教师:

倪志平

班级:

物联网152

姓名:

吴肖军

学号:

20153076

成绩评定:

指导教师签字:

二〇一六年七月六日

 

4.1.1新增联系人11

4.1.2查询联系人13

 

课程设计目的

1需求分析

通讯录档案信息采用文件存储,因而要提供文件的输入输出操作;根据联系人信息的变动情况,添加删除记录,因而要提供文件的添加删除操作;根据编号进项查询,所以要提供文件的查找操作;高级编辑功能,就是提供文件的修改操作;显示功能就是显示出通讯录中所有联系人的功能;另外还要提供键盘式选择菜单以实现功能选择。

2总体分析与设计

1.总体设计

总体设计目标:

使用者可以利用本系统对通讯录的各项管理进行操作,根据用户要求自动进行新增联系人,保存联系人,删除联系人,查找所要的联系人,修改所要的联系人,最后将他们清楚地显示在屏幕中。

结合上述分析,该系统应包括一下模块:

新增联系人,保存联系人,查询联系人,修改联系人,显示联系人,删除联系人,退出系统。

结构图如下。

2.1总体设计方案

图2-1系统功能模块图

 

 

 

2.2功能描述

根据以上需求分析,通讯录管理系统划分为七个功能模块,分别是新增联系人模块,保存联系人模块,查找联系人模块,修改联系人模块,显示联系人模块,删除联系人模块,读取联系人模块。

其中各功能模块的具体说明如下。

 

2.2.1新增联系人模块

增加联系人模块:

该模块的功能是增加新的联系人信息。

信息包括联系人姓名,联系人所在单位,联系人电话号码等。

然后从键盘输入并逐条写入到的文件中。

增加成功后提示增加联系人信息成功!

2.2.2保存联系人模块

保存联系人模块:

该模块会保存所新增联系人,修改联系人等信息到指定文件夹中。

2.2.3查找联系人模块

查找人事信息模块:

该模块的功能是,查找文件中的联系人信息记录,从键盘输入联系人编号,输入时会判断该联系人编号是否存在,若不存在,则重新输入。

若存在,则将该人事信息输出到窗口。

2.2.4修改联系人模块

修改人事信息模块:

该模块的功能是由用户输入所需修改的联系人信息编号。

然后对联系人信息(姓名和电话号码等)进行修改,最后保存修改后的结果。

2.2.5显示联系人模块

该模块将文件里的内容输出到电脑屏幕。

用户可以通过该功能看到文件当中的所有联系人的信息。

2.2.6删除联系人模块

删除人事信息模块:

该模块首先由用户输入要删除的联系人的编号,根据编号删除所需的联系人信息,删除后提示联系人删除成功。

删除的方法是将文件中的数据读入内存,赋给相应的结构体,并将结构体数组中将删除的后面的数据赋给前一个结构体,然后将相应数据写入文件并保存。

2.2.7读取联系人模块

该模块将保存到文件中的联系人读取到内存中以供程序操作。

2.2.8退出系统模块

若在系统最初运行时,选择退出系统,则系统退出运行。

2.3系统流程图

 

 

 

3系统实现

 

程序源码

#include

#include

#include

#include

structBOOKS

{

intid;

chartell[12],phone[12],name[31],add[20],email[30],qq[20];

}books[100],*p;

voidpage_title(char*menu_item)

{

printf("\t\t********************************************\n",menu_item);

printf("\t\t*欢迎使用通讯录管理系统*\n",menu_item);

printf("\t\t**\n",menu_item);

printf("\t\t*系统设计人:

吴肖军*\n",menu_item);

printf("\t\t**\n",menu_item);

printf("\t\t********************************************\n\n-%s-\n\n",menu_item);

}

voidreturn_confirm(void)

{printf("\n按任意键返回……\n");

getchar();

}

 

voidbooks_add(void)//输入模块

{intn;

system("cls");//清屏

page_title("新增联系人");

for(n=0;n<100;n++)

if(books[n].id==0)break;

printf("序号:

");

scanf("%d",&books[n].id);

printf("姓名:

");

scanf("%s",&books[n].name);

printf("单位:

");

scanf("%s",&books[n].add);

printf("固定电话:

");

scanf("%s",&books[n].tell);

printf("移动电话:

");

scanf("%s",&books[n].phone);

printf("邮件:

");

scanf("%s",&books[n].email);

printf("QQ:

");

scanf("%s",&books[n].qq);

return_confirm();

}

intbooks_search(void)//查找模块

{intn,i=-1;

charnam[30];

system("cls");

printf("请输入联系人:

");

scanf("%s",&nam);

for(n=0;n<100;n++)

{if((strcmp(books[n].name,nam)==0))

{printf("序号:

%d\t",books[n].id);

printf("联系人:

%s\t",books[n].name);

printf("单位:

%s\t",books[n].add);

printf("固定电话:

%s\t",books[n].tell);

printf("移动电话:

%s\t",books[n].phone);

printf("邮件:

%s\t",books[n].email);

printf("QQ:

%s\n",books[n].qq);i=n;

}

}

if(i==-1)

printf("\n没有找到相关记录.\n");

getchar();

returni;

}

 

intbooks_change(void)//修改模块

{

intn,i;

system("cls");

page_title("修改联系人信息");

printf("请输入要修改的联系人编号:

");

scanf("%d",&i);

for(n=0;n<100;n++)

{if(books[n].id==i)

{

printf("修改联系人:

");

scanf("%s",books[n].name);

printf("修改单位:

");

scanf("%s",books[n].add);

printf("修改固定电话:

");

scanf("%s",books[n].tell);

printf("修改移动电话:

");

scanf("%s",books[n].phone);

printf("修改邮件:

");

scanf("%s",books[n].email);

printf("修改QQ:

");

scanf("%s",books[n].qq);

printf("修改联系人信息成功.\n");

returnn;

}

}

printf("\n没有找到相关记录.\n");

getchar();

return-1;

}

 

intbooks_show(void)//显示模块

{intn,i=1;

system("cls");

for(n=0;n<100;n++)

{

if(strlen(books[n].name)!

=0)

{

printf("序号:

%d\t",books[n].id);

printf("联系人:

%s\t",books[n].name);

printf("单位:

%s\t",books[n].add);

printf("固定电话:

%s\t",books[n].tell);

printf("移动电话:

%s\t",books[n].phone);

printf("邮件:

%s\t",books[n].email);

printf("QQ:

%s\n",books[n].qq);

i=0;

}

}

if(i==1)

printf("\n没有找到相关记录.\n");

getchar();

return-1;

}

 

intbooks_del(void)//删除模块

{

intn,num,i;

system("cls");

page_title("删除联系人");

printf("请输入所要删除的联系人的编号:

\n");

scanf("%d",&num);

for(n=0;n<100;n++)

{

if(books[n].id==num)

{

for(i=n;i<100;i++)

{books[i].id=books[i+1].id;

strcpy(books[i].name,books[i+1].name);

strcpy(books[i].email,books[i+1].email);

}

printf("该联系人已删除.\n");

returnn;

}

}

printf("没有找到相关记录\n");

getchar();

return-1;

}

 

voidbooks_save()//保存模块

{

system("cls");

FILE*fp;

inti;

p=books;

if((fp=fopen("d:

\\tt.txt","wb+"))==NULL)

{

printf("Cannotopenfile,strikeanykeyexit!

");

getchar();

exit

(1);

}

fwrite(p,sizeof(structBOOKS),2,fp);

p=books;

for(i=0;i<2;i++,p++)

printf("%5d\t%s\t%s\t%s\t%s\t%s\t%s\t\n",p->id,p->name,p->add,p->tell

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1