南航通讯录管理系统面向对象程序设计C++课设报告Word下载.docx

上传人:b****5 文档编号:21370010 上传时间:2023-01-30 格式:DOCX 页数:36 大小:213.95KB
下载 相关 举报
南航通讯录管理系统面向对象程序设计C++课设报告Word下载.docx_第1页
第1页 / 共36页
南航通讯录管理系统面向对象程序设计C++课设报告Word下载.docx_第2页
第2页 / 共36页
南航通讯录管理系统面向对象程序设计C++课设报告Word下载.docx_第3页
第3页 / 共36页
南航通讯录管理系统面向对象程序设计C++课设报告Word下载.docx_第4页
第4页 / 共36页
南航通讯录管理系统面向对象程序设计C++课设报告Word下载.docx_第5页
第5页 / 共36页
点击查看更多>>
下载资源
资源描述

南航通讯录管理系统面向对象程序设计C++课设报告Word下载.docx

《南航通讯录管理系统面向对象程序设计C++课设报告Word下载.docx》由会员分享,可在线阅读,更多相关《南航通讯录管理系统面向对象程序设计C++课设报告Word下载.docx(36页珍藏版)》请在冰豆网上搜索。

南航通讯录管理系统面向对象程序设计C++课设报告Word下载.docx

1.进行用户的注册、登录等操作;

2.对信息进行添加、删除、修改等操作;

3.对信息进行分类、查询、拨号等操作。

本系统将通讯录的管理变得简单、有条理、具有隐私性、具有安全性,使通讯录使用起来方便快捷。

(1)系统简介

本系统主要用来保存以下信息:

1.用户登录名、登录密码、注册密码;

2.通讯录:

姓名、电话、类型、邮箱;

包含功能有添加、修改、删除、拨号、显示、登录、注册、退出、分类管理等。

(2)分析

本系统提前已设置好管理员密码,需要输入并注册登录后,即可使用。

系统界面简洁,操作性强,因为需要用户名以及密码,所以安全可靠,使用起来放心安心。

(3)功能描述

1.菜单界面

程序运行后,将出现3个选项:

1.登录

2.注册

3.退出

选择0、1、2数字即可进行操作,进入下一个菜单。

成功登录后,界面有7个选项:

1.添加新联系人2.删除联系人

3.修改信息4.拨号

5.查看联系人6.显示所有人

7.关闭通讯录

2.登录

只有在输入正确的用户名与密码,才可登录,进入通讯录管理系统,进行下一步操作。

3.注册

此选项需要注册权限密码才可进行注册(本系统的密码为:

123456)。

输入用户名,密码(两次密码必须相同才可),即可成功注册。

4.退出

退出运行。

5.添加、修改、删除联系人

此功能的信息保存在“pbook.txt”中,可以通过系统的输入、修改、删除来进行联系人管理,当然,也可以直接使用此文件来进行管理。

6.拨号

在系统中输入想要拨打的联系人名字或电话,即可发声拨号。

7.显示联系人

选中此功能,不论联系人类型均可显示出来。

二、软件总体设计

通讯录管理系统:

首先,包含三个选项:

0.退出;

1.登录;

2.注册。

在成功登录后,有七大功能:

1.添加新联系人;

2.删除联系人;

3.修改信息;

4.拨号;

5.查看联系人;

6.显示所有人;

7.关闭通讯录。

成功登录后,或者成功注册后登录后,可以进行上述七大功能。

所有信息的输入输出均有系统的提示,可以安心完成。

通信录系统总设计图

程序由哪些模块组成以及模块之间的层次结构、各模块的调用关系;

每个模块的功能。

三、软件详细设计

具体的模块流程图:

2)模块流程图

a.

添加联系人流程图

b.修改联系人

N

y

c.注册登录用户名

N

Y

n

y

d.搜索模块(即显示所有人,显示同类人,拨号功能)

e.以上模块的数据以及函数在类中的声明如下:

classbook

{

public:

book();

//默认构造函数

intenter1();

//通讯录管理首页

voidaddPer();

//添加联系人

voiddelPer();

//删除联系人

voidalter();

//修改信息

voidcall();

//拨号

voidshowall();

//显示所有信息

voidsave();

//保存通讯录文件

voidshow();

//显示查询的类型

voidshowA();

//显示类型A

voidshowB();

//显示类型B

voidshowC();

//显示类型C

private:

stringname;

//姓名

stringnumber;

//电话

stringtype;

//类型

stringemail;

//电子信箱

};

structrecord

bookobject;

//双向链表中的数据域是是一个记录类

record*prior;

//指向前躯

record*next;

//指向后继

f.密码模块

数据声明:

stringuser;

//用户名

stringcode;

//密码

stringcode1;

//注册校对密码

函数声明:

intenter();

//密码登录首页

intcheck();

//校对登录密码

voidlogin();

//创建注册密码

四、编码

//PASSWORD:

密码登陆

//Password.h文件的内容:

#include"

stdafx.h"

#ifndefPASSWORD_H

#definePASSWORD_H

intenter();

//登录页面

intcheck();

//核对密码

voidlogin();

//注册

#endif

//文件Password.cpp的内容:

#include<

stdio.h>

conio.h>

password.h"

iostream>

windows.h>

string>

iomanip>

fstream>

cstdlib>

usingnamespacestd;

//用户名

//密码

//注册密码

intcheck()

ifstreaminfile("

code.txt"

ios:

:

in);

if(!

infile)

{

cout<

<

endl<

"

对不起!

文件打开失败!

endl;

exit

(1);

}

stringsign;

//定义用户名字符串

stringsign1;

//定义密码字符串

cout<

endl<

请输入用户名:

"

;

cin>

>

sign;

fflush(stdin);

请输入密码:

sign1;

//清除缓存

intflag=1;

stringstr;

while(infile>

user>

code)//读出数据

getline(infile,str);

if((user==sign)&

&

(code==sign1))//检查用户名,密码是否正确

{

cout<

登陆成功"

flag=0;

}

cout<

用户名或密码错误!

请重新输入!

system("

pause"

);

//显示“按任意键继续……

returnflag;

}

voidlogin()//用户注册

cls"

//清屏

请输入管理员注册权限密码:

str="

123456"

stringstr1;

cin>

str1;

if(str1==str)

通过认证!

请创建新的用户名:

cin>

user;

fflush(stdin);

请输入密码:

code;

请重新输入密码:

code1;

while(code!

=code1)//比较两次输入的密码

创建失败!

请重新输入密码:

cin>

创建成功!

ofstreamoutfile("

app);

//以追加模式打开文件

if(!

outfile)

system("

outfile<

setiosflags(ios:

left)<

setw(17)<

user<

setw(18)<

code<

//将用户名写入文件

outfile.close();

//关闭文件

用户已成功保存!

system("

else

您没有通过注册认证!

如若想要注册请联系管理员:

QQ:

123456789;

tel:

12345678989"

intenter()//登录页面

{

color9D"

//背景与字体颜色

endl

<

\t\t************************************************"

\t\t通讯录登录系统"

\t\t1.登录"

\t\t2.注册"

\t\t0.退出"

\t\t选择:

intchoose;

choose;

returnchoose;

//通信录管理系统_xxxxxxxx.cpp文件的内容

//构造函数

//管理首页

//添加联系人

//删除联系人

//修改信息

//拨号

//显示所有联系人的信息

//保存

//显示查询的类型

//显示类型A

//显示类型B

//显示类型C

//姓名

//电话

//类型

structrecord

book:

book()//构造函数

name='

\0'

type='

number='

email='

intbook:

enter1()//管理页面

color7D"

\t\t\t*****************************************"

\t\t\t通讯录管理系统"

<

\t\t\t"

\t\t\t1.添加新联系人2.删除联系人"

\t\t\t3.修改信息4.拨号"

\t\t\t5.查看联系人6.显示所有联系人"

\t\t\t7.关闭通讯录系统"

\t\t\t***********************************"

\t\t\t选择:

intchoose1;

choose1;

returnchoose1;

voidbook:

addPer()//添加联系人

根据提示输入新联系人"

姓名:

name;

电话:

number;

类型(A:

办公类B:

个人类C:

商务类):

type;

邮箱:

email;

save();

新联系人已保存!

delPer()//删除联系人

ofstreamoutfile("

temp.txt"

out);

pbook.txt"

outfile||!

exit(0);

请输入想删除的姓名或号码:

boolflag=true;

name>

number)

if((sign==name)||(sign==number))

你想删除的联系人是:

name<

number<

str<

flag=false;

break;

if(flag)

未找到联系人!

while(getline(infile,str))

outfile<

}

infile.close();

ofstreamout("

ifstreamin("

out||!

in)

exit(0);

while(getline(in,str))

out<

out.close();

in.close();

已删除此联系人!

alter()//修改信息

请输入要修改的联系人的名字或电话号码:

record*H=newrecord;

//记录链表

record*p=H;

p->

object.name>

object.number>

object.type>

object.email)

p->

next=newrecord;

p=p->

next;

p->

next=NULL;

infile.close();

p=H;

while(p!

=NULL)

if((p->

object.name==sign)||(p->

object.number==sign))

if(flag)

你想修改你联系人的信息:

setw(17)

object.name<

setw(16)<

object.number

setw(10)<

object.type

<

object.email<

flag=false;

cout<

请根据提示修改信息:

姓名:

;

object.name;

电话:

object.number;

类型:

object.type;

邮箱:

object.email;

break;

p=p->

通迅录中没有你要找的联系人!

if(!

out)

while(p!

out<

object.name

object.number

object.type

out.close();

信息已修改成功!

call()//拨号功能

ifstreaminfile("

请输入拨号的联系人的名字:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 哲学历史

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1