1、 信息科学与技术学院信息科学与技术学院 程序设计基础课程设计报告程序设计基础课程设计报告 题目名称题目名称: : ATMATM 取款机程序取款机程序 学生学生姓名:姓名: 徐亚豪徐亚豪 学学 号号: : 20115080201150802121 专业班级:专业班级: 计算机科学与技术计算机科学与技术 1111 级级 1 1 班班 指导教师:指导教师: 高攀高攀 20122012 年年 7 7 月月 6 6 日日 2 目目 录录 1 1 课程设计题目与要求课程设计题目与要求 3 3 1.11.1 设计题目设计题目 3 3 1.21.2 设计要求设计要求 3 3 2 2 总体设计总体设计 4 4
2、3 3 详细设计详细设计 4 4 3.13.1 数据结构设计数据结构设计 6 6 3.23.2 主模块设计主模块设计 7 7 4 4 运行结果运行结果 9 9 5 5 课程设计总结课程设计总结 1111 3 1 课程设计题目与要求课程设计题目与要求 1.1 设计题目设计题目 ATM 取款机程序 1.2 设计要求设计要求 (1)只能使用 C/C+语言,源程序要有适当的注释,使程序容易阅读 (2)至少采用文本菜单界面(如果能采用图形菜单界面更好) (3)学生可自动增加新功能模块 1.3、问题的解决方案、问题的解决方案: 根据系统功能要求,可以将问题解决分为以下步骤: (1) 分析系统中的各个实体之
3、间的关系及其属性和行为; (2)根据问题描述,设计系统的类层次; (3)完成类层次中各个类的描述(包括属性和方法) ; (4) 完成类中各个成员函数的定义; (5) 完成系统的应用模块; (6) 功能调试; (7)完成系统总结报告以及系统使用说明书; 4 2 总体设计总体设计 2.1 总体框架图总体框架图 输入密码 取 款 转 账 修 改 密 码 查 询 余 额 输入卡号 5 2.2流程图 开始 结束 6 3 详细设计详细设计 3.1 数据结构设计数据结构设计 class Card public: Card(char a10,int b,double c) strcpy(num,a); cod
4、e=b; money=c; char num10; int code; double money; ; struct node Card *cod; node *next; ; 在该程序中定义了类 Card, ,同时声明了 3 个数据成员。该类有一个构造函数,用来给数 据成员赋值。3 个数据成员用来保存用户的信息,包括卡号,密码,帐户余额。链表中声明 了一个 Card 类类型的指针,以通过链表中的结点访问该指针,从而访问到定义在类中的数据 成员,即用户信息。函数要访问数据成员时,都用这种指向方式,如 head-cod-num。而另 外一个 node 指针的数据成员,指向当前结点的下一个结点,利用这种方法遍历链表。将类 定义和链表结合起来,可以简化该问题,在一定程度上减少了程