通讯录管理系统Word格式文档下载.docx
- 文档编号:21336677
- 上传时间:2023-01-29
- 格式:DOCX
- 页数:16
- 大小:135.53KB
通讯录管理系统Word格式文档下载.docx
《通讯录管理系统Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《通讯录管理系统Word格式文档下载.docx(16页珍藏版)》请在冰豆网上搜索。
⑴主函数
主函数的设计一般比较的简单,只提供输入,功能处理和输出部分的函数调用。
其中个功能模块用菜单方式选择。
菜单部分也可以写成函数。
【流程图】
【程序】
main()
{
inti;
ADDRESSadr[M];
/*定义结构体数组*/
intlength;
/*保存记录长度*/
clrscr();
/*清屏*/
for(;
;
)/*无限循环*/
switch(menu_select())/*调用主菜单函数,返回值整数作开关语句的条件*/
{
case0:
length=enter(adr);
break;
/*输入记录*/
case1:
list(adr,length);
/*显示全部记录*/
case2:
search_by_name(adr,length);
/*按名字查找*/
case3:
search_by_tel(adr,length);
/*按电话查找*/
case4:
length=delete(adr,length);
/*删除记录*/
case5:
length=add(adr,length);
break;
/*插入记录*/
case6:
save(adr,length);
/*保存文件*/
case7:
length=load(adr);
/*读文件*/
case8:
length=modify(adr,length);
/*修改记录*/
case9:
exit(0);
/*如返回值为9则程序结束*/
}
}
adr[M]中的M为记录人数,程序中采用宏定义的方式,可以随时在源程序宏定义中改,本程序宏定义#defineM50。
⑵各功能模块的设计
通讯录的数据信息:
人名、工作单位、电话号码、E-MAIL均可以采用字符型数组;
可以采用结构体的形式,把个信息作为结构的成员。
typedefstruct/*定义数据结构*/
charname[20];
/*姓名*/
charunits[30];
/*单位*/
chartele[11];
/*电话*/
charemail[30]
}ADDRESS;
①选择函数
【流程图】
menu_select()
{
chars[80];
intc;
gotoxy(1,25);
/*将光标定为在第25行,第1列*/
printf("
pressanykeyentermenu......\n"
);
/*提示压任意键继续*/
getch();
/*读入任意字符*/
clrscr();
gotoxy(1,1);
********************MENU*********************\n\n"
0.Enterrecord\n"
1.Listthefile\n"
2.Searchbyname\n"
3.Searchbytel\n"
4.Deletearecord\n"
5.addrecord\n"
6.Savethefile\n"
7.Loadthefile\n"
8.Modify\n"
9.Quit\n"
***********************************************\n"
do{
\nEnteryouchoice(0~9):
"
/*提示输入选项*/
scanf("
%s"
s);
/*输入选择项*/
c=atoi(s);
/*将输入的字符串转化为整型数*/
}while(c<
0||c>
9);
/*选择项不在0~9之间重输*/
returnc;
/*返回选择项,主程序根据该数调用相应的函数*/
②数据的输入
intenter(ADDRESSt[])
inti,n;
char*s;
\npleaseinputnum\n"
/*提示信息*/
%d"
&
n);
/*输入记录数*/
pleaseinputrecord\n"
/*提示输入记录*/
nameunittelephone\n"
------------------------------------------------\n"
for(i=0;
i<
n;
i++)
%s%s%s"
t[i].name,t[i].units,t[i].tele);
/*输入记录*/
----------------------------------------------\n"
returnn;
/*返回记录条数*/
③显示模块
显示所有记录,方便修改,查找等功能
voidlist(ADDRESSt[],intn)
inti;
\n\n***************************ADDRESS***************************\n"
%-20s%-30s%-11s%-20s\n"
t[i].name,t[i].units,t[i].tele,t[i].email);
if((i+1)%10==0)/*判断输出是否达到10条记录*/
Pressanykeycontinue...\n"
/*压任意键继续*/
********************************end****************************\n"
④删除模块
*
⑤查询模块
按照题目的要求查询可以分为姓名查询和电话号码查询
a)按姓名查找
b)按电话号码查找
⑥修改模块
⑦添加模块
I*
⑧保存模块
将所有记录的信息保存到record.txt中。
*
⑨加载模块
⑶公共函数
下面是在每个功能模块中都有可能用到的一些公共函数。
①显示指定的一条记录函数print(ADDRESStemp)
②查找姓名函数find1(ADDRESSt[],intn,char*s)
③查找电话号码函数find1(ADDRESSt[],intn,char*s)
6.上机操作
要输入的信息
nameaddrssphnumE-mail
第一组:
aaawuhan132***********
第二组:
bbbchengdu156***********
第三组:
ycxbeijing027***********
主菜单如下:
⑴输入模块
⑵显示模块
⑶删除模块:
①删除没有信息abc
②删除已经有的信息aaa:
③显示信息并要求确认
⑷查询模块:
①按姓名查找
输入已有姓名aaa,显示记录
输入没有记录ppp
②按电话进行查找
输入156,显示记录
⑸修改模块:
输入要修改的姓名,显示原有信息,在输入更新信息
⑹添加
⑺保存模块
⑻加载模块
7.总结
虽然是上学期已经学了C语言,但是对C语言还没有系统的掌握,大多是零碎的知识。
但是经过这一个星期的课程设计,已经对C语言有了系统的掌握。
当拿到课程设计指导书时,认真地读了下了里面的指导思路,掌握了分模块设计程序的思想。
另外我的设计主要用结构体和指针来实现整个功能的,这使我对结构体有力更深的掌握。
8.参考文献
9.附系统源代码
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 通讯录 管理 系统