文档视界 最新最全的文档下载
当前位置:文档视界 › 手机通讯录系统课程设计报告

手机通讯录系统课程设计报告

手机通讯录系统课程设计报告
手机通讯录系统课程设计报告

课程名称: 程序设计基础课程设计 学院名称: 计算机科学与工程学院 专 业: 计算机科学与技术

课程设计报告

线

目录

一、绪论 (3)

二、设计内容 (4)

1、选题 (4)

2、系统功能 (4)

3、应用到的技术 (4)

三、设计要求 (4)

四、设计环境 (5)

1、操作系统 (5)

2、开发工具 (5)

3、PC机配置 (5)

五、系统结构图 (5)

六、功能实现 (6)

1、系统运行 (6)

2、添加联系人 (6)

3、修改联系人 (7)

4、删除联系人 (8)

5、查找联系人 (8)

6、查看所有联系人 (8)

7、对联系人在文件中的存储位置进行排序 (9)

8、系统运行结束 (9)

七、遇到的问题和解决的方法 (9)

八、设计心得 (10)

九、参考文献 (11)

十、附件 (12)

1、头文件 (12)

2、主函数 (12)

3、函数实现文件 (13)

需求分析

在这个信息化的时代,手机已成为继固话之后最为通俗的交流工具。在这个人与人关系愈加密切的时代,“通讯”成了生活中的必需品。这就有这么一个系统记录下人与人之间的多样联系方式——手机通讯系统。通过系统记录下对方的联系方式,既减轻了大脑的负担,又不在受各种条件的约束,做到便捷随身管理相关的联系信息,摆脱了传统电话簿,名片的累赘。从长远利益来看,可是意义重大的环保之举。

根据市场需求,手机通讯录管理系统所记录的信息一般分为个人、商业、办公三类。清晰了机主的联系方向。针对性的分门别类,使系统具有了方便了机主的存储和快速查阅优势功能,大大减少了在电话簿,名片上机械翻阅查找过程的时间。于此同时又根据手机随身携带的特殊性,在一定程度上比一般的制作文件又其次,因为手机是随身携带的通讯工具,这与记事本相比将在一定程度上保障联系人信息的安全性,相对避免了个人隐私信息外泄从而带来的损失。

综上所述,手机通讯录管理系统是一个高效、实时、绿色环保的管理系统。

友元重载常函数构造函数析构判断数据链表

手机通讯录管理系统

一、主要功能

模拟手机通信录管理系统,要求:

(1)查看功能:选择此功能时,列出下列三类选择:

A 办公类

B 个人类

C 商务类,当选中某类时,依次显示出此类所有数据中的姓名和电话号码

(2)增加功能:能录入新数据(包括:姓名、电话号码、分类(可选项有:A 办公类 B 个人类 C 商务类)、电子邮件)。

?当录入了重复的姓名和电话号码时,提示数据录入重复并取消录入;

?通信录容量限定在15条以内。

?当存储信息超出存储空间,提示存储空间已满,不能再录入新数据;

?录入的新数据能按递增的顺序自动进行条目编号。

(3)拔号功能:能显示出通信录中所有人的姓名,当选中某个姓名时,屏幕上模拟打字机的效果依次显示出此人的电话号码中的各个数字,并伴随相应的拔号声音。

(4)修改功能:选中某个人的姓名时,可对此人的相应数据进行修改

(5)删除功能:选中某个人的姓名时,可对此人的相应数据进行删除,并自动

调整后续条目的编号。

1.查看功能

2、本系统应具备以下七个功能模块:添加联系人信息、修改联系人信息、删除联系人信息、查询联系人信息、查看所有联系人信息、对联系人信息进行排序,退出保存。

(1) 添加联系人信息:将新得到的联系人信息添加到通讯录中,添加的信息有:序列号、姓名、昵称、性别、手机号码、家里电话、QQ和E-mail。

(2) 修改联系人信息:对已经保存的联系人信息进行修改,可以修改全部的信息也可以选择性的修改其中的某些项目。

(3) 删除联系人信息:对保存在通信录中的联系人信息进行删除。

(4) 查询联系人信息:通过联系人的姓名查询联系人的的全部通讯信息

(5) 查看所有联系人信息:本功能将一次性的让机主看到通讯录中保存的所有联系人的所有通讯信息。

(6) 联系人信息排序:依据添加时给定的序列号对通讯录中的联系人信息进行排序。

(7) 保存:将添加的联系人通讯信息以.txt文本的形式保存起来,以备以后查询使用。

3、系统设计具体应用到的技术:

(1) 结构、枚举类型的定义与使用;

(2) 数组的定义和使用使用;

(3) 程序的三种基本控制流程的综合、灵活运用;

(4) 普通指针和数组指针的定义和使用;

(5) 各类函数的定义和调用;

(6) 文件的输入/输出;

(7) 程序的调试。

二、设计要求

1、在Visual C++控制台应用程序方式下设计课题。

2、设计的程序要求完成本次课程设计所规定的功能。

3、程序应具有一定的健壮性。即程序必须具有必要的检查和出错处理,如在添加新联系人信息时检查输入的序列号是否相同。删除、查询联系人信息时检查输入的姓名是否存在等。

三、设计环境

1、操作系统:Windows XP Professional;

2、开发工具:Microsoft Visual C++ 6.0;

3、PC机的配置:CPU:Intel(R)Core(TM)2 T7100 @2.00Ghz;

内存:1G;

硬盘空间:120GB;

显卡:128MB DDR3 NVIDIA(R) GeForce(R) 8400M GS 显卡;

四、系统结构图

添加联系人信息修

退

主菜单

五、功能实现

1、系统运行

系统运行结果如图所示:

2、添加联系人

添加联系人信息运行界面如图所示:

录入完一位联系人的相关信息后,会立刻给予显示,以供核对。核对后敲击回车,将回到主菜单。

3、修改联系人

修改联系人信息运行界面如图所示:

当选择修改联系人信息菜单“2”时,会提示您输入要修改联系人的姓名,如果您姓名输入错误,则提示联系人不存在,如下图所示:

此时,需重新选择菜单“2”,然后输入正确的姓名即可对联系人信息进行修改,需要修改的项目,选择菜单“y”不需要修改的项目选“n”,将直接进入下一个项目的修改。

4、删除联系人信息

删除联系人信息运行界面如图所示:

此时,输入你要删除的联系人的姓名即可,然后系统会提示你是否确认删除,“y”执行删除,“n”取消删除。

5、查询联系人

查询联系人信息运行界面如图所示:

输入你要查询的联系人的姓名,如果文件book.tet中有这位联系人的信息,将会显示出来;如果文件book.tet中没有这位联系人信息,系统将会提示你“联系人不存在”。

6、显示所有联系人

显示所有联系人信息运行界面如图所示:

当选择“5”菜单时,将会显示所有保存在book.txt文件中联系人的信息。

7、对联系人在文件中存储位置排序

按序列号对联系人在book.txt文件中排序的运行界面如图所示:

该功能主要是根据在添加联系人是给定的“序列号”,对保存在book.txt文件中的联系人信息进行排序,序列号小的排到前面,大的排到后面。

8、系统结束运行界面

选择菜单“7”系统将提示“Press any key to continue”,此时按任意键系统运行结束。

六、遇到的问题和解决的方法

1、不熟悉。由于在本次课程设计之前长时间没有复习和使用visual C++,很对知识已经记忆模糊,甚至已经淡忘。对于这种情况我做了这些工作:翻阅以前的课本熟悉本次课程设计所涉及和使用到的相关知识点,比如数组、数据指针、结构体和枚举类型等等。其次就是在设计的过程中遇到自己不能解决的问题,请教其他同学和到图书馆查阅相关资料。

2、系统首次运行,在添加联系人信息时,联系人信息当中的手机号码、家里电话、地址、QQ和E-mail几个项目是始终显示第一位联系人的信息,而不能显示与姓名对应的联系人的通讯信息。这个问题在请教老师后得知,是我在设计时忽略了添加新的联系人信息时必须考虑已经保存在文件中的已经添加的联系人信息,于是将代码“GetData(book)”改成“GetData(book+CurNum)”,问题得以解决。

3、当系统完成最初设计,执行修改联系人信息时,显示的是第一个联系人的通讯信息,并不是显示当前联系人的信息。这个问题在系统最初运行的时候,作为设计人员的我并没有注意到,直到跟一位同学进行系统设计缺陷互查的时候才被发现。经过仔细检查和查阅资料,发现了其中的错误所在。显示当前信息的代码是“displayone(book+i)”,而我写成了“displayone(book)”,改正过来的系统成功实现显示当前联系人的通讯信息。

4、当book.txt文件中有联系人信息数据,程序运行,在读book.txt文件中的联系人信息数据时总出错。研究了很久发现,是因为在最初设计时,我考虑将保存到book.txt文件的联系人信息中的各项目之间用顿号隔开以示区别,但在做读数据时我却没有对对应的设计,没有使用顿号,致使在读数据时出现错误。

七、设计小结

课程设计是一次将理论知识运用于解决实际生活中所遇到的问题的实战是一次理解和深化理论知识,树立知识服务生活,知识服务经济发展的的理念。

在本次设计过程中,我通过查阅资料,以及调查身边的人进行系统需求分析,在此基础上建立系统模型,编写代码,进行调试。过程是曲折的,有时候一个字母的大小写就要花上几个小时的时间去查找。但正是这个过程让我了解了自己对这么语言的掌握程度,锻炼了我独立解决问题的能力,同时让我意识到严谨的态度对一个系统开发者的重要性。

学以致用,手机通讯录管理系统是我独立开发的第一个系统。由于能力所限,这个系统还相对简单,且有可能存在一定的缺陷,但这并没有影响到我设计成功后的喜悦。这是一个契机,给自己今后学习和工作指明了方向。

最后,衷心的感谢本次课程设计的罗烨指导老师,正因为老师的指点,使得我少走了很多弯路,同时授予了我很多作为设计人员应该有的正确理念和行为。

参考文献

1 谭浩强著.C++程序设计.北京.清华大学出版社,2006

2 谭浩强主编.C++程序设计题解与上机指导.北京.清华大学出版社,2006

3 郑莉,董渊,张瑞峰著.C++语言程序设计(第3版).北京.清华大学出版社,2004

4 郑莉,董渊,张瑞峰主编.C++语言程序设计案例教程.北京.清华大学出版社,2004

5 洪永清,黄德才,吕丽民.面向对象建模与设计.北京.人民邮电出版社,1998

6 邵维忠,杨芙清.面向对象的系统分析.北京.清华大学出版社,1998

7 吴乃陵.C++程序设计实践教程(第2版).北京.高等教育出版社,2006

8 钱能.C++程序设计实验指导.北京.清华大学出版社,1999

9 严蔚敏等.数据结构(C++版).北京.清华大学出版社,1997

10 (美)Ivor Horton 著.李予敏译.C++入门经典(第3版).北京.清华大学出版社,2002

附:本系统源程序

1、头文件

//book.h

#ifndef BOOK_H

#define BOOK_H

struct Book

{

char No[9];

char Name[9];

char Nickname[9];

char Sex[7];

char Mobilenum[15];

char Familynum[15];

char Addr[30];

char qq[10];

char Email[15];

};

#endif

2、主函数

//主函数文件

#include

#include

#include

#include

#include "手机通讯录.h"

int EnterChoice(); //输入选项

void Init(); //数据文件初始化

void Add(); //增加一个联系人信息

void Display(); //显示所有联系人信息

void DisplayOne(Book*); //显示全部联系人重载函数

void SortNo(); //按序列号排序(从小到大)

void Save (); //保存数据

int CheckNo(char *); //输入序列号

int CheckName(char *); //输入姓名

void PrintTitle(); //显示表头

void GetData(Book*); //读取联系人信息

void Update(); //修改联系人信息

void Delete(); //删除联系人信息

void Query(); //查询联系人信息

enum Choices{ADD=1,UPDATE,DELETE,QUERY,DISPLAY,SORTNO,END}; const int MaxNum=200; //能够建立的最多联系人人数

int CurNum; //当前联系人人数

Book book[MaxNum]; //结构数组

void main()

{

Init();

int choice;

while((choice=EnterChoice())!=END)

{

switch(choice){

case ADD:

Add();

break;

case UPDATE:

Update();

break;

case DELETE:

Delete();

break;

case QUERY:

Query();

break;

case DISPLAY:

Display();

break;

case SORTNO:

SortNo();

break;

default:

cerr<<"输入序列号不正确,请重新输入!\n";

}

}

Save();

}

3、函数实现文件

//函数实现文件

#include

#include

#include

#include

#include "手机通讯录.h"

int EnterChoice(); //输入选项

void Init(); //数据文件初始化

void Add(); //增加一个联系人信息

void Update(); //修改一个联系人信息

void Delete(); //删除一个联系人信息

void Query(); //查询一个联系人信息

void Display(); //显示全部学生

void DisplayOne(Book*); //显示一个学生的重载函数

void SortNo(); //按建立时的序号排序(从小到大)

void Save (); //保存联系人信息数据

int CheckNo(char *); //检查联系人是否存在,存在返回序列号,不存在返回-1 int CheckName(char *); //检查联系人是否存在,存在返回姓名,不存在返回-1 void PrintTitle(); //显示选择菜单

void GetData(Book*); //读取联系人信息

extern const int MaxNum=200; //最多能够建立联系人人数

extern int CurNum; //当前已经建立的人数

extern Book book[MaxNum]; //结构数组

//========================输入选择函数======================== int EnterChoice()

{

cout<<"\n\t++++++++欢迎使用手机通讯录管理系统+++++++++++++++++\n"; cout<<" 按【1】: 添加一位联系人信息; "<

int Choice;

cin>> Choice;

return Choice;

}

//===========================初始化函数======================== void Init()

{

ifstream inCount,inBook;

ofstream outCount,outBook;

inCount.open("count.txt",ios::in); //打开联系人人数文件

if(!inCount) //文件不存在,建立该文件

{

inCount.close();

outCount.open("count.txt",ios::out);

outCount<

outCount.close(); //关闭文件

}

else

{

inCount>>CurNum; //文件存在,读取联系人人数

inCount.close();

}

if(CurNum) //联系人总数不为0,联系人文件存在{

inBook.open("Book.txt",ios::in); //打开联系人文件

for(int i=0;i

{

inBook>>book[i].No; //读取联系人序号

inBook>>book[i].Name; //读取联系人姓名

inBook>>book[i].Nickname; //读取联系人昵称

inBook>>book[i].Sex; //读取联系人性别

inBook>>book[i].Mobilenum; //读取联系人手机号码

inBook>>book[i].Familynum; //读取联系人家里电话

inBook>>book[i].Addr; //读取联系人地址

inBook>>book[i].qq; //读取联系人QQ

inBook>>book[i].Email; //读取联系人E-mail

}

inBook.close();

}

else

{

outBook.open("Book.txt",ios::out);

outBook.close();

}

}

//=====================增加一个联系人信息======================= void Add()

{

char no[9];

cout<<"序列号:";

cin>>no;

int i=CheckNo(no);

if (i>=0)

cout<<"序列号已存在,请重新输入"<

else

{

strcpy(book[CurNum].No,no);

cout<<"姓名:";

cin>>book[CurNum].Name;

cout<<"昵称:";

cin>>book[CurNum].Nickname;

cout<<"性别:";

cin>>book[CurNum].Sex ;

cout<<"手机号码:";

cin>>book[CurNum].Mobilenum;

cout<<"家里电话:";

cin>>book[CurNum].Familynum;

cout<<"地址:";

cin>>book[CurNum].Addr ;

cout<<"QQ:";

cin>>book[CurNum].qq ;

cout<<"E-mail:";

cin>>book[CurNum].Email ;

Save();

DisplayOne(book+CurNum); //排序后重新显示

CurNum++;

}

}

//==================按序列号从小到大冒泡排序,并显示=============== void SortNo()

{

Book temp;

int flag;

for(int i=0;i

{

flag=1;

for(int j=0;j

{

if(strcmp(book[j+1].No ,book[j].No)<0 )

{

flag=0;

temp=book[j+1];book[j+1]=book[j];book[j]=temp;

}

}

if(flag) break;

}

Display(); //排序后重新显示

}

//==========================显示表头=========================== void PrintTitle()

{

cout<

cout<

址"<

}

//=======================显示所有联系人信息===================== void Display()

{

cout<

PrintTitle();

for (int i=0;i

{

cout<

cout<

cout<

cout<

cout<

cout<

cout<

cout<

cout<

}

}

//======================显示一个联系人信息====================== void DisplayOne(Book *book)

{

cout<

PrintTitle();

cout<No;

cout<Name;

cout<Nickname;

cout<Sex;

cout<Mobilenum;

cout<Familynum;

cout<Addr;

cout<qq;

cout<Email;

}

//======================保存联系人信息到文本文件================= void Save()

{

ofstream outCount,outBook;

outCount.open("count.txt",ios::out);

outCount<

outCount.close();

outBook.open ("book.txt",ios::out);

for(int i=0;i

{

outBook<<(book+i)->No<<" ";

outBook<<(book+i)->Name<<" ";

outBook<<(book+i)->Nickname<<" ";

outBook<<(book+i)->Sex<<" ";

outBook<<(book+i)->Mobilenum<<" ";

outBook<<(book+i)->Familynum<<" ";

outBook<<(book+i)->Addr<<" ";

outBook<<(book+i)->qq<<" ";

outBook<<(book+i)->Email<<" "<

}

outBook.close();

}

//=======检查序列号是否存在,找到返回所在数组下标,找不到返回-1======= int CheckNo(char* no)

{

for(int i=0;i

if(strcmp(book[i].No,no)==0)

return i;

return -1;

}

//======检查姓名是否存在,找到返回所在数组下标,找不到返回-1========= int CheckName(char* name)

{

for(int i=0;i

if(strcmp(book[i].Name,name)==0)

return i;

return -1;

}

//==============根据输入的姓名,修改联系人信息,并显示============== void Update()

{

char uName[9];char a;

cout<<"输入姓名:";

cin>>uName;

int i=CheckName(uName);

if(i<0)

cout<<"联系人不存在!\n";

else{

cout<<"确定修改吗?(y/n)\n";

cin>>a;

if(a=='y'||a=='Y')

{

cout<<"修改序列号吗?(y/n)";

cin>>a;

if(a=='y'||a=='Y')

{

cout<<"输入序列号:";

cin>>book[i].No;

}

cout<<"修改昵称吗?(y/n)\n"; cin>>a;

if(a=='y'||a=='Y')

{

cout<<"输入昵称:";

cin>>book[i].Nickname;

}

cout<<"修改性别吗?(y/n)\n"; cin>>a;

if(a=='y'||a=='Y')

{

cout<<"输入性别:";

cin>>book[i].Sex;

}

cout<<"修改手机号码吗?(y/n)\n"; cin>>a;

if(a=='y'||a=='Y')

{

cout<<"输入手机号码:";

cin>>book[i].Mobilenum;

}

cout<<"修改家里电话吗?(y/n)\n"; cin>>a;

if(a=='y'||a=='Y')

{

cout<<"输入家里电话:";

cin>>book[i].Familynum;

}

cout<<"修改地址吗?(y/n)\n"; cin>>a;

if(a=='y'||a=='Y')

{

cout<<"输入地址:";

cin>>book[i].Addr;

}

cout<<"修改QQ吗?(y/n)\n"; cin>>a;

if(a=='y'||a=='Y')

{

cout<<"输入QQ:";

cin>>book[i].qq;

}

cout<<"修改E-mail吗?(y/n)\n";

cin>>a;

if(a=='y'||a=='Y')

{

cout<<"输入E-mail:";

cin>>book[i].Email;

}

DisplayOne(book+i); //显示当前记录

}

}

}

//===============根据输入的姓名,删除对应的联系人================= void Delete()

{

char dName[9];

char a;

cout<<"输入姓名:";

cin>>dName;

int i=CheckName(dName);

if(i<0)

cout<<"联系人不存在!\n";

else{

cout<<"确定删除吗?(y/n)\n";

cin>>a;

if(a=='y'||a=='Y')

{

for(int j=i+1;j

book[j-1]=book[j];

CurNum--;

}

}

}

//================根据输入的姓名,查找该联系人并显示=============== void Query()

{

char qName[9];

cout<<"输入姓名:";

cin>>qName;

int i=CheckName(qName);

if(i<0)

C语言课程设计报告—手机通讯录管理系统

C程序课程设计报告 --手机通讯录管理系统 姓名:谢骏 学院:珠宝学院 学号:649 班级:141082

一课程设计目的和内容概述 1.目的:加深对《C语言》课程所学知识的理解,进一步巩固C语言编程方法。学会编制结构清晰、风格良好、数据结构适当的C语言程序,从而具备解决综合性实际问题的能力,加强动手能力。 2.内容:设计一个简易的手机通讯录管理系统。该题目要求在熟练掌握C语言的基本知识:数据类型(整形、实型、字符型、指针、数组、结构等);运算类型(算术运算、逻辑运算、自增自减运算、赋值运算等);程序结构(顺序结构、判断选择结构、循环结构);大程序的功能分解方法(即函数的使用)等。进一步掌握各种函数的应用,包括时间函数、、绘图函数,以及文件的读写操作等。 其中结构体,函数的调用,算法的设计是尤为重要的。 二题目 手机通讯录管理系统。 [问题描述] 该系统模拟手机通讯录管理系统,实现对手机中的通讯录进行管理 [基本要求] 要能提供以下几种功能: (1)查看功能:选择此功能时,列出下列三类选择:

A:办公类B:个人类C:商务类 (2)当选中某类时,显示出此类所有数据中的姓名和电话号码 (3)添加数据功能:能录入新数据,每个结点包括:姓名,电话号码,分类(可能选项有:w为办公类p为个人类b为商务类),电子邮件。例如:杨春商务类 当录入重复的姓名和电话号码时,则提示数据录入重复并取消录入;当通讯录中超过15条信息时,存储空间已满,不能再录入新数据;录入的新数据能按递增的顺序自动进行条目编号。(4)修改功能:选中某个人的姓名时,可对此人的相应数据进行修改。 (5)删除功能:选中某个人的姓名时,可对此人的相应数据进行删除,并自动调整后续条目的编号。 三程序设计 1.总体设计 首先,因为每个个体有多种信息,所以要建立结构体来储存和整合各个信息。然后利用模块来分别实现程序的各个功能。各个模块用函数来实现。在通过通过主函数来判断输入字母,从而调动函数,实现所需功能。最后将输入的文件保存在文件里,以便重复使用。 2.详细设计

手机通讯录系统课程设计报告

课程名称: 程序设计基础课程设计 学院名称: 计算机科学与工程学院 专 业: 计算机科学与技术 课程设计报告 装 订 线

目录 一、绪论 (3) 二、设计内容 (4) 1、选题 (4) 2、系统功能 (4) 3、应用到的技术 (4) 三、设计要求 (4) 四、设计环境 (5) 1、操作系统 (5) 2、开发工具 (5) 3、PC机配置 (5) 五、系统结构图 (5) 六、功能实现 (6) 1、系统运行 (6) 2、添加联系人 (6) 3、修改联系人 (7) 4、删除联系人 (8) 5、查找联系人 (8) 6、查看所有联系人 (8) 7、对联系人在文件中的存储位置进行排序 (9) 8、系统运行结束 (9) 七、遇到的问题和解决的方法 (9) 八、设计心得 (10) 九、参考文献 (11) 十、附件 (12) 1、头文件 (12) 2、主函数 (12) 3、函数实现文件 (13)

需求分析 在这个信息化的时代,手机已成为继固话之后最为通俗的交流工具。在这个人与人关系愈加密切的时代,“通讯”成了生活中的必需品。这就有这么一个系统记录下人与人之间的多样联系方式——手机通讯系统。通过系统记录下对方的联系方式,既减轻了大脑的负担,又不在受各种条件的约束,做到便捷随身管理相关的联系信息,摆脱了传统电话簿,名片的累赘。从长远利益来看,可是意义重大的环保之举。 根据市场需求,手机通讯录管理系统所记录的信息一般分为个人、商业、办公三类。清晰了机主的联系方向。针对性的分门别类,使系统具有了方便了机主的存储和快速查阅优势功能,大大减少了在电话簿,名片上机械翻阅查找过程的时间。于此同时又根据手机随身携带的特殊性,在一定程度上比一般的制作文件又其次,因为手机是随身携带的通讯工具,这与记事本相比将在一定程度上保障联系人信息的安全性,相对避免了个人隐私信息外泄从而带来的损失。 综上所述,手机通讯录管理系统是一个高效、实时、绿色环保的管理系统。 友元重载常函数构造函数析构判断数据链表 手机通讯录管理系统 一、主要功能 模拟手机通信录管理系统,要求: (1)查看功能:选择此功能时,列出下列三类选择: A 办公类 B 个人类 C 商务类,当选中某类时,依次显示出此类所有数据中的姓名和电话号码 (2)增加功能:能录入新数据(包括:姓名、电话号码、分类(可选项有:A 办公类 B 个人类 C 商务类)、电子邮件)。 ?当录入了重复的姓名和电话号码时,提示数据录入重复并取消录入; ?通信录容量限定在15条以内。 ?当存储信息超出存储空间,提示存储空间已满,不能再录入新数据; ?录入的新数据能按递增的顺序自动进行条目编号。 (3)拔号功能:能显示出通信录中所有人的姓名,当选中某个姓名时,屏幕上模拟打字机的效果依次显示出此人的电话号码中的各个数字,并伴随相应的拔号声音。 (4)修改功能:选中某个人的姓名时,可对此人的相应数据进行修改 (5)删除功能:选中某个人的姓名时,可对此人的相应数据进行删除,并自动

通讯录管理系统课程设计报告完整版

通讯录管理系统课程设 计报告 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】

设计课题题目 一、课程设计目的与要求 1.课程设计目的 (1)综合运用之前所学知识(选择控制,循环控制,数组,函数,指针,结构体和文件等)来完成一个简单的信息管理程序的设计。 (2)充分体现和体会函数在程序设计中的必要性和实用性,并反映主函数main ()在程序设计中的实现思路和方法。 2. 课程设计要求 制作一个通讯录系统。 (1)该程序具有查找、添加、修改、删除功能。 (2)通讯录包括:姓名、电话、街道、城市、省、邮编等。 二、总体设计 根据系统的要求,系统总体设计如图1所示。 1

printf("\t--------------------\n"); printf("\t请您选择(0-7):"); scanf("%d",&c); }while(c>7&&c<0); return(c); } int Input(struct date per[10],int n) { int i=0; char sign,x[10]; while(sign!='n'&&sign!='N') { printf("\t姓名:"); scanf("%s",per[n+i].name); printf("\t电话号码:"); scanf("%s",per[n+i].phone); printf("\t电子邮箱:"); scanf("%s",per[n+i].email); printf("\tQQ:"); scanf("%s",per[n+i].QQ); gets(x); printf("\n\t是否继续添加?(Y/N)"); fflush(stdin); ame,per[i-1].phone,per[i-1].QQ,per[i-1].email); if(i>1&&i%10==0) { printf("\t-----------------------------------\n"); printf("\t"); system("pause"); printf("\t-----------------------------------\n"); } } printf("----------------------------------------------------------------------\n"); system("pause"); } int Delete_a_record(struct date per[10],int n) { char s[20]; int i=0,j; printf("\t请输入想删除记录中的名字:"); scanf("%s",s); while(strcmp(per[i].name,s)!=0&&i

通讯录管理系统课程设计报告书(C语言)

二〇〇八~ 二〇〇九学年第二学期 信息科学与工程学院课程设计报告书 课程名称:C语言课程设计 班级: 学号: 姓名:薛其乐 指导老师:

二〇〇九年九月 通讯录管理系统 一.需求分析 设计题目及要求: ◆建立通讯录信息,信息至少包含编号、姓名、年龄、电话、通讯地址、电子 邮箱等; ◆能够提供添加、删除和修改通讯录信息的功能; ◆能够提供安不同方式查询的功能;如按姓名或年龄、电话等查询; ◆将通讯录保存在文件中; ◆能够按表格方式输出通讯录信息。 系统功能需求分析: 主要包含一下多种功能: 添加:添加通讯录记录 显示:显示通讯录记录 删除:删除通讯录记录 查询:查询通讯录记录 修改:修改通讯录记录 保存:将信息保存到文件 二.概要设计 系统功能模块图:

添加:可以添加通讯录记录,依次输入编号、姓名、年龄、电话号码、通讯地址、电子邮箱后,会提示是否继续添加。 显示:可以以表格形式输出所有通讯录里的记录 删除:输入欲删除的那个人的名字后,会自动删除他(她)的记录内容 查询:可以选择用姓名、电话、地址三种方式查询 修改:输入欲修改的那个人的名字后,再依次输入编号、姓名、年龄、电话号码、通讯地址、电子邮箱即可完成修改 保存:,输入文件名(带后缀名)后,即可将通讯录信息保存到文件 三.详细设计 (1).通讯录: typedef struct { char score; /*编号*/ char name[10]; /*姓名*/ char num[15]; /*号码*/ char email[20]; /*邮箱*/

char age[8]; /*年龄*/ char adds[20]; /*住址*/ }Person; void main() /*主函数*/ { int n=0; for(;;) { 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");

安卓课程设计_手机通讯录系统全解

目录 1前言 (1) 2系统的需求分析 (2) 2.1需求分析 (2) 2.1.1基本功能需求 (2) 2.1.2系统用例分析 (2) 2.2总体设计方案 (5) 2.2.1系统模块关系与划分 (5) 3系统的概要设计 (6) 3.1通讯录需求分析 (6) 3.1.1新建、编辑联系人 (6) 3.1.2查找联系人 (6) 3.1.3通讯功能 (6) 3.1.4个人中心 (7) 3.1.5还原与备份功能 (7) 3.2系统界面设计 (8) 4系统编码实现 (14) 前言

随着移动通信与Internet向移动终端的普及,网络和用户对移动终端的要求越来越高,而Symbian,Windows Mobile,PalmOS等手机平台过于封闭,不能很好的满足用户的需求,因此市场迫切需要一个开发性很强的平台。经过多年的发展,第三代数字通信(3G)技术活动了广泛的接受,它为移动终端用户带来了更快的数据传输速率。随着3G网络的使用,移动终端不再仅是通讯网络的终端,还将成为互联网的终端。因此,移动终端的应用软件和需要的服务将会有很大的发展空间。Google为此与2007年11月推出了一个专为移动设备设计的软件平台——Android。 Android 是一套真正意义上的开发性的移动设备综合平台,它包括操作系统、中间件和一些关键的平台应用。Android 是由Linux+Java构成的开源软件,允许所有厂商和个人在其基础上进行开发。Android平台的开放性等特点既能促进技术(包括平台本身)的创新,又有助于降低开发成本,还可以是运营商能非常方便地制定自己的特色化的产品。因此,它具有很大的市场发展潜力。 Android(Google公司)是Google开发的基于Linux平台的开源手机操作系统。它包括操作系统、用户界面和应用程序——移动电话工作所需的全部软件,而且不存在任何以往阻碍移动产业创新的专有权障碍。谷歌与开放手机联盟合作开发了 Android,这个联盟由包括中国移动、摩托罗拉、高通、宏达和 T-Mobile 在内的 30 多家技术和无线应用的领军企业组成。 (1)优点:具备触摸屏、高级图形显示和上网功能,界面强大,可以说是一种 融入全部Web应用的单一平台 (2)缺点:由于时时刻刻都需要和网络进行连接,因此在手机的能耗方面控制就较差, 导致待机能力不足;又由于其开源性,过分依赖开发商,缺少标准配置。 1.1需求分析 1.1.1基本功能需求

C语言通讯录程序课程设计报告书

3.6 实例6 通讯录程序 本实例希望设计一个通讯录程序,要求实现通讯录信息的录入,并具有添加、查询、删除、显示等功能;使用结构体存储通讯录中记录信息;使用链表来实现通讯录信息的添加、删除、查询及显示等操作;通讯录程序可实现文件读写,在通讯录信息录入结束之后,可存入文件中,在下次程序运行时可将通讯录中的记录读取到程序中。通讯录程序可采用基于Win32控制台程序构建或采用基于MFC应用向导.EXE的应用程序,下面对这两种方法进行详细介绍。 3.6.1. 设计目的 1、掌握结构体的基本工作原理和工作方式。 2、熟悉结构体与链表的使用方法。 3、熟悉C语言下数据的输入与输出。 4、掌握C语言下对TXT文件的读写操作。 5、熟悉函数的设计方法及调用方法。 3.6.2. 基本要求 1、本实例要求实现对通讯录信息的查找、添加、删除、显示等功能,每个功能模块均能实现随时从模块中退出,可以通过键盘对功能进行选择,完成一个通讯录管理系统的运行。

2、要使用结构体来实现对通讯录信息的存储。 3、使用链表来实现对通讯录信息的查找、添加、删除、浏览显示。 4、使用文件对记录进行存储,程序运行时还可以从文件中读取记录。 5、系统设计完成后应实现类似下图所示界面。 3.6.3 设计结构及算法分析 在进行程序设计时,选择一种合理的数据存储结构是非常关键的。本实例根据题目要求,采用结构体来存放通讯录中的信息,并采用文件存储通讯录中的信息。 1、存储结构 本实例存储数据时,除了采用最常用的基本类型存储外,采用结构体的方式来存储通讯录中的个人信息,结构体如下所

示: struct stu { char name[20]; /*人名*/ char telephone[20]; /*电话*/ char sex[4]; /*性别*/ char company[20]; /*单位*/ struct stu *next; /*链表节点*/ }; typedef struct stu STU; 2、main()主函数 采用模块化设计,功能放在各模块函数中实现。主函数是程序的入口,在其中采用循环结构,根据用户的键盘输入,依次调用各功能函数。 3、mycreate()函数------创建链表函数 函数根据用户输入的信息,存储到结构体中,并建立链表结构,函数返回链表的头指针。链表建立完成后,可根据链表的头指针来添加后续指针。 4、myadd()函数------添加学生信息记录函数 函数根据用户输入信息,分配内存,将数据存储到结构体中,并建立新的链表节点,链接到已经建立好的链表尾部。 5、mydelete()函数------删除链表节点

C课程设计—手机通讯录

目录 1课程设计的目的、要求及任务容 (1) 1.1课程设计的目的及要求 (1) 1.1.1设计目的 (1) 1.1.2设计要求 (1) 1.2 课程设计任务容 (2) 2详细设计说明 (3) 2.1功能使用说明 (3) 2.1.1查看功能 (3) 2.1.2增加功能 (3) 2.2函数流程图 (4) 2.2.1函数流程 (4) 2.2.2增加功能: (5) 2.3 编码及测试 (6) 2.3.1查找功能 (6) 2.3.2增加功能 (8) 2.4 程序测试所遇到的问题 (14) 3心得体会 (15) 附录 (16) 程序清单 (16)

1课程设计的目的、要求及任务容 1.1课程设计的目的及要求 1.1.1设计目的 C++课程设计是教学实践环节中一项重要容,进行此课程设计旨在: 提高和加强学生的计算机应用及软件开发能力,使学生具备初级程序员的基本素质; 培养学生独自分析问题、解决问题、查阅资料以及自学能力,以适应信息管理行业日新月异的发展形势; 本次课程设计是以学生独立思考解决问题为主,教师指导为辅,结合上机操作,完成指定的任务,作出设计报告。 1.1.2设计要求 手机通信录系统信息包括:查看功能、增加功能、修改功能、删除功能。 (1)、查看功能:选择此功能时,列出下列四个选项: 1.办公类 2.个人类 3.商务类 4.全部。当选中某类时,显示出此类数据中的所有和。 (2)、增加功能:能录入新数据,每个结点包括编号、、、个人信息、类型以及信息类型。当录入重复的时,系统会提醒“该已经存在,不能重复插入!”;当添加超过15条时,系统会提醒“本通讯录最多存储15条信息,已满!不能再插入,抱歉!”;新数据:当录入新数据时,系统能按照递增顺序对条目进行编号。

java通讯录课程设计报告

JIANGXI AGRICULTURAL UNIVERSITY JA V A课程设计报告 题目:通讯录系统 二0一二年十二月 摘要 随着Internet速度的提高和使用的普及,网络上各式各样的应用层出不穷,通讯录系统就是其中的一种。在现实生活中,我们管理通讯录有多种方式,为了进一步提高管理通讯录的效率以及及时更新通讯录,特开发通讯录系统来方便用户使用和管理通讯录。 本系统采用Ecilpse编写程序,具有良好的程序结构和人机交互界面,通用性强。本文将从开发技术、需求分析、系统设计、编码实现和设计总结这几个方面,详细介绍

通讯录系统的设计和实现过程。 关键词:通讯录系统;JA V A;Eclipse;需求分析。

目录 1 绪论 (2) 1.1 概述 (2) 2 开发技术与工具选择 (2) 2.1 Eclipse介绍 (2) 2.1.1 Eclipse的基本概念 (2) 2.1.2 Eclipse 插件开发环境 (2) 2.1.3 Eclipse的主要组成 (2) 3 需求分析 (3) 3.1 概要说明 (3) 3.2 产品描述 (3) 3.3 系统功能列表 (3) 3.4 系统功能说明 (3) 3.4.1 <添加模块> (3) 3.4.2 <查询模块> (3) 3.4.3 <修改模块> (4) 3.4.4 <删除模块> (4) 3.5系统质量需求 (4) 4 系统设计 (4) 4.1说明 (4) 4.2总体设计结构图 (4) 4.3 总用例图 (5) 4.4 流程图 (5) 5 编码与实现 (8) 5.1包结构图 (8) 5.2主界面 (9) 5.3组操作的页面 (9) 5.4 好友操作界面 (10) 6 项目设计总结 (11) 6.1系统概述 (11) 6.2关键问题的分析和解决 (11) 6.3 系统展望 (11) 6.4 自身收获 (11) 致谢 (12) 参考文献 (13)

手机通讯录安卓课程设计

湖南科技大学计算机科学与工程学院 智能终端系统及应用开发课程设计报告 题目:手机通讯录 学号:******** 班级:******** 姓名:******** 指导老师:********

绪论 随着3G网络的使用,移动终端不再仅是通讯网络的终端,还将成为互联网的终端。因此,移动终端的应用软件和需要的服务将会有很大的发展空间。在Google和Android手机联盟的共同推动下,Android在众多手机操作系统中脱颖而出,受到广大消费者的欢迎。 手机通讯录作为手机的基本功能之一,每天我们都在频繁地使用着。根据手机功能使用调查显示,有9成以上的消费者使用手机通讯录功能。随着手机通讯录功能的不断加强与完善,手机通讯录对于人们的意义,已不仅仅像记事簿一样显示通讯地址,而是向着个性化、人性化的方向发展[4]。通讯录从无到有,从英文到中文,经过了十几年的发展历程,今后的发展趋势就是从通讯录发展为名片夹,也就是在一个人名下,可以存储座机、手机、单位、地址、电子邮件等内容。这种名片夹在电话薄的基础上,大大丰富了内容,同时结构也发生了革命性变化,而且随着手机的发展,相信更优秀的通讯录会越来越受到社会各层人士的喜爱。

一、课程设计目的 智能终端系统及应用开发课程设计是计算机相关专业的一个综合性实践教学环节,是学 习完《智能终端系统及应用开发》课程后进行的一次全面的综合练习。其目的在于促进学生 复习和巩固 Android 应用技术,加深对软件设计方法、软件设计技术和设计思想的理解,并 能运用所学 Android 设计知识,通过本课程设计让学生进行简单 Android 应用软件的开发,掌握软件设计的方法和面向对象程序设计的基本技术,提高学生在软件开发方面的综合应用能力。 二、课程设计内容 通过对Android 技术的相关研究,了解Android 源码实现原理以及过程,从而设计出一款能够使用的手机通讯录。 这款手机通讯录实现的相关内容如下: 1.简洁、实用的操作界面。 2.显示所有联系人的列表。 3.增加联系人。 4.删除联系人。 5.修改联系人。 6.呼叫联系人。 7.发送短信、邮件至联系人。 三、系统设计 功能结构图 Android 手机通讯管理软件 联系人添加 联系人编辑 联系人查看 联系人查找 联系人删除 呼叫联系人 发送短信 联系人列表

通讯录课程设计报告

大学 课程设计说明书 课程名称管理信息系统题目通讯录管理系统 学院 班级

学生姓名 指导教师 日期 目录 1.需求分析 (3) 2.系统分析 (4) 2.1.系统的可行性研究 (4) 2.2.功能需求分析 (4) 3.系统设计 (5) 3.1.系统模块设计 (5) 3.2.数据库设计 (5) 4.系统实施 (7) 4.1.开发环境 (7) 4.2.建立数据库 (7) 4.2.1.数据库创建代码 (7) 4.2.2.数据库表创建代码 (8) 4.3.程序设计 (10) 4.3.1.主程序的设计 (10) 4.3.2.登录界面的设计 (12) 4.4.系统测试 (19) 5.课程设计总结 (25)

6.参考文献 (26) 1.需求分析 随着社会的发展,人际关系变得越来越重要,为了保持良好的人际关系,必须

经常与亲戚、朋友、同学、同事保持联系,但是有时候存在着许多的限制条件,比如怎样找到交流对象的各种信息?可能你会想到现实生活中的手机等通讯工具,由于这些工具的单一性,不可能在第一时间找到自己想要的信息资料,因此,为了能够快速查找到联系人的信息,节省查找时间,开发通讯录管理系统。 通讯录管理系统是一个基于SQL数据库储存和JAVA界面模式的个人通讯录管理系统。它是将自己的联系人的具体信息集中管理,成为一个方便人们使用的小软件。在开发过程中主要运用Java, SQL Server技术,由于开发工具和数据库之间的良好使用,可以为开发带来方便,使之成为一个可施行的系统。从而达到开发的目的-----实现对通讯录信息的管理。 通过采用相关技术,以及老师的辅导和同学们的帮助,将系统设计的功能全部实现。功能包括:用户的登录, 添加联系人信息,修改联系人信息,删除联系人信息,查询联系人信息,可以浏览全部通讯的联系人,并且可以根据数据表的各字段来查询你所要找的联系人等功能。 2.系统分析 2.1. 系统的可行性研究 目的:可行性研究的目的是用最小的代价在尽可能少的时间内确定问题是否能够解决。而该系统正式用比较简单的VFP语言来编写的小型的、实用的通讯录信息管理系统,既能很好地完成对用户信息的管理,又比较经济实惠。本系统采用的是VFP语言,在技术难度方面,由于有指导老师的指导和相关参考文献,特别是网上也有很丰富的相关资料,通过参考一些功能模块程序的设计,实现该系统是完全可以的。 本系统的设计是在windows XP中文版环境下,使用Visual开发的。它是可以运行于windows XP相关平台的数据库开发系统。Visual不仅可以简化数据库管理,而且应用程序的开发流程更为合理,它使组织数据,定义数据库规则和建立应用程序的工作变得简单易行,利用可视化的设计工具和向导,用户可以快速的创建表单、查询等。 2.2. 功能需求分析 本系统主要实现对通讯录信息进行管理,需要实现以下几个方面的管理功能: (1)通讯录管理信息:信息的添加、删除、浏览、修改和查询等操作。 (2)系统维护:包括用户登录,用户修改密码,数据的修改、浏览、添加、删除以及按姓名、联系方式、地址进行查询。

数据结构课程设计-通讯录管理系统

《数据结构》 课程设计报告书 题目:通讯录管理系统 系别:计算机科学与应用系学号: 学生姓名: 指导教师: 完成日期:2012年5月28日

1 问题描述 (1)题目内容:通讯录管理。 (2)基本要求:利用单链表实现通讯录的建立、通讯者的插入、通讯者的删除、通讯者的查询以及通讯录的输出。 (3)设计目的:通过本次课程设计,了解通讯录的一些基本功能。掌握利用单链表进行插入,查找,用关键字建立单链表。 2 需求分析 经过本次的课程设计,我认为通讯录主要实现的功能如下: (1)添加信息:一个通讯录应该有其基本的添加功能。在程序设计时,我通过一个具有添加功能的函数,实现了个人信息的添加,如:姓名,性别,电话号码,QQ号码,地址。 (2)删除信息:当你不需要某个联系人的信息时,可以直接将该人的信息删除。 (3)查找:一个通讯录应该具有令一基本功能就是查找,本设计时可以按联系人为关键字查找的,只要你输入要查找人的姓名或手机号码或QQ号码就可出来相应的个人信息。 (4)输出:一个通讯录应该具有输出所有联系人的功能,本设计按照次序可以从头到尾把通讯录中的所有联系人都输出,供自己查看。 (5)退出:当你做完你要做的事情之后,就可以退出该程序。 3 总体设计 3.1 算法的定义 LinkList Creat_LinkList()创建空单链表 void Insert_LinkList(LinkList H)建立通讯录,录入联系人的信息,可以把联系人的姓名,性别,手机号,QQ号,地址录入系统。 void Locate_LinkList(LinkList H)按照联系人的姓名,手机号码,QQ号码查找通讯录中联系人的信息。 void Delete_LinkList(LinkList H)按照联系人的姓名,手机号码,QQ号码删除联系人的所有信息。 void print_LinkList(LinkList H)输出通讯录中的所有联系人的信息供使用者查看。

数据结构课程设计报告通讯录.doc

数据结构课程设计报告 专业:计算机科学与技术 年级: 课题名称:通讯录 小组成员1: 小组成员2: 小组成员3: 信息技术学院专业教研室一 一、问题描述

设计目的:用〈〈数据结构〉〉中的双向链表作数据结构,结合C语言基本知识。编写一个通讯录管理系统。以把所学数据结构知识应用到实际软件开发中去。 设计内容:本系统应完成一下几方面的功能: 1) 输入信息——enter(); 2) 显示信息———display( ); 3) 查找以姓名作为关键字———search( ); 4) 删除信息———delete( ); 5) 存盘———save ( ); 6) 装入———load( ) ; 设计要求: 1) 每条信息至包含:姓名(NAME )街道(STREET)城市(CITY)邮编(EIP)国家(STATE)几项 2) 作为一个完整的系统,应具有友好的界面和较强的容错能力 3) 上机能正常运行,并写出课程设计报告 二、需求分析 A,添加: 系统将提示用户输入新添加人员信息,输入到文件中,人员信息数据包括姓名(name),街道(street),城市(city),邮编(eip),国家(state). B,删除: 首先由用户输入要删除的人员的姓名,然后调用删除函数,删除该人员的所有相关资料. C,显示所有人员信息: 该功能将显示已经保存的所有人员的姓名,街道,城市,邮编及国家. D,查询: 可由用户输入要查找的人员姓名,然后系统用查找函数查找,接着系统使用相关文件命令输出所查找的人员的全部信息. E,退出系统 关闭通讯录管理系统. 三、概要设计 六个函数的实现: void enter(); 新添纪录

C++-通讯录课程设计报告

C++面向对象程序设计 课程设计报告 》 设计题目:通讯录系统 学生学号: P P 学生姓名: 王元波次仁多布杰 专业班级:2009级计算机科学与技术(3)班学生成绩: 指导教师:蔡正琦 ] 计算机科学与信息工程学院 2010-6-26

一、设计任务分析 实现以下功能: · 1) 通讯录编辑(添加、删除); 2) 按不同的项进行查找; 3) 对已存在的通讯录按不同的项排序; 4) 将通讯录写入文件; 5) 从文件读入通讯录。 二、模块设计 本次程序设计主要设计了六个模块(主要是:(),(),(),(),(),(),())()函数用于通讯录中的信息进行添加,主要流程如下: — ()函数用于通讯录中的信息进行删除,主要流程如下:

()函数用于通讯录中的信息进行修改,主要流程如下: ()函数用于通讯录中的信息进行查找,主要流程如下:

~ ()函数用于通讯录中的信息进行排序,主要流程如下: ()函数用于从文本文件中读取信息,主要流程如下:

()函数用于将信息写入文本文件,主要流程如下:

三、… 四、主要数据结构 结构数组: struct student o<

手机通讯录课程设计报告

Visual C++课程设计 题目名称:手机通讯录 班级:信安1101 :立翼 学号:1111290105 指导教师:阎光伟 完成时间:2013.1.18

目录 1 题目描述 (2) 2 功能分析 (2) 3 系统设计 (2) 3.1 系统整体结构 (2) 3.1.1 系统中的信息类型划分 (2) 3.1.2 对分组的操作 (3) 3.1.3 对人员的操作 (3) 3.2 主要模块设计 (3) 3.2.1 信息类的设计 (3) 3.2.2 命令的设计 (4) 3.2.3 主要数据结构 (5) 3.2.4 文件存储 (5) 3.3 程序界面设计 (6) 3.3.1 树控件设计 (6) 3.3.2 列表视图控件设计 (6) 3.3.3 模糊查询设计 (7) 3.3.4 分组框设计 (7) 3.4 类与函数的设计与实现 (7) 3.4.1 联系人类的设计与实现 (7) 3.4.2 分组类设计与实现 (8) 3.4.3 命令类设计与实现 (8) 4 运行与测试结果 (10) 4.1 程序主要运行界面 (10) 4.2 系统测试 (13) 4.2.1 界面操作测试 (13) 4.2.2 功能测试 (14) 4.2.3 非正常操作测试 (14) 5 小结 (14)

1 题目描述 设计一个手机通讯录管理软件。 要求: 1)分组管理。能够添加、删除、修改,每个分组设置一个来电音乐。 2)用户管理。包括、手机、办公,电子,QQ ,微博,来电音乐 3)用户查询。初始时按照字母顺序显示所有人员,可以输入或者数字模糊查询 4)功能模拟。当选中一个用户时,有通话和短信选项可以操作,选择后进入相应界面。 2 功能分析 系统主要功能包括: (1)分组管理。可以添加、修改、删除分组。添加分组时可设置来电音乐,也可修改来电音乐。 (2)用户管理。可添加、显示、修改、删除用户信息。用户信息包括、手机、办公、电子、QQ 、微博、来电音乐。 (3)用户查询。初始时按照字母顺序显示所有人员,可输入或数字进行模糊查询。可按分组显示人员。 (4)功能模拟。当选中用户时,有通话和短信选项可以操作,选择后进入相应界面。 3 系统设计 3.1 系统整体结构 3.1.1 系统中的信息类型划分 在本系统中,主要分为两类信息:分组信息和人员信息(如图1所所示)。其中分组信息包括分组名称及分组来电音乐。人员信息包括人员、手机、办公、电子、QQ 、微博、分组、来电音乐。 图图 1 系统中的信息类型

通讯录课程设计 Java

攀枝花学院课程设计 题目:通讯录 院(系):数学与计算机学院 年级专业: 12网络工程 姓名:杨莎 学号: 201210803040 指导教师:何全庆 二〇一三年十二月三十日 攀枝花学院教务处制

攀枝花学院本科学生课程设计任务书 注:任务书由指导教师填写。

摘要 通讯工具在平常百姓家中已经是非常常见。用Java语言开发这个强大通讯录以实现我们对大量的人员的通信信息予以记录。以便我们使用方便。我们可以往这个通信录系统中添加数据,也可以对记录进行修改,删除。这样大大提高了我们的通信管理效率。 随着人们生活水平的提高,通讯工具在平常百姓家中已经是非常常见。要记 住所有的联系方式似乎有些困难,所以我们希望设计一个通讯录系统,记录所有 的联系方式,并且能方便的查找,增加和删除,方便大家记录联系人。 当前计算机软件技术和网络技术正飞速发展,软件系统日趋大型化、复杂化, 软件对于一个计算机系统是至关重要的。因此社会对软件开发者提出了比以往更 高的要求,相应的系统要求也有了很大的提高。本系统用C++作为程序语言,设 计出的系统功能强大,操作方便灵活。 关键词:通讯录;java; 数据;查询; -Ⅰ-

目录 摘要 (Ⅰ) 1需求分析 (6) 1.1需求来源 (6) 1.2设计目的 (6) 1.3设计要求 (6) 2 功能需求描述 (6) 3 总体设计 (6) 3.1 功能介绍 (7) 3.2 系统模块结构 (7) 3.3 系统总设计流程图 (7) 4 概要设计 (8) 4.1登录功能界面 (8) 4.2添加功能界面 (9) 4.3删除功能界面 (9) 4.4查询功能界面 (10) 4.5统计功能界面 (10) 5程序与分析 (11) 5.1登陆系统 (11) 5.2增加纪录 (13) 5.3 删除记录 (14) 5.4修改记录 (15) 5.5查找记录 (17) 致谢 (18) 参考文献 (19)

C语言通讯录系统课程设计报告

通讯录系统的设计与实现桂林电子科技大学电信三班傅得耕 3.1系统的需求分析 通讯录系统作为一个应用软件将为人民提供一个可以串联人与人之间的信息的一个平台。根据系统界面的提示信息对通讯录进行查询、初始化等操作。 系统功能需求分析描述如下: (1)创建联系人。 (2)显示所有联系人:显示可以进行的操作。 (3)删除联系人。 (4)查询:根据姓名进行查询,并可显示所有关于该人的信息。 (5) :退出。 3.2系统的设计 3.2.1 系统的总体设计 下面从系统的整体流程的功能模块、系统界面及数据结构进行总体设计。 (1)总体思想 本系统主要设计思想是实现通讯录系统信息的创建联系人、删除、查找等主要功能。系统的设计方法是结构化实际方法,系统用C语言进行开发用户可以清晰的了解联系人的情况。 (2)系统模块结构图 根据需求分析结果,通讯录系统可以分为五大模块:创建联系人模块、显示功能模块、查找联系人功能模块、删除联系人模

块以及退出模块。 ㈡查询人物信息 进入此菜单功能模块,输入您要查询的图书的名字。 图书查询模块流程如图: 3.3 创建

删除系统 3.4 源代码 #include #include #include #define LEN sizeof(struct people) struct people { char name[10]; char address[50]; char postcode[7]; char phonenum[12]; struct people * next; }; int n = 0, c; static struct people * head; void insert(); void show();

安卓课程设计手机通讯录

安卓课程设计手机 通讯录

J I A N G S U U N I V E R S I T Y 通信综合课程设计报告 ——手机通讯录 姓名: 合作者: 专业班级:通信1002 学号: 31006010 指导老师:朱轶 设计日期: .01.08~ .01.10

第一章开发内容概述 随着移动通信与Internet向移动终端的普及,网络和用户对移动终端的要求越来越高,而Symbian,Windows Mobile,PalmOS等手机平台过于封闭,不能很好的满足用户的需求,因此市场迫切需要一个开发性很强的平台。经过多年的发展,第三代数字通信(3G)技术活动了广泛的接受,它为移动终端用户带来了更快的数据传输速率。随着3G网络的使用,移动终端不再仅是通讯网络的终端,还将成为互联网的终端。因此,移动终端的应用软件和需要的服务将会有很大的发展空间。Google为此与11月推出了一个专为移动设备设计的软件平台——Android。 Android 是一套真正意义上的开发性的移动设备综合平台,它包括操作系统、中间件和一些关键的平台应用。Android 是由Linux+Java构成的开源软件,允许所有厂商和个人在其基础上进行开发。Android平台的开放性等特点既能促进技术(包括平台本身)的创新,又有助于降低开发成本,还能够是运营商能非常方便地制定自己的特色化的产品。因此,它具有很大的市场发展潜力。 Android(Google公司)是Google开发的基于Linux平台的开源手机操作系统。它包括操作系统、用户界面和应用程序——移动电话工作所需的全部软件,而且不存在任何以往阻碍移动产业创新的专有权障碍。谷歌与开放手机联盟合作开发了Android,这个联盟由包括中国移动、摩托罗拉、高通、宏达和T-Mobile 在内

c语言课程设计学生通讯录管理系统

c语言课程设计学生通讯 录管理系统 Last revision date: 13 December 2020.

题目:学生通讯录管理系统 任务说明: 主要利用c语言的文件操作能力设计开发一个小型的通讯录管理系统,至少具有如下功能: ①记录通讯录内的人员的学号、姓名、地址、电话号码。 ②显示所有人员的信息。 ③通过输入姓名查找人员信息。 ④通过输入姓名查找到要删除的人员信息,然后可以进行删除。 ⑤通过输入姓名查找到要修改的人员信息,然后可以进行修改。 ⑥添加人员信息。 系统功能描述: 本程序的功能是为用户提供简单的通讯录进行管理,通过该程序存储联系人信息,提供关键字(只能是英文关键字进行查找)查找功能,可以对数据进行修改、删除、添加等操作。 各按钮的功能如下: 查找记录:以姓名为关键字,查找并显示该记录。若查找不到,则显示“好象没有”;

添加记录:将当前记录按姓名序加入通讯录,然后显示第一条记录; 修改记录:修改当前记录,显示当前记录。姓名为关键字,不允许修改; 删除记录:删除当前记录,然后显示第一条记录; 第一条记录:将当前记录指针移动至首节点,若已为首节点,则不移动; 前一条记录:将当前记录指针向前移动一个节点,若已为首节点,则不移动; 后一条记录:将当前记录指针向后移动一个节点,若已为尾节点,则不移动; 最后一条记录:将当前记录指针移动至尾节点,若已为尾节点,则不移动; 加载:从文件中掉入已保存的通讯录数据; 保存:保存通讯录数据; 退出:退出系统;

设计思路: 根据要求,电话录数据以文本文件存放在文件中,故需要提供文件的输入、输出等操作;还需要保存记录以进行修改,删除,查找等操作;另外还应提供键盘式选择菜单实现功能选择。 图1 系统功能模块图 软件中使用的结构体和结构体数组,如: struct callmember { char name[20]; char address[20]; char code[20]; char callnumber[20]; }; 对用户的信息进行保存,他们都以二进制的形式读写。 其中: char name[20];

java课程设计-通讯录系统

目录 第一章设计分析 (2) 1.1 需求分析 (2) 1.2 功能设计 (2) 第二章概要设计 (3) 2.1 程序设计 (3) 2.2 功能设计 (4) 第三章软件环境介绍 (5) 3. 1 开发环境 (5) 3. 2 开发工具 (5) 3. 3 MySql数据设计 (6) 第四章测试运行 (7) 4.1 程序运行界面 (7) 4.2 新建功能 (7) 4.3 修改功能 (8) 4.4 顺序显示 (8) 4.5 分组显示 (9) 4.6 搜索功能 (9) 第五章总结与分析 (10) 第七章参考文献 (11) 第八章程序源代码 (12) 8.1 类PhoneNumber (12) 8.2 类Operation (15) 8.3 类Searcher (19)

1.1需求分析 现在各大手机都有自己的、各种通讯录程序,但是这些公司都有自己的版权,我们也不可能得到这些源代码!而且这些公司的程序也相当复杂,仅从日常应用方面来说,对于初学java的我们也无法理解,就需要我们开发一个简单易懂的电话号码查询系统程序。 1.2功能设计 本程序的构建参照了手机通讯录,其功能是: 有电话录入,修改,增加,删除,按姓名查询,按电话号码查询,按部门查询,按部门显示,显示所有电话号码信息,打印等功能。

2.1程序设计 在本程序设计过程中用到了父类JFrame、JTable、JPanel、JMenuBar、JMenuItem、JButton。 JMenuBar用来创建主菜单 JMenuItem创建子菜单 JFrame创建框架 JTable创建表格部分 JScorollPane向文本框添加滚动条 JMenuItem创建功能键 JButton添加触发按钮。 编写BufferReader()方法实现待分析文件中数据的读取。 编写readLine()方法实现数据的读取。 编写Select()法实现查询。 编写rankVector()方法实现排序 编写addNumber()方法实现新建 编写removeNumber()方法实现删除 编写modifyPhoneNumber()方法实现修改 利用actionPerformed ()方法做为事件监听器。 编写J_fenxi()实现构造。

相关文档
相关文档 最新文档