资源简介
计算机专业,c++期末大作业,压缩包含有文档。运行环境vc6.0
代码片段和文件信息
#include
using namespace std;
class consumer;//前向声明,类名声明。
class ATM//ATM取款机类
{
public://公有类
ATM(consumer&cn):cnsm(cn){}//普通拷贝构造函数
void welcome();//登录界面
int check_passwd(char n[]char pwd[]);//核对密码
void fetchmoney();//取款
void functionshow();//功能界面
void information();//查信息
void change_passwd();//改密码
void lock();//锁卡
void exitATM();//退出系统
private://私有类
int times;//记录密码输入次数
consumer&cnsm;//构造函数的成员
};
class consumer//用户类【consumer顾客】
{
public://公有类
friend class ATM;//声明为ATM的友元类,ATM可以直接访问consumer类,ATM可以访问consumer的所有成员。
consumer(char Name[]char Num[]float Moneychar Password[]float ATMmoney);//顾客信息
protected:
char *get_name();//取得姓名
float get_atmmoney();//取得atm机上的钱数
char *get_num();//取得卡号
char *get_passwd();//取得密码
float get_money();//卡里剩余钱数
void set_passwd(char pwd[]);//设置密码
void set_money(float m);//取钱
private://私有类
char passwd[8];//顾客密码
char name[20];//顾客姓名
char num[20];//顾客卡号
float money;//卡上余额
float atmmoney;
};
consumer::consumer(char Name[]char Num[]float Moneychar Password[]float ATMmoney)//预留顾客的信息
{
strcpy(nameName);//复制函数,把Name字符串给name
strcpy(numNum);
money=Money;
strcpy(passwdPassword);
atmmoney=ATMmoney;
}
float consumer::get_money()
{
return money;
}
float consumer::get_atmmoney()
{
return atmmoney;
}
char *consumer::get_name()
{
return name;
}
char *consumer::get_num()
{
return num;
}
char *consumer::get_passwd()
{
return passwd;
}
void consumer::set_money(float m)
{
money-=m;
atmmoney-=m;
}
void consumer::set_passwd(char pwd[])
{
strcpy(passwdpwd);
}
void ATM::welcome()
{
times=0;
cout<<“********************************************“< cout<<“--------------------------------------------“< cout<<“ *中国建设银行* “< cout<<“ 欢迎使用ATM自动柜员机 “< cout<<“--------------------------------------------“< cout<<“********************************************“< char pwd[8]num[20]ch;
int i=0;
do
{
i=0;
cout< do
{
cin.get(ch);//获得卡号,一个一个的接收字符串
num[i++]=ch;//把得到的卡号一位一位的保存到num数组中
}while(ch!=‘\n‘);//只要不是换行符则一直循环接收
num[i-1]=‘\0‘;//通过num--把得到的\n(换行符)换为‘\0’
i=0;
cout<<“请输入密码:“;//输入密码,同上
do
{
cin.get(ch);
pwd[i++]=ch;
}while(ch!=‘\n‘);
pwd[i-1]=‘\0‘;
if(!check_passwd(numpwd))//判断卡号,密码是不是对的
{
cout<<“你输入的密码有误,请重新输入“< times++;
}
else
{
functionshow();//如果对,进入主界面
}
}while(times<3);//超过三次则退出系统
exitATM();
}
int ATM::check_passwd(char num[]char pwd[])//执行比较函数,对比卡号密码是否相同
{
if(strcmp(numcnsm.get_num())==0&&strcmp(pwdcnsm.get_passwd())==0)
return 1;
else
return 0;
}
void ATM::functionshow()//显示界面
{
int n;
do
{
cout<<“ “< cout<<“ 本机可办理以下业务,请输入相应的序号:“< cout<<“<1>查询“<取款“<更改密码“<退出“< cin>>n;
while(n<1||n>4)//判断是否在ATM操作的选项之内
{
cout<<“对不起,本机无此项操作,请输入正确的序号!
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 5412 2016-12-26 20:40 模拟ATM机存取款管理设计\C++作业.cpp
文件 349184 2019-05-17 12:19 模拟ATM机存取款管理设计\模拟ATM机存取款管理设计.doc
目录 0 2019-05-17 12:20 模拟ATM机存取款管理设计
----------- --------- ---------- ----- ----
354596 3
- 上一篇:电子表 | 西北工业大学电子实习
- 下一篇:学生选修课系统设计.rar
相关资源
- 颜色识别形状识别STM103嵌入式代码
- c++ 邮件多附件群发
- c++ 透明代理(hookproxy)
- mfc 调用redis
- FTP客户端源码(c++)
- c++ 画图(14Qt-XPS)
- c++多边形交并差运算
- VC++基于OpenGL模拟的一个3维空间模型
- c++ 虚拟摄像头
- hook,捕获所有案件,查找所有窗口,
- C语言课设计算器
- c++ 简易贪吃蛇源码
- 高精度加法(c++代码)
- C++调用百度地图案例
- 北京化工大学计算方法(C/C++)讲义
- 基于VC++的SolidWorks二次开发SolidWorks
- c++ 模拟鼠标按键
- OFD编辑器
- Beginning C++17 From Novice to Professional
- C++ STL实现
- opencv手部轮廓识别以及轨迹识别
- 百度C++编码规范
- C++ sql2008 WebServer通讯.docx
- c++ 定时关机程序源码
- 基于VSCode和CMake实现C++开发
- c++语法查询工具
- c++ 账务系统源码
- GBT 28169-2011 嵌入式软件 C语言编码规范
- c++ 猜拳小游戏
- XUnZip Zip解压缩.rar
评论
共有 条评论