文档介绍:湖南工程学院课程设计报告
通讯录管理系统
姓名: 李任
学院: 计算机与通讯学院
专业: 计算机科学与技术
班级: 计算机0803班
学号: 200803010326
指导教师: 刘长松
完成日期:2010-9-13
目录
:前言……………………………………………………………2
:概述……………………………………………………………3
:算法分析………………………………………………………5
:主要流程图……………………………………………………12
:程序源代码……………………………………………………13
:测试及输出结果………………………………………………20
:课程设计体会…………………………………………………23
:参考文献………………………………………………………24
第一章:前言
通过一个学期的学习,我认为要学好C语言程序这门课程,不仅要认真阅读课本知识,更重要的是要通过上机实践才能增强和巩固我的知识。
而C语言课程设计则对我们有以下几点帮助:
1. 进一步掌握和利用C语言进行程序设计的能力;
2. 进一步理解和运用结构化程序设计的思想和方法;
3.  初步掌握开发一个小型实用系统的基本方法;
4.  学会调试一个较长程序的基本方法;
5.  学会利用流程图或N-S图表示算法;
6.  掌握书写程设计开发文档的能力(书写课程设计报告) 。
第二章:概述
本课程设计的目的和意义
本课程设计可加深对课堂理论学习的理解,增强动手能力,以培养学生合作的能力,为毕业设计作好实践环节上的准备。通讯录系统是在学校常见的计算机信息管理系统。它的主要任务是对学生信息进行管理,如学生信息的输入、查询、修改、增加、删除,迅速准确地完成各种学生信息的统计和查询。
本课程设计主要内容
本系统有分7个功能:(1)写入数据(2)读取数据(3)追加数据(4)查找数据(5)备份数据(6)删除数据(7)还原数据。其主要利用结构类型,指针,数组,函数等C语言知识来实现。
第三章:算法分析
整个系统共分为8模块,主函数加7个子函数,从而实现7大功能:写入数据,读取数据,追加数据,查找数据,备份数据,删除数据,还原数据;各个程序的算法分析如下:
主函数main():
利用for( ; ; )和switch()实现主界面的显示与各选项的连接;
流程图如下:
开始
输入要运行的功能的序号
判断用户的输入
写入数据
读取数据
追加数据
查找数据
备份数据
删除数据
还原数据
结束
写入函数void input1():
利用文件的fwrite()语句来实现数据的保存;
流程图如下:
开始
输入y或n
用if判断输入了y还是n
y
n
输入要输入的资料
将数据保存到指定的文件里
结束
读取数据void read1():
利用文件的fread()语句来实现数据的读取;
流程图如下
开始
打开文件
定义变量int i
for(i=0;i<数据的行数;i++)
fread()读出i行数据
结束
追加数据void append1():
利用fread()来读出文件里的数据,从而确定数据的数量,再在最后一条数据后通过
fopen(“文件名”,”ab”)来实现追加;
流程图如下:
开始
定义变量int i,sum=0;
for(i=0;i<数据行数;i++)
读去i行的数据
sum=sum+1
for(i=sum;i<通讯录数据上限;i++)
将数据加入到文件里
用户输入要增加的数据
结束
查找数据void find1()
通过strcmp()==0来实现数据的查找;
流程图如下:
开始
定义变量int i;
输入要查找的名字
for(i=0;i<数据的行数;i++)
判断strcmp(i行数据,输入名字)==0吗?
Y
N
输出该行数据
结束
备份数据void backup1():
通过将数据复制到另一个文件里的方法来实现备份功能;
流程图如下:
开始
打开保存数据的原文件
打开一个新文件
for(i=0;i<数据的行数;i++)
定义变量int i;
读取原文件里第i行的数据
将读到的数据写入到新文件里
结束
删除数据void delete1():