C语言大作业设计

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

CHANGZHOU INSTITUTE OF TECHNOLOGY

C语言大作业

设计说明书

题目: 通讯录管理系统

二级学院(直属学部):计算机信息工程学院

专业: 软件工程(中英合作)班级: 12软件二姓名: 学号:

2013年7月

目录

1 概述 (1)

1.2设计分析 (1)

1.3开发工具 (1)

1.4应用平台 (1)

2 系统设计 (2)

2.1功能模块设计 (2)

2.2数据结构设计 (4)

2.3函数功能设计 (4)

3 实现与测试 (7)

3.1关键技术实现 (7)

3.2测试运行结果 (8)

4 开发日志 (14)

5 设计总结 (14)

6 参考文献 (14)

1 概述

1.1 小组构成及分工

1.2 设计分析

本程序设计共包含六个函数模块,分别是添加记录、显示记录、删除记录、查询记录、修改记录、保存记录等信息模块,完成通讯录的功能。在主函数中可以以1、2、3、4、 5、6数字键分别可以执行某个功能模块。

1.3 开发工具

Visual C++ 6.0 和window32

1.4 应用平台

Windows XP 32位

2 系统设计

2.1功能模块设计

1.系统模块图

本系统包括6个模块,分别是添加模块、显示模块、删除模块、查询模块、修改模块、保存模块等,各模块的功能如图2.1所示。各个模块的功能描述如下:

(1)添加模块:可以添加通讯录记录,依次输入姓名、年龄、电话号码、地址、电子邮箱后,并会提示是否继续添加。

(2)显示模块:可以以表格形式输出所有通讯录里的记录。

(3)删除模块:输入欲删除的那个人的名字后,会自动删除他(她)的记录内容。

(4)查询模块:可以选择用姓名、电话、地址三种方式查询。

(5)修改模块:输入欲修改的那个人的名字后,再依次输入姓名、年龄、电话号码、地址、电子邮箱完成修改。

(6)保存模块:输入文件名(带后缀名)后,即可将通讯录信息保

存到文件。

图2.1 系统模块图

2.任务执行流程图

定义主函数main函数和一系列的功能函数,只有通过这些函数才可实现程序的功能。每次使用都会调用主函数。流程图如图2.2所示:

图2.2 系统流程图

2.2数据结构设计

1.根据描述的基本信息含有多个属性,其中包括姓名、年龄、号码、地址、邮箱,为此可根据信息建立结构体,类型定义如下: typedef struct

{char name[10]; /*姓名*/

char num[15]; /*号码*/

char email[20]; /*邮箱*/

char age[8]; /*年龄*/

char adds[20]; /*住址*/

}Person;

2.Person结构体数组

Person pe[80];

2.3函数功能描述

1.Input( )

函数原型int Input(Person per[ ], int n)

选择添加联系人,程序在Input( )函数下输入添加联系人的信息。其中,n表示存储的n条记录,Person per[ ]是结构体数组变量。

2.Display( )

函数原型void Display(Person per[ ], int n)

Display( )函数显示所有联系人的信息到屏幕上。其中,n表示存储的n条记录,Person per[ ]是结构体数组变量。

3.Delete_a_record( )

函数原型int Delete_a_record(Person per[ ], int n)

Delete_a_record( )函数输入删除的联系人的姓名。其中,n表示存储的n条记录,Person per[ ]是结构体数组变量。如图2.3所示:

图2.3 删除记录流程图

4.Query_a_record( )

函数原型void Query_a_record(Person per[ ], int n)

在void Query_a_record( )函数中查找联系人,根据输入要查联系人的姓名、电话或地址,程序输出此人的信息。其中,n表示存储的n条记录,Person per[ ]是结构体数组变量。如图2.4所示,以查询姓名为例:

图2.4 查询记录流程图

5.Change( )

函数原型void Change(Person per[ ], int n)

void Change( )函数输入欲修改的联系人,重新输入联系人信息即可完成联系人的修改,其中,n表示存储的n条记录,Person per[ ]是结构体数组变量。

6.WritetoText( )

函数原型void WritetoText(Person per[ ], int n)

void WritetoText( )函数保存经过一系列操作之后的联系人的信息。其中,n表示存储的n条记录,Person per[ ]是结构体数组变量。

3 实现与测试

3.1关键技术实现

通过switch函数来控制主菜单,进行操作选择各项功能,从而完成通讯录系统的操作。

switch(menu_select())

{

case 1:

printf("\n\t添加记录到通讯录\n");

n=Input(pe,n); break;

case 2:

printf("\n\t\t\t 通讯录记录表\n"); Display(pe,n); break;

case 3:

printf("\n\t从通讯录中删除记录\n");

n=Delete_a_record(pe,n);

printf("\t");

system("pause"); break;

case 4:

printf("\n\t在通讯录中查找记录\n");

Query_a_record(pe,n);

printf("\t");

system("pause"); break;

case 5:

printf("\n\t修改通讯录中的记录\n");

Change(pe,n);

printf("\t");

system("pause"); break;

case 6:

相关文档
最新文档