课程设计说明书示例

  • 格式:doc
  • 大小:63.00 KB
  • 文档页数:11

下载文档原格式

  / 11
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

面向过程程序设计(C语言)课程设计

设计说明书

通讯录管理系统

起止日期: 2012 年 12 月 18 日至 2012 年 12月 23日

学生姓名

班级

学号

成绩

指导教师(签字)

计算机与通信学院

2012 年 12 月 23 日

通讯录管理系统

一、设计要求

综合运用C语言程序设计课程的主要知识,设计一个用于通讯录管理的程序,设计指标由程序的功能要求和技术要求具体说明。

1、功能要求

通信录管理程序至少应具有如下功能:

(1)输入功能:能通过键盘向通信录输入数据。要求随时都能使用该项功能实现记录输入,一次可以输入一条记录,也可以输入多条记录。所谓一条记录,是指通信录中一个人员的完整信息。

(2)显示功能:能显示通信录存储的记录信息,在显示时能提供下列显示方式:

①按自然顺序显示。即按照向通信录输入数据时各条记录的先后顺序,显示通信录中已有的记录信息。

②按照一定的排列顺序显示通信录信息。排序顺序有多种,如按姓名查询、按所在城市查询,任何一种查询都要有明确的查询结果。

(3)查询功能:能查询通信录信息。要求至少提供两种查询方式,如按照姓名查询、按所在城市查询,任何一种查询都要有明确的查询结果。

(4)修改功能:能对通信录存储的信息进行修改。要求至少提供两种修改方式,如按照姓名修改、按照通信录记录序号修改。记录序号是通信录记录的自然顺序编号。

(5)删除功能:能对通信录的信息进行删除。要求删除时以记录为单位,既能一次删除一条记录,也能一次删除多条记录。

(6)保存功能:能将记录保存在任何自定义的文件中,如保存在:c:\score。

(7)读取功能:能将保存在文件中的记录读取出来,并在屏幕上显示。

(8)通信录管理结束后,能够正常退出通信录管理程序。

2、技术要求

(1)每个通信录记录至少包括如下信息:姓名、电话、所在城市、所在单位、年龄、备注等。

(2)通信录信息以磁盘文件的形式存储,存储位置、文件名、文件格式由设计者确定。

(3)对于通信录功能中数据输入、显示、查询、修改、删除、保存、读取等功能,要求编写功能独立的函数或主控函数予以实现,其所属的各项功能尽量由独立的函数实现。

(4)以菜单方式实现功能选择控制。

(5)本通信录管理程序能够实现100条记录的管理。

二、程序的功能设计

根据题目的功能要求,设计通信录管理程序的功能如图1所示。

图1 通信录管理程序功能图

各功能的具体说明如下:

1、通信录信息录入

(1)通过显示信息项目,逐项输入通信录的记录信息。

(2)每次输入记录后,通过询问的方式决定是否继续进行记录输入。因此,使用该功能既可以录入一条记录,也可连续录入多条记录。

(3)每次录入记录之前,显示通信录中已有的记录数。

2、通信录信息显示

(1)按自然顺序显示,即以通信录文件中的记录顺序为序,逐个对文件记录进行显示。(2)按排序顺序显示,即对通信录中的记录进行排序后,再按照排序结果显示出来,但不管使用何种排序算法,排序显示不能改变通信录记录的物理顺序。

(3)当通信录信息较多时,实行分屏显示,每屏最多显示20条记录信息。

(4)显示记录时,对每一条记录增加与显示顺序一致的序号。

3、通信录信息查询

(1)提供按姓名查询和按城市查询两种查询方式。

(2)查找成功后显示每一条符号条件记录的完整信息,当一屏不能完成显示时,实行分屏显示,每屏最多显示20条符合条件的记录信息。当找不到符合条件记录时,给出相应的提示信息。

4、通信录信息修改

(1)按照指定的记录序号,对通信录记录进行修改。首先显示指定的记录当前数据,然后

通过重新输入该记录数据的方法,完成数据修改操作。

(2)为方便确认记录序号,该功能项同时提供通信录记录的浏览功能。

5、通信录信息删除

(1)提供按姓名删除和按序号删除两种方式,当找到指定记录时,进行删除操作。找不到指定记录时,给出相应的提示信息。

(2)所有的删除均为物理删除,即将制定的记录从通讯录文件中彻底清除掉。

6、建立通讯录文件

第一次使用通讯录管理程序时,用于建立存储通讯录信息的文件。

三、程序的数据设计

(1)每个通讯录记录由多个不同的数据项构成,是一个结构体数据,因此需要定义结构体数据,因此需要定义结构体数据类型。根据题目要求,确定每个记录包括的数据项目为:姓名、电话、所在城市、所在单位、年龄、备注等。据此定义如下结构体数据类型:

Struct record

{

Char name[20] / /姓名

Int age; / /年龄

Char tele[15]; / /电话号码

Char city[20]; / /所在城市

Char units[30]; / /所在单位

Char note[20]; / /备注

};

(2)考虑到struct record是通讯录管理程序中的通用数据类型,将在多个函数中使用,故将其在头文件中定义。

(3)使用文件存储数据类型为stuct record的通讯录数据。

四、程序的函数设计

1、函数功能描述

(1)main()函数

通讯录管理程序主函数,实现程序功能的主菜单显示,通过各功能函数的调用,实现整个程序的功能控制。

(2) append()函数

函数原型为void append(),是输入数据函数,它实现通讯录数据的键盘输入。

(3)display()函数

函数原型为void display(),是显示通讯录信息的主控函数,它实现显示功能的菜单显示,并进行不同显示功能的函数调用,以实现程序的显示功能。

(4)locate()函数

函数原型为void locate(),是查询通讯录信息的主控函数,它显示查询功能的菜单,并根据查询要求,进行相应的函数调用,以实现查询的查询功能。

(5)modify()函数

函数原型为void modify(),修改通讯录信息的主控函数,它显示查询功能的菜单,进行相应的函数调用,以实现程序的修改功能。

(6)dele()函数

函数原型为void dele(),是删除通讯录记录的主控函数,它显示删除功能的菜单,并根据删除要求,并进行相应的函数调用,以实现程序的修改功能。

(7)disp_arr()函数

函数原型为void disp_arr(struct record[],int),功能是显示struct record型结构体数组的全部数据,其第二个参数是结构体数组的长度。这里的结构体数组对应于存储通讯录文件的数据,数组长度对应于通讯录文件的记录数。

(8)disp_name()函数