模拟ATM自动取款机系统.doc
文本预览下载声明
目 录
一、需求分析 2
二、程序的主要功能 2
三、程序运行平台 2
四、流程图 2
五、程序类的说明 2
六、模块分析 3
七、比较有特色的函数 4
八、存在的不足与对策 4
九、程序源代码 4
一、需求分析
为了方便用户的及时取款,查询,及时修改密码的方便,本课题设计并模拟银行的自动取款机使用过程中的界面和用户交互过程。实现查询银行卡余额,取款,修改密码,退出系统等功能。
二、程序的主要功能
1、锁机功能:
卡号,密码输入最多三次,否则直接退出系统。
2、取款功能:
取款金额受卡余额,机单笔最大取款金额及机当前剩余金额的限制。
3、查询功能:
实现查询余额的功能。
4、更改密码:
实现密码更改功能,对于密码要有2次验证。
5、退卡功能:
实现退出系统功能。
三、程序运行平台
Dev c++
四、流程图
图1 系统流程图
五、程序类的说明
5.1 ATM类:
该类主要实现取款,查询,修改密码,登录界面等功能。
class ATM//ATM类
{
public:
ATM(YongHu y):yh(y)
{}
...............
private:
int times;
YongHu yh;
};
5.2 YongHu类:
该类主要实现卡号,密码,余额的获取函数等功能。
class YongHu//用户类
{
public:
friend class ATM;
............
private:
char ID[20];//卡号
char password[10];//密码
float money;//卡上余额
};
5.3 查询函数:
调用YongHu类的获取函数将信息输出
void ATM::CX()
{
...........
}
5.4 修改密码函数:
使用do while语句实现修改密码的功能
void ATM::GG()
{
.........
}
5.5 密码星号函数:
通过while语句实现输入密码时每输入一个字符就显示一个星号的功能
char * ATM::GetPassword()
{
........
}
六、模块分析
1、锁机功能:
卡号,密码输入最多三次,否则直接退出系统。
2、取款功能:
取款金额受卡余额,机单笔最大取款金额及机当前剩余金额的限制。
3、查询功能:
实现查询余额的功能。
4、更改密码:
实现密码更改功能,对于密码要有2次验证。
5、退卡功能:
实现退出系统功能。
七、比较有特色的函数
char * ATM::GetPassword()
{
char c;
int i=0;
char password[6];
while ((c=getch())!=\r)
{
password[i]=c;
putchar(*);
i++;
if (i=6)
{
break;
}
}
return password;
}
//实现密码星号化的功能
八、存在的不足与对策
由于我的能力及时间限制,所以这次这个系统设计得非常简单,功能也很单一,并且这次并没有使用文件的功能,所有的数据都是一次性的,我会在课下继续探究可以完善该系统的方法.
九、程序源代码
//funtion.h
#includeiostream
#includecstring
#includecstdlib
class YongHu;//定义全局类class
class ATM//ATM类
{
public:
ATM(YongHu y):yh(y)
{}
void DLJM();//登陆界面
bool HDMM(char ID[],char password[]);//核对密码
void QK();//取款
void CX();//查询
void GG();//更改密码
void GNJM();//功能界面
void LK();//锁卡
void TC();//退出
char *GetPassword();
private:
int times;
YongHu yh;
};
class YongHu//用户类
{
public:
显示全部