1、 课程设计报告课程设计报告 课程:面向对象程序设计 课程设计名称:简易 A TM 机系统 1. 设计内容: 银行 A TM 机的使用已经普及,人们都已习惯利用自动柜员机来提取现金、查询存款、电子 转账、修改密码等等。请设计一个简易的 A TM 机系统,提供以下几个功能: (1)取款 提供客户提取现金的功能 (2)转账 提供客户在同一银行内的转账功能 (3)查询余额 查询客户文件中的存款余额 (4)查询交易情况 查询交易文件中的交易记录 (5)修改密码 能够修改用户的密码 2.设计目的与要求: 2.1 设计目的 (1) 要求学生达到熟练掌握 C+语言的基本知识和技能; (2) 基本掌握面向对象程
2、序设计的基本思路和方法; (3) 能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。 2.2 设计要求 (1) 要求利用面向对象的方法以及 C+的编程思想来完成系统的设计; (2) 要求在设计的过程中,建立清晰的类层次; (3) 在系统的设计中,至少要用到面向对象的一种机制; (4) 有友好的交互式界面 (5) 要有合适的注释; (6) 完成系统总结报告以及系统使用说明书。 (统一使用 A4 白纸) 3.系统分析与设计 3.1 主要知识点 (1)类与对象的基本知识 (2)静态数据成员具有静态生存期。由于静态数据成员不属于任何一个对象,因此可以通 过类名对它进行访问,一般的用法是“类
3、名: :标识符” ,再类的定义中仅仅对静态数据成员 进行引用性声明, 必须在命名空间作用域的某个地方使用类名限定定义性声明, 这时也可以 进行初始化。 3.2 关键技术 程序中每一种功能用一个类函数来实现,共设计了 9 个类函数。窗口主页,登陆界面,功能 菜单界面,退出,取款,转账,查询余额,修改密码,查询交易情况几个功能函数。具体定 义如下所示: (1)zhuye()功能函数 先定义一个int 型数据p用作记录用户所选择的功能, 如果是所给出的功能则进入登陆界面, 如果不是所所给出的功能则提示选择错误,并重新进入主页。 (2)denglu()功能函数 先让用户输入自己的账号,如果该账号存在,
4、则再让用户输入密码,如果密码正确则进入功 能选择界面;如果密码不正确则提示输入错误;如果账号不存在,也提示输入错误。并记录 错误次数,若错误次数超过三次就强行退出,反之重新进入主页; (3)functiion()功能函数 该功能函数提供了主要服务选项,先定义一个 int 型数据 m 用以记录用户的选择,如果是正 确的选择就进入该功能,否则提示错误,重新让用户选择。 (4)tuichu()功能函数 该函数是终止服务用的。 (5)qukuan()功能函数 进入该功能,客户先输入取款金额 a,若 atotal,则提示余额不足,反之进行取款。 (6)chaxunyue()功能函数 该函数提供查询当前余
5、额服务。 (7)chaxunjilu()功能函数 该函数记录了用户当前的交易情况,包括取款金额和转账金额,其中 a 代表取款金额,b 代 表转账金额。 (8)changemima()功能函数 进入该函数用户可以修改账户密码, 首先定义两个 long 型数据 xmm 和 xxmm。 xmm 用以记 录第一次输入的密码,xxmm 用以记录第二次输入的密码,若两次输入的密码一致,则密码 修改成功;但如果两次输入的新密码不一致则退出,重新选择所需要的服务。 (9)zhuanzhang()功能函数 该函数提供转账功能,先让用户输入转账金额 b,若 btotal,则提示余额不足,退出并让用户 重新选择所需
6、服务;若 bp; if(p=1|p=2) if(p=1) denglu(); else tuichu(); else coutid; if(id111111 if(mima=id) function(); else coutm; if(m0break; case 2:zhuanzhang();break; case 3:chaxunyue();break; case 4:chaxunjilu();break; case 5:changemima();break; case 6:tuichu();break; else couta; if(ab; if(bxmm; coutxxmm; if(xmm!=xxmm) coutp; if(p=1|p=2) if(p=1) denglu(); else tuichu(); else coutid; if(id111111 if(mima=id) function(); else coutm; if(m0break; c