通讯录管理系统设计与实现.docx
- 文档编号:24549888
- 上传时间:2023-05-28
- 格式:DOCX
- 页数:13
- 大小:254.91KB
通讯录管理系统设计与实现.docx
《通讯录管理系统设计与实现.docx》由会员分享,可在线阅读,更多相关《通讯录管理系统设计与实现.docx(13页珍藏版)》请在冰豆网上搜索。
通讯录管理系统设计与实现
大连民族大学
计算机科学与工程学院实验报告
实验题目:
1.学生信息管理系统的设计与实现
2.暴力算法在旅行商问题中的应用
课程名称:
信息系统开发案例
实验类型:
□演示性□验证性□操作性□设计性☑综合性
专业:
软件工程班级:
144
学生姓名:
赵耀学号:
2014082430
实验日期:
2017年3月6日—4月27日
实验地点:
金石滩校区I303机房
实验学时:
24学时实验成绩:
指导教师:
赵戈
通讯录管理系统的设计与实现
摘要
本项目用C++语言开发了一个简单的通讯录管理系统,该系统能对联系人信息进行“增删改查”。
系统的UI设计基于Windows系统自带的控制台。
测试结果表明该通讯录管理系统可以稳定正确运行,具有较高的可靠性。
关键词:
通讯录管理系统;C++语言;Windows控制台
1.选题的背景和意义
当今时代,计算机已经成为人们生活中不可或缺的一部分,它打破了地域时间限制,改变了人们的工作和生活方式。
人们之间的联系越来越便捷,这就使得要经常与很多人保持着联系,而单纯依靠人脑已经很难记住所有人的联系方式还有其各做附加信息。
通讯录系统能方便用户的需求,满足用户迅速、准确的查找修改或者删除联系人信息,把各个联系人信息以文件保存。
本文介绍了c++编写简易通讯录管理:
系统的分析,功能模块的设计,系统的流程图及运行界面。
此系统的主要管理的信息由:
联系人的姓名、性别、电话号码,加深对c++语言程序设计的理解,提高算法设计的能力,锻炼编程的能力。
用c语言编程一个通讯录管理系统软件,要求能实现通讯录管理系统中的增加信息,删除信息,显示通讯里的所有信息,按名字查询信息,保存通讯录,退出系统。
。
2.需求分析
2.1用例图
通讯录管理系统的用例图如下图所示:
图2.1用例图
2.2用例文本
表2.1输入联系人的用例文本
用例编号
001
用例名称
输入联系人
用例描述
首次输入联系人的姓名,电话号码,地址
参与者
用户
前置条件
无
后置条件
联系人信息记录存入内存
主事件流
1.系统显示输入前的通讯录人员表
2.用户输入联系人姓名
3.用户输入联系人电话
4.用户输入联系人地址
5.教师输入学生的英语成绩
6.系统显示输入后的通讯录人员表
扩展事件流
无
补充说明
无
表2.2查询联系人的用例文本
用例编号
002
用例名称
查询联系人
用例描述
按姓名查询某位联系人的信息
参与者
用户
前置条件
无
后置条件
无
主事件流
1)用户输入姓名
2)系统返回相应的查询结果
扩展事件流
若联系人不存在则系统会给出提示
表2.3显示联系人的用例文本
用例编号
004
用例名称
显示联系人
用例描述
显示所有联系人的姓名电话地址
参与者
用户
前置条件
联系人信息已经输入
后置条件
无
主事件流
在控制台显示所有联系人的电话姓名地址
扩展事件流
无
补充说明
若尚未录入任何联系人信息则给出提示
3.总体设计
3.1通讯录管理系统功能模块图
图3.1通讯录管理系统的功能模块图
3.2主控main函数执行流程图
图3.2主控main函数的执行流程
3.3执行流程图的解释说明
下面通过一个成绩输入的例子来进一步说明上述程序流程图:
Step1:
程序启动时显示系统主菜单,用户通过输入数字选择菜单项:
Step2:
如果用户输入数字“1”,手动添加联系人信息或者文件导入
Step3:
返回主界面后用户输入数字“4”,则显示所有人联系人信息
3.4存储结构设计
本项目利用文本文件作为主要的外存存储结构,内存所用的数据结构是哈希表。
1.联系人信息结构体
structnode
{
stringname;
stringnum;
stringadd;
charsign;
intcount;
};
结构node将用于存放联系人的基本信息,它将作为哈希表的数据域,其中各个字段的含义如下所示:
stringname;保存姓名
stringnum;保存号码
stringadd;保存地址
charsign;哈希表标记
intcount;联系人数量
4.详细设计
3程序运行结果
图6.1给出了程序刚启动时的主菜单界面,用户通过输入1-9间的数字来选择菜单操作。
图6.1程序启动时的主菜单界面
1.总结和展望
毋容置疑这次设计的程序是有很多不足的地方的,缺点还是很多。
当电话号码重复时依然可以存储,只可以用姓名进行查找,等其他问题,发现自己欠缺的东西还是不少,要学习更多只是来完善自己,充实自己。
附录
程序源代码:
主函数代码
旅行商问题暴力算法的设计与实现
1.问题简介
旅行商问题(TravelingSalesmanProblem,TSP)又译为旅行推销员问题、货郎担问题,简称为TSP问题,是最基本的路线问题,该问题是在寻求单一旅行者由起点出发,通过所有给定的需求点之后,最后再回到原点的最小路径成本。
最早的旅行商问题的数学规划是由Dantzig(1959)等人提出。
2.算法介绍
2.1数学建模
例如:
给定4个地点{a,b,c,d}及其各地点之间的路程,找出其最短路径
2.2模型示意图
2.3算法思想
首先是在图为完全图的前提下,构造各地点间的图的结构,采用邻接数组的形式,将各个城市间的距离存储于图的数组中,用一个函数递归寻找从同一个顶点出发的各个地点的所有路径,再求出各个路径的路程,并与相应的路径输出,对路程数组进行冒泡排序后,经比较找出最短路径并输出。
2.4算法流程图
3实验目的
通过程序找到最短路径和最短距离。
4实验设计
计算所有走法的个数,记录走过的地点,循环循环求各种路线的路程,变换路线顺序,求对应路线的路程,输出按该路线结果,比较并选择最优路线,输出最短距离和路径。
5实验代码
6实验测试
6实验结果
7.总结与展望
旅行商问题是生活中比较常见的问题,有效的方法可以节省人力物力。
通过暴力算法解决该问题,需要的时间比较长,应该在日后的学习中寻找更加高效快捷的方法。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 通讯录 管理 系统 设计 实现