(完整版)通讯录管理系统数据结构毕业课程设计(C语言)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
湖南工程学院课程设计报告
通讯录管理系统
姓名:李任
学院:计算机与通讯学院
专业:计算机科学与技术
班级:计算机0803班
指导教师:刘长松
目录
1.第一章:前言 (2)
2.第二章:概述 (3)
3.第三章:算法分析 (5)
4.第四章:主要流程图 (12)
5.第五章:程序源代码 (13)
6.第六章:测试及输出结果 (20)
7.第七章:课程设计体会 (23)
8.第八章:参考文献 (24)
第一章:前言
通过一个学期的学习,我认为要学好C语言程序这门课程,不仅要认真阅读课本知识,更重要的是要通过上机实践才能增强和巩固我的知识。
而C语言课程设计则对我们有以下几点帮助:
1. 进一步掌握和利用C语言进行程序设计的能力;
2. 进一步理解和运用结构化程序设计的思想和方法;
3. 初步掌握开发一个小型实用系统的基本方法;
4. 学会调试一个较长程序的基本方法;
5. 学会利用流程图或N-S图表示算法;
6. 掌握书写程设计开发文档的能力 (书写课程设计报告) 。
第二章:概述
一、本课程设计的目的和意义
本课程设计可加深对课堂理论学习的理解,增强动手能力,以培养学生合作的能力,为毕业设计作好实践环节上的准备。通讯录系统是在学校常见的计算机信息管理系统。它的主要任
务是对学生信息进行管理,如学生信息的输入、查询、修改、增加、删除,迅速准确地完成各种学生信息的统计和查询。
二、本课程设计主要内容
本系统有分7个功能:(1)写入数据(2)读取数据(3)追加数据(4)查找数据(5)备份数据(6)删除数据(7)还原数据。其主要利用结构类型,指针,数组,函数等C语言知识来实现。
第三章:算法分析
整个系统共分为8模块,主函数加7个子函数,从而实现7大功能:写入数据,读取数据,追加数据,查找数据,备份数据,删除数据,还原数据;各个程序的算法分析如下:
(1)主函数main():
利用for( ; ; )和switch()实现主界面的显示与各选项的连接;
流程图如下:
(2)写入函数void input1():
利用文件的fwrite()语句来实现数据的保存;
流程图如下:
(3)读取数据void read1():
利用文件的fread()语句来实现数据的读取;
流程图如下
(4)追加数据void append1():
利用fread()来读出文件里的数据,从而确定数据的数量,再在最后一条数据后通过
fopen(“文件名”,”ab”)来实现追加;
流程图如下:
(5)查找数据void find1()
通过strcmp()==0来实现数据的查找;
流程图如下:
(6)备份数据void backup1():
通过将数据复制到另一个文件里的方法来实现备份功能;
流程图如下:
(7)删除数据void delete1():
通过将后一行数据覆盖前一行数据的方法来实现删除功能;
流程图如下:
(8)还原数据comeback1():
通过将已备份的数据复制到原来的这个文件里的方法来实现还原的
流程图如下:
第四章:主要流程图
系统功能模块结构图:
各模块功能的分析:
(1)主函数:可让用户选择用系统的哪个功能,从而去连接到相应的子函数;
(2)写入数据:让用户输入通讯录里的内容,并将内容保存好;
(3)读取数据:显示通讯录里已保存的数据;
(4)追加数据:让用户在通讯录原有数据中,再加上新的数据;
(5)查找数据:通过用户输入需要找的名字来找到相关资料;
(6)备份数据:将已有数据进行备份;
(7)删除数据:让用户删除想要删除的资料;
(9)还原数据:使通讯录里的数据恢复到备份时的模样。
第五章:程序源代码
#include printf("Be careful!!!Do you sure to input?(yn):\7\7\7\n"); n=getchar(); n=getchar(); if(n!='y') return; { fp=fopen("txl","wb"); for(i=0;i { printf("Input the name(Input exit return):\n"); scanf("%s",stu[i].name); if(strcmp(stu[i].name,"exit")==0) return; else { printf("Input the city:\n"); scanf("%s",stu[i].city); printf("Input the email:\n"); scanf("%s",stu[i].email); printf("Input the phone:\n"); scanf("%ld",&stu[i].phone); printf("Input the zip:\n"); scanf("%ld",&stu[i].zip); fwrite(&stu[i],sizeof(struct address),1,fp); } } fclose(fp); } }