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