c++课程设计通讯录管理系统.docx

上传人:b****5 文档编号:3167419 上传时间:2022-11-18 格式:DOCX 页数:37 大小:1.19MB
下载 相关 举报
c++课程设计通讯录管理系统.docx_第1页
第1页 / 共37页
c++课程设计通讯录管理系统.docx_第2页
第2页 / 共37页
c++课程设计通讯录管理系统.docx_第3页
第3页 / 共37页
c++课程设计通讯录管理系统.docx_第4页
第4页 / 共37页
c++课程设计通讯录管理系统.docx_第5页
第5页 / 共37页
点击查看更多>>
下载资源
资源描述

c++课程设计通讯录管理系统.docx

《c++课程设计通讯录管理系统.docx》由会员分享,可在线阅读,更多相关《c++课程设计通讯录管理系统.docx(37页珍藏版)》请在冰豆网上搜索。

c++课程设计通讯录管理系统.docx

c++课程设计通讯录管理系统

一、基于DOS下的通讯录管理系统

1.程序需求

用C/C++设计出模拟手机通信录管理系统,实现对手机中的通信录进行管理。

(一)    功能要求

(1)    查看功能:

选择此功能时,列出下列三类选择。

A  办公类  B  个人类C商务类,当选中某类时,显示出此类所有数据中的姓名和电话号码)

(2)    增加功能:

能录入新数据(一个结点包括:

姓名、电话号码、分类(可选项有:

A  办公类  B  个人类C商务类)、电子邮件)。

例如

杨春  13589664454  商务类  chuny@

(3)    修改功能:

选中某个人的姓名时,可对此人的相应数据进行修改

(4)    删除功能:

选中某个人的姓名时,可对此人的相应数据进行删除。

(二)其它要求:

(1)只能使用C/C++语言,源程序要有适当的注释,使程序容易阅读

(2)至少采用文本菜单界面(如果能采用图形菜单界面更好)

(3)建议使用结构和链表等数据结构

说明:

1、使用c++的类设计程序,不用MFC设计,纯dos程序。

2.开发环境

MicrosoftVisualC++6.0

3.总体设计

1)、多文件组织图

2).程序整体流程图

3).主要函数流程图

1、Addrlist:

:

input()

2、Addrlist:

:

search()

3、intAddrlist:

:

load()

{FILE*f_addr;

intcount=0;

if((f_addr=fopen("addr.txt","r"))==NULL)

{printf("无法打开文件!

");exit(0);}

for(count=0;!

feof(f_addr);count++){

fscanf(f_addr,"%9s%12s%20s%10s%30s\n",&p.name,&p.phone,&p.email,&p.sort,&p.addr);

addr[count]=p;

}

fclose(f_addr);

returncount;

}

 

4、voidAddrlist:

:

write(intcount)

{

FILE*f;

if(count!

=0)

{

inti;

if((f=fopen("addr.txt","w"))==NULL)

{cout<<"无法打开文件!

";exit(0);}

for(i=0;i

{if(strcmp(w.name,addr[0].name)==0)continue;

elsefprintf(f,"%9s%12s%20s%10s%30s\n",addr[i].name,addr[i].phone,addr[i].email,addr[i].sort,addr[i].addr);

}

}

fclose(f);

cout<<"\n\t保存成功!

\n\n";

}

4)结构体Addr

structAddr

{charname[25];

charphone[12];

charemail[30];

charsort[20];

charaddr[60];

};

5)、Addrlist类

Addrlis

-Addraddr[1000],p,w;

-load():

int

-write(intcount):

void

+menu():

void

+input():

void

+up():

void

+dele():

void

+search():

void

+show():

void

+Menu_select(intx1,intx2,intn):

int

+gotoxy(intx,inty):

void

 

4.主要运行界面

欢迎界面:

主界面:

添加用户界面:

当添加的用户已存在时:

修改用户界面:

当修改的用户不存在时

查找用户界面:

按姓名查找:

按电话号码查找:

删除好友界面:

显示用户界面:

办公类显示:

个人类显示:

商务类显示:

全部显示:

帮助界面:

关于界面

退出界面

5.心得体会

通过实验,我明白程序设计应该整体思考,在构思框架时应该多多思考可能出现的异常处理。

在程序整体已经基本完成的情况下发现漏洞,修补起来可能没有一开始就考虑到简单。

二、基于widows下的计算器

1.设计目的:

利用vc6.0设计一个简单的计算器。

2.主要功能:

(1)实现简单的加减乘除功能。

(2)实现倒数,开方的功能。

(3)实现清零的功能。

(4)开发环境

MicrosoftVisualC++6.0

3.主要运行的界面:

1.运行和测试编译无错误,运行得到如下图:

2.对计算器进行测试.对43.45和27.36进行四则运算

(1)输入43.45得到如图

(2)输入+和27.36得到如图

(3)输入等号得图如下

(4)输入c(清零)得到如下图

(5)输入9并输入sqrt得到如下图

(6)输入3再输入1/x得到下图

4.心得体会

通过实验我对MFC有了一定了解,以后要继续学习MFC。

三、附录

基于DOS下的通讯录管理系统源代码

//Addr_list.h

#include

#include

#include

#include

usingnamespacestd;

voidabout();

voidhelp();

structAddr

{charname[25];

charphone[12];

charemail[30];

charsort[20];

charaddr[60];

};

classAddrlist

{private:

Addraddr[1000],p,w;

intload();

voidwrite(intcount);

public:

Addrlist(){

strcpy(w.name,"0");

strcpy(addr[0].name,"0");

};

~Addrlist(){};

voidmenu();

voidinput();

voidup();

voiddele();

voidsearch();

voidshow();

intMenu_select(intx1,intx2,intn);

voidgotoxy(intx,inty);

};

//mian.cpp

#include"Addr_list.h"

intmain()

{system("COLOR1B");

cout<<"\n\n\n";

cout<<"\t\t***********************************\n";

cout<<"\t\t*************************************\n";

cout<<"\t\t**********\n";

cout<<"\t\t********\n";

cout<<"\t\t***欢迎使用通信录管理系统***\n";

cout<<"\t\t********\n";

cout<<"\t\t**********\n";

cout<<"\t\t*************************************\n";

cout<<"\t\t***********************************\n";

cout<<"\n\n\t\t";

cout<<"按Enter进入...";

getch();

AddrlistmyAddrlist;

myAddrlist.menu();

return0;

}

voidAddrlist:

:

menu()

{intcursor;

system("cls");

cout<<"\n\n\n\n\t\t******通信录管理系统******\n\n";

cout<<"\t\t\t>>添加用户信息<<\n\n";

cout<<"\t\t\t修改用户信息\n\n";

cout<<"\t\t\t查找用户信息\n\n";

cout<<"\t\t\t删除用户信息\n\n";

cout<<"\t\t\t浏览用户信息\n\n";

cout<<"\t\t\t帮助\n\n";

cout<<"\t\t\t关于\n\n";

cout<<"\t\t\t退出\n\n";

cursor=Menu_select(25,41,8);

if(cursor==0)

input();

if(cursor==1)

up();

if(cursor==2)

search();

if(cursor==3)

dele();

if(cursor==4)

show();

if(cursor==5)

help();

if(cursor==6)

about();

if(cursor==7)

cout<<"\n\n\t谢谢使用\n";

}

//input.cpp

#include"Addr_list.h"

voidAddrlist:

:

input()

{

inti,t;

charreply;

intcount=0;

count=load();

system("cls");

do

{cout<<"\n\n\n\n\t\t******通信录管理系统******\n\n";

cout<<"\t请输入姓名:

";

cin>>p.name;

for(i=0;i

{

if(strcmp(p.name,addr[i].name)==0)

{cout<<"\t该姓名已存在!

请重新输入!

\n";

cout<<"\t是否继续?

(Y/Nory/n):

";

getchar();

cin>>reply;

if((reply=='Y')||(reply=='y'))input();

if((reply=='N')||(reply=='n'))menu();;

}

}

cout<<"\t请输入手机号码:

";

cin>>p.phone;

cout<<"\t请输入电子邮件:

";

cin>>p.email;

cout<<"\t请选择分类:

1.办公类2.个人类3.商务类";

cin>>t;

while(t<0||t>3)

{

cout<<"\t您的输入有误,请重新输入!

\n";

cout<<"\t请选择分类:

1.办公类2.个人类3.商务类";

cin>>t;

}

if(t==1)strcpy(p.sort,"办公类");

if(t==2)strcpy(p.sort,"个人类");

if(t==3)strcpy

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

当前位置:首页 > PPT模板 > 动态背景

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

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