通讯录管理系统-软件学院

通讯录管理系统-软件学院

ID:6381428

大小:216.50 KB

页数:17页

时间:2018-01-12

通讯录管理系统-软件学院_第1页
通讯录管理系统-软件学院_第2页
通讯录管理系统-软件学院_第3页
通讯录管理系统-软件学院_第4页
通讯录管理系统-软件学院_第5页
资源描述:

《通讯录管理系统-软件学院》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、《C语言程序设计》课程案例常州信息职业技术学院案例一通讯录管理系统1.1需求分析1.1.1系统概述随着科技的进步和信息产业的飞速发展,通讯录成为现代生活中一个重要的工具。通讯录管理系统利用计算机对通讯录进行统一管理,包括添加、修改、删除、查询等功能,实现通讯录管理工作的系统化、规范化和自动化,为人们的工作和生活提供便利。1.1.2系统运行环境1、硬件环境l处理器:IntelPentium166MX或更高l内存:32MBl硬盘空间:1GBl显卡:SVGA显示适配器2、软件环境l操作系统:Windows98/ME/2000/XP1.1.3功能需求描述①输入记录:可从文件中

2、将数据读入内存,也可直接从键盘输入数据并将它们存入数组中。②查询记录:提示用户输入要查找记录的序号或姓名,如果没找到,则输出没找到信息,否则,显示找到的记录信息。③删除记录:提示用户输入要删除记录的姓名,如果没有该记录,显示没找到信息;否则,显示记录信息,并询问用户是否确实要删除,若是,则删除。④修改记录:提示用户输入要修改记录的姓名,首先查找该记录是否存在,若存在,则提示用户进行修改,否则提示用户没有找到该记录。⑤插入记录:提示用户输入某记录的姓名,并查找该记录是否存在,若存在,则提示用户输入新的记录信息插入在此记录前。⑥记录排序:按照姓名进行排序。⑦保存信息至文件

3、:将所有的通讯录信息保存到磁盘文件中,以方便用户管理。⑧文件备份:将磁盘文件做一个备份文件,以防止数据意外丢失。1.2总体设计1.2.1设计思路第17页共17页《C语言程序设计》课程案例常州信息职业技术学院程序设计一般由两部分组成:算法和数据结构,合理地选择和实现一个数据结构和处理这些数据结构具有同样的重要性。在通讯录管理程序中,由于预计记录数相对于一个单位的学生人数或职工人数来说不会太大,除了能够增加、删除、保存等外,更多的情况是查询,且能够实现快速查询,所以选用静态数组保存数据,实现多种查询方式。1.2.2系统模块结构图现代人社会交往越来越多,人们随身携带有通讯录

4、,对通讯录进行必要的管理,对人们实现快速查询记录提供了极大的方便。其基本功能模块如图1-1所示。通讯录管理系统输入显示查找删除插入保存读入按序号查找拷贝排序快速查找退出图1-1基本功能模块图1.2.3数据结构设计由于使用静态数组需要预先估计记录数,所以先预定一个常数M,表示记录数,也就是数组的大小,记录联系人的信息至少应有姓名、单位、电话,所以定义每个数组元素的类型为结构体。由于数组存储是采用顺序存放,在内在空间中占用连续空间,所以若干条记录通讯录的管理实质就是对顺序存储的线性表的管理。结点结构如下:#defineM50//估计的记录数typedefstruct//定

5、义数据结构{charname[20];//姓名charunites[30];//单位chartele[15];//电话}ADDRESS;//结构体类型名1.2.4功能模块设计1、main()主函数程序采用模块化设计,主函数是程序的入口,各模块独立,可分块调试,均由主函数控制调用。控制功能的实现通过循环执行一个开关语句,该语句的条件值是通过调用主菜单函数得到的返回值,根据该值,调用相应的各功能函数,同时设置一个断点,即当返回值为一定条件时运行exit()函数结束程序,以免造成死循环。2、menu_select()主菜单直接利用输出函数printf输出字符串,在屏幕上显示

6、一个菜单,并显示一个提示输入选项,输入0-11之间的数字,将此数字作为菜单函数的返回值返回主函数,主函数根据这个数字调用相应的功能函数。制作简便,操作简单,界面如图1-2所示。第17页共17页《C语言程序设计》课程案例常州信息职业技术学院图1-2主菜单界面由于程序中很多地方用到了字符串输入语句,会造成下一个字符不能正确读入,为了在程序调用执行了各个函数后能够清晰地看到菜单,并输入新的选项,首先写了一条输出信息,printf("按任意键继续");表示按任意键继续,一条读字符语句等待输入字符,按任意键即可进入主菜单。读者可以将这两条语句加上注释不执行来体会它的功能。图

7、1-3输入界面按照所见即所得的方式直接设计输出函数,输出字符串,达到菜单效果,将精力主要放在程序功能的实现上,利用do循环语句,一直执行scanf("%s",s);语句,让用户输入0-11之间的数,按照字符串形式输入,然后执行c=atoi(s);,将字符串转化为数字,返回主函数,如果输入范围不是0-11,则循环等待重新输入。既然是数字选项,为什么不用整数格式输入,而要按字符串输入,再将其转换呢?如果按照整数格式输入,当用户输入了非数字字符,例如a和b等,由于类型不同将导致程序出错,所以对于不参与运算的数据,表面上看是数字,也应将其设为字符处理,例如电

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。