c语言程序设计——简单的通讯录系统(实验报告)
- 格式:doc
- 大小:108.50 KB
- 文档页数:7
C语言课程设计报告书
实验题目通讯录管理系统
一、实验目的
通过进行计算机实践,更加系统地理解和掌握C语言的基本概念、语言特点和编程技巧。利用系统提供的标准函数和自定义函数进行程序设计,培养利用C语言设计综合程序的能力。
二、实验内容
在熟练掌握C语言的基本知识:数据类型(整形、实型、字符型、指针、数组、结构等);运算类型(算术运算、逻辑运算、自增自减运算、赋值运算等);程序结构(顺序结构、判断选择结构、循环结构);大程序的功能分解方法(即函数的使用)等。进一步掌握各种函数的应用。
三、需求分析
本学通讯录管理系统包含输入信息,显示信息,查询信息, 修改信息,追加信息,删除信息,修改密码,七大功能.其中查询模块又分为按姓名查找,按号码查找.
输入信息(Input)
显示信息(Output)
查询信息(Look)
修改信息(Change)
追加信息(Add)
删除信息(Delete)
修改密码(Key)
四.概要设计
1.系统分析
功能模块图:总目录以及下属的各个模块,这样可以使得程序的书写脉络清晰流畅。
程序结构图
2、模块功能说明
输入信息模块: 调用input()录入用户的通讯信息。
输出信息模块: 调用output()建立循环,输出全部通讯录信息。
查询信息模块:调用look()函数按照姓名、号码等通讯信息进行查找
追加信息模块:调用Add()追加通讯录信息
修改信息模块:调用change()函数按照姓名、号码、地址等通讯信息进行选择性的修改
删除信息模块: 调用delete()函数删除一条通讯录信息
修改密码模块:调用save_key()函数核对两次输入的新密码若相同保存新密码
于key.txt。
保存模块:调用 save()函数对最终所保留的信息进行保存,保存于friend.txt。五.详细设计及运行结果
主程序流程图
查询模块流程图
信息查询
功能选择
选择1 选择2 选择3 选择4 按姓名查询
按电话号码查询按手机号码查询返回主界面
否否否否否是是是是
结束
密码修改模块流程图
密码修改
是否修改
输入a
输入b
是否一致
密码为a
结束
六、调试情况,设计技巧及体会
个人总结
经两周的程序设计就要走向尾声了,这两周的实践让我获益匪浅,不但复习了以前学习过的知识,还学会了很多新东西新内容,最重要的是提升了自己从历小做起,把握全局的能力。如果说学习C语言的知识是“点”,那么这次程序设计就是“点成线”甚至“线成面”的过程。虽然现在来看,我的知识掌握情况还只是停留在浅尝辄止、只知皮毛的阶段,但是现在我已经有了继续提升的信心与决心。
下面对自己近两周的学习实践做以总结。
然而,程序设计本身就是一项精密细致的工作,从第一步做起是必须的。在细致复习了《C语言程序设计》的所学内容之后,我借鉴课后例题“超市商品管理系统”的范例构建出了程序的骨架和结构,确定了大的方向,之后一个模块一个模块设计,积少成多,最终完成设计。
作为一个初学者,我在编程过程中出现了很多问题,经过了很长时间的调试才将最终程序完成,下面列举具体问题。
起初程序没法在下次运行时提取数据,而且输入数目也有限。经过改进,我定义一个静态变量h加以限定长度并在程序结束时将h单独保存,这两个问题就同时解决了。
另外程序运行过程中有些提示信息总是一闪而过,经查阅,在需要停滞语句后加入sleep()函数使其得以保留一段时间,而希望在模块退出前保留页面可以追加一句getch()。
虽然程序设计完成了,但是我仍然存在着问题,比如没能实现密码用*输入,比如程序依然不够美观。今后,我会继续努力,实现自我的提升!
任何事情都没有一夜成功的,任何事情都需要步步为营,踏实苦干。本次程序设计既是对我技能的提高,也是对我人生认识的升华。今后,我将更加努力,
更上一层楼!
参考文献:《C语言程序设计》(第二版)王曙燕科学出版社七、源程序清单(略,详见电子版实验报告*在tubor C环境下运行)