1、 面向对象程序设计面向对象程序设计课程设计报告课程设计报告 题目:题目:银行银行 ATM 自动取款机系统自动取款机系统 完成日期:完成日期:2012 2012 年年 6 6 月月 13 13 日日 面向对象程序设计面向对象程序设计课程设计课程设计 一、系统中所使用的数据对象及说明 1、自动取款机 bank 类 属性 属性名称 类型 描述 idcard string 银行卡号 name string 储户 mmi string 密码 money int 金额 num int 序号 C5 Consumer (组合)储户类 方法 方法名称 功能 set 设置银行储户信息 menu 自动取款机界面菜单
2、 2、储户类 consumer 属性 属性名称 类型 描述 chuhu string 储户 ic string 卡号 mima string 密码 jine int 金额 yue int 余额 方法 方法名称 功能 Set2 设置储户信息 xiugai 修改密码 chaxun 查询余额 qukuan 取款 zhuanzhang 转账 getch 取储户名 getmm 取密码 3、各个类之间的关系 二、系统功能结构及相关算法描述二、系统功能结构及相关算法描述 1、系统功能结构 银行自动取款银行自动取款 机机 bank(接受接受 储户信息,以储户信息,以 便传给储户便传给储户) 储户信息储户信息
3、consumer(接受(接受 bank 传来的信传来的信 息,进行操作)息,进行操作) 2、相关算法流程图、相关算法流程图 (1)设子储户信息流程 (2)修改密码流程 储户信息储户信息 类类 设设 置置 储储 户户 信信 息息 修修 改改 密密 码码 查查 询询 余余 额额 取取 款款 取取 密密 码码 取取 储储 户户 名名 转转 账账 银行自动取款机银行自动取款机 菜单界面菜单界面 设设 置置 储储 户户 信信 息息 修修 改改 密密 码码 查查 询询 余余 额额 取取 款款 转转 账账 取取 储储 户户 名名 从 bank 银行类中输 入储户信息 添加到 consumer 储户类中 (3
4、)查询余额流程 输入原密码输入原密码 输入新密码输入新密码 与原先存储与原先存储 密码比对密码比对 Y N 退出系统退出系统 (一次机会)(一次机会) 取代原密码取代原密码 储户密码比对储户密码比对 输出储户余额信息输出储户余额信息 退出系统退出系统 (一次机会)(一次机会) Y N 输入储户信息输入储户信息 (4)取款流程 Y N 退出退出系统系统 (一次机会)(一次机会) 余额是否比取余额是否比取 款金额大款金额大 Y N 取出款取出款 储密码比储密码比 对对 是 否 重 新是 否 重 新 输 入 金输 入 金 额额 Y 退出系统退出系统 N 输入储户信息输入储户信息 (5)转账流程 三、
5、程序源码三、程序源码 #include #include #include #include using namespace std; class consumer public: void set2(string c,string ch,string mm,int y) ic=c; chuhu=ch; mima=mm; yue=y; 储户密码储户密码 比对比对 退出系统退出系统 (一次机会)(一次机会) N Y 余额是否比取余额是否比取 款金额大款金额大 是 否 重 新是 否 重 新 输 入 金输 入 金 额额 N Y N 输入储户信息输入储户信息 转账成功转账成功 退出系统退出系统 int
6、 xiugai();/修改密码修改密码 void chaxun();/查询余额查询余额 int qukuan();/取款取款 int zhuanzhang();/转账转账 string getch();/取用户取用户 string getmm();/取密码取密码 private: string chuhu;/储户储户 string ic;/卡号卡号 string mima;/密码密码 int jine;/金额金额 int yue;/账户余额账户余额 ; class bank public: consumer c5; void set(int i,string id,string n,string ma,int m) num=i; idcard=id; name=n; mmi=ma; money=m; ci.set2(id,n,ma,m); ; void menu(); private: string idcard,name,mmi; int