《高级语言程序设计》课程设计报告——电话簿管理系统.doc
文本预览下载声明
PAGE
PAGE 33
《高级语言程序设计》
课程设计报告
专 业: 计算机科学与技术
班级学号:
姓 名:
指导教师:
年 月 日
课程设计题目:电话簿管理系统
课程设计目的和要求
目的:电话簿管理程序,具有加入、删除、显示和查询电话号码的功能。
要求:1. 除有加入、删除、显示和查询功能外,还允许修改用户姓名、电话。
2. 具有缺省查询方式,即查询时只输入姓名的首字母,所有符合这一条件的电话资料均在屏幕上显示出来。
系统分析与设计
系统总体设计
通过对整个系统的分析,根据上述要求,可以将这个系统的设计分为三个模块(见图1):文件导入、通讯录编辑和退出。
通讯录管理系统
新建菜单
浏览菜单
修改菜单
删除菜单
查找菜单
图1 系统功能模块
系统详细设计
Ⅰ 主函数
主函数一般设计得比较简洁,只提供部分提示语及部分功能模块函数的调用。
[程序]
void main()
{printf(\n\t\t :)欢迎使用通讯录管理系统beta);
printf(\n\t\t~~~~(_)~~~~ 文件导入中……请稍后……\n\n\n\n\n);
system(cls);
loadfile();
while (1)
{
mainmenu();
}
}
Ⅱ 各功能模块设计
(1)主菜单函数
此函数功能为提供键盘式选择菜单以调用不同函数。其流程如图2所示。
显示一系列功能选项
输入n,判断n是否是1~ 5?
根据n的值调用各功能模块函数
结束
开始
n
图2 主菜单函数流程图
[程序]
void mainmenu()
{
char choice;
system(cls);
printf(\n\t\t******************** 主菜单 ********************);
printf(\n\t\t****************** 1-新建菜单 ******************);
printf(\n\t\t****************** 2-浏览菜单 ******************);
printf(\n\t\t****************** 3-查找菜单 ******************);
printf(\n\t\t****************** 4-修改菜单 ******************);
printf(\n\t\t****************** 5-删除菜单 ******************);
printf(\n\t\t****************** 6-退 出 ******************);
printf(\n\t\t************************************************);
printf(\n\t\t请选择:);
choice=getch();
switch (choice)
{
case 1:newrecord();break;
case 2:browsemenu();break;
case 3:searchmenu();;break;
case 4:modifymenu();break;
case 5:deletemenu();break;
case 6:exit(0);
default:mainmenu();
}
}
(2) 新建菜单函数
该函数的功能是用户需要新建联系人记录,从键盘输入并逐条写到原来的通讯录文件中,注意采用新建而不是覆盖的方式。其流程如图3所示。
开始
新建联系人
是否继续新建?y/n
结束
n
y
图3 新建函数流程图
[程序]
void newrecord()
{
printf(\n\t\t**************** 请输入联系人信息 ****************\n);
printf(\n\t\t输入姓名:);
scanf(%s,contact[NO].name);
printf(\n\t\t输入电话号码:);
scanf(%s,contact[NO].phone);
printf(\n\t\t输入工作单位:);
scanf(%s,contact[NO].adress);
printf(\n\t\t输入E-mail:);
scanf(%s,contact[NO].e_mail);
NO++;
savefile();
printf(\n\t\t是否继
显示全部