智能手机通讯管录理件软.docVIP

  • 1
  • 0
  • 约1.5万字
  • 约 21页
  • 2017-02-15 发布于北京
  • 举报
智能手机通讯管录理件软

计算机高级语言课程设计(C) 计算机高级语言(C)课程设计报告 通讯录管理系统 学生姓名: 曾中良 班 学 号: 指导老师: 杨敏 中国地质大学(武汉)机械与电子信息学院 2008年7月 通讯录管理系统 一、问题描述 设计一个通讯录管理系统程序,实现对通讯录进行管理。 基本要求: (1)显示功能:选择此功能时,列出下列四类选择: (A)、家庭 (B)、朋友 (C)、重要人士 (D)、其他 当选中某类时,显示此类所有数据中的姓名和电话号码。 (2)删除功能:选中某人姓名时,可以对此人的相应数据进行删除。 (3)增加功能:可以录入数据,数据应包括姓名、电子邮箱、电话号码、缩位号码、分类。例如: 曾中良 136635095@ 02759707307 1 A 当姓名重复时,则提示数据录入重复并自动取消录入;当通讯录中信息超过100条时,存储空间已满不能继续录入新数据。 (4)编辑功能:当选中某个姓名时,可以对此人的一切数据进行修改。 (5)拨号功能:当输入某个姓名或缩位号码时,屏幕上可显示出此人的号码。 二、算法设计 1、 程序总体设计 图1 程序的总体流程图 图2:程序所有功能 每一个功能都编写一个函数,多个功能函数都要用到的子模块单独编写函数,供各个实现功能的函数调用。在主函数中设置欢迎界面和菜单处理函数,通过菜单处理函数调用各子函数处理模块,从而实现整个通讯录管理系统的功能。因为各个函数之间是并列关系,所以可以通过switch函数实现各个功能函数的调用。 2、详细详细设计 1、信息结构体说明 图3:信息结构体说明 2、函数说明 3.主要函数、结构体和链表 void creat();/*将文件的信息读入结构体数组在转存入链表中*/ void ShowA(); void ShowB(); void ShowC(); void ShowD(); void Show(); void Delete(); void Input(); void Alter(); void Dial(); void Save(); struct persons /*定义结构体数组用于缓存数据*/ { int num; /*编号*/ char name[20]; /*姓名*/ char e_addr[20]; /*电子邮箱*/ char tel_no[15]; /*电话号码*/ char sim_no; /*缩位号码*/ char arch; /*分类*/ }persons[maxlen]; typedef struct lnode /*通讯录结构中结点的定义*/ { int num; char name[20]; char e_addr[20]; char tel_no[15]; char sim_no; char arch; struct lnode *next; }listnode,*linklist; 4.详细设计 (1)、新建通讯录文件 1.打开通讯录文件文本; 2.如果文件存在,则用尾插法将文件中的数据依次存入链表中,然后关闭文件; 3.如果文件为不存在,则新建一个空的通讯录文件文本,然后关闭文件。 (2)、显示信息 1.在提示中界面选择 显示通讯录 ; 2.输入需要显示的类别; 3.根据选择的类别调用显示函数; 4.从第一个节点开始,判断链表中的节点是否属于选择的类别; 5.如果节点属于所选类别,则显示该节点中所有信息; 6.如果不属于所选类别,则将所指节点下移,直至将链表中所有属于该类别的信息 全部输出为止; 7.回到提示界面。 (3)、删除信息 1.在提示界面中选择 删除通讯录 ; 2.输入要删除的姓名; 3.如果通讯录文件空,则输出 你选择的用户不存在! ; 4.如果通讯录文件不为空,则从第一个节点开始比较,若有某一节点中的姓名与输入姓 名相同时,就释放该节点; 5.若节点中所有姓名都与输入姓名不相同,则输

文档评论(0)

1亿VIP精品文档

相关文档