- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
课程设报告ATM取款机程序
信息科学与技术学院
程序设计基础课程设计报告
题目名称: ATM取款机程序
学生姓名: 徐亚豪
学 号: 2011508021
专业班级: 计算机科学与技术11级1班
指导教师: 高攀
2012年 7 月 6 日
目 录
1 课程设计题目与要求 3
1.1设计题目 3
1.2设计要求 3
2 总体设计 4
3 详细设计 5
3.1数据结构设计 5
3.2主模块设计 5
4 运行结果 8
5 课程设计总结 10
1 课程设计题目与要求
1.1设计题目
ATM取款机程序
1.2设计要求
(1)只能使用C/C++语言,源程序要有适当的注释,使程序容易阅读
(2)至少采用文本菜单界面(如果能采用图形菜单界面更好)
(3)学生可自动增加新功能模块
1.3、问题的解决方案:
根据系统功能要求,可以将问题解决分为以下步骤:
(1) 分析系统中的各个实体之间的关系及其属性和行为;
(2)根据问题描述,设计系统的类层次;
(3)完成类层次中各个类的描述(包括属性和方法);
(4) 完成类中各个成员函数的定义;
(5) 完成系统的应用模块;
(6) 功能调试;
(7)完成系统总结报告以及系统使用说明书;
2 总体设计
2.1总体框架图
2.2流程图
3 详细设计
3.1数据结构设计
class Card{
public:
Card(char a[10],int b,double c)
{
strcpy(num,a);
code=b;
money=c;
}
char num[10];
int code;
double money;
};
struct node
{
Card *cod;
node *next;
};
在该程序中定义了类Card,,同时声明了3个数据成员。该类有一个构造函数,用来给数据成员赋值。3个数据成员用来保存用户的信息,包括卡号,密码,帐户余额。链表中声明了一个Card类类型的指针,以通过链表中的结点访问该指针,从而访问到定义在类中的数据成员,即用户信息。函数要访问数据成员时,都用这种指向方式,如head-cod-num。而另外一个node指针的数据成员,指向当前结点的下一个结点,利用这种方法遍历链表。将类定义和链表结合起来,可以简化该问题,在一定程度上减少了程序代码。然后再将文件里的信息依次读到链表的各个结点中,就完成了数据成员即用户信息的初始化,使问题变得简单。这就是用类定义和链表的好处所在。
3.2主模块设计
1. 密码输入模块
图3.21
2.取款模块
3.转账模块
4.查询模块
5.修改密码
4 运行结果
出错提醒界面:
5
用户退出时输出界面:
5 课程设计总结
该课程设计的题目是设计一个ATM模拟程序。在设计任务中,为尽可能把它模拟得跟真实的ATM接近一些,要求要具有以下功能:取款,查询余额,转帐,更改密码,退卡,锁卡等。同时要求界面要美观,友好,易操作。在技术上要把所有用户的信息以密文形式保存在数据文件中,且用户输入密码时不能以明文形式显示在屏幕上。
首先,由于要保存用户的帐号,密码,余额等个人信息,所以考虑用类来实现,将这三种信息设计为类的数据成员。文件中保存的也不止一个人的信息,而这些用户的信息又都访问,所以在类的基础上再构建链表。通过返回链表的头结点,外部函数只要遍历链表则可访问文件中所有用户的信息。为安全起见,用户的信息是加密后再存入数据文件中的,在这个地方就要用到加密的函数。所以总的来说,这个程序是将类,链表,文件这三大块的知识结合在一起,只要将这些条理理清楚,这个任务可以说已经完成一半了。这是分析设计这个程序的过程。
接下来,就是写程序,实现函数功能的过程了。在实现过程中实现了取款,查询余额,转帐,更改密码,退卡,锁卡等功能函数,通过主函数调用这些函数来完成相应的功能。在每个功能函数中都有错误提醒和相应的操作,退出程序或重新输入。该部分也有涉及到算法。由于要实现的功能比较多,所以函数的代码也比较长。编写的过程中难免会出现错误,在同学和老师的帮助下解决了出现的问题。
最后是界面的设计以及测试的过程。考虑到对用户的友好性,在每次输入前都有提醒语句,同时在用户选择操作前也有菜单输出以提示用户。用户三次输入错误ATM取款机即锁卡。总的来说,界面还算美观,易于操作。测试主要是测试功能函数是否能达到预定的要求,还有就是错误测试。当用户的输入出错或者进行错误的操作时,该程序能提醒拥护所出现的错误,并对不同的错误采取
您可能关注的文档
最近下载
- 人教部编版语文小学四年级阅读理解:概括中心(课件).pptx VIP
- 5.1.3数据的直观表示教学设计-2024-2025学年高一上学期数学人教B版(2019)必修第二册.docx VIP
- 2025年秋新冀少版生物7年级上册全册教学课件(新版教材).pptx
- 高速公路路基沉降变形观测实施方案.docx VIP
- 莫言文学课程设计.docx VIP
- 风力发电场电气设计-修改后.ppt VIP
- (正式版)H-Y-T 0288-2020 宗海价格评估方法(报批标准名称:海域价格评估技术规范)(正式版).docx VIP
- 植入式无线供电神经信号采集与刺激系统研发_毕业论文.pdf VIP
- 数据结构(Python版)李冬梅课后习题答案.docx VIP
- 2025版苏教版数学二年级上册全册教学设计教案.pdf
文档评论(0)