经典版C语言版ATM银行取款机系统完整源代码程序设计基础实训II文档.docx

上传人:b****6 文档编号:5889006 上传时间:2023-01-01 格式:DOCX 页数:43 大小:184.91KB
下载 相关 举报
经典版C语言版ATM银行取款机系统完整源代码程序设计基础实训II文档.docx_第1页
第1页 / 共43页
经典版C语言版ATM银行取款机系统完整源代码程序设计基础实训II文档.docx_第2页
第2页 / 共43页
经典版C语言版ATM银行取款机系统完整源代码程序设计基础实训II文档.docx_第3页
第3页 / 共43页
经典版C语言版ATM银行取款机系统完整源代码程序设计基础实训II文档.docx_第4页
第4页 / 共43页
经典版C语言版ATM银行取款机系统完整源代码程序设计基础实训II文档.docx_第5页
第5页 / 共43页
点击查看更多>>
下载资源
资源描述

经典版C语言版ATM银行取款机系统完整源代码程序设计基础实训II文档.docx

《经典版C语言版ATM银行取款机系统完整源代码程序设计基础实训II文档.docx》由会员分享,可在线阅读,更多相关《经典版C语言版ATM银行取款机系统完整源代码程序设计基础实训II文档.docx(43页珍藏版)》请在冰豆网上搜索。

经典版C语言版ATM银行取款机系统完整源代码程序设计基础实训II文档.docx

经典版C语言版ATM银行取款机系统完整源代码程序设计基础实训II文档

实训题目:

ATMff取款系统的改进与完善

系部:

计算机科学与技术系

专业/年级:

软件工程专业XX级

学生姓名:

班级:

X班学号XX

指导教师姓名:

职称

最终评定成绩

2012年6月

项目实训任务书

课程名称:

程序设计基础实训II

课程编码:

JX

课程类别:

专业基础必修课

学分数:

2

学时数:

32

开课学期:

2

实训题目:

ATM#取款系统的改进与完善

一、已知技术参数和设计要求:

银行ATMS取款系统业务描述如下:

银行ATM存取款系统能为用户提供存款、取款、查询、转账和修改密码的功能。

为了模拟真实的ATM业务环境,本系统必须实现存款、取款、查询、转账、修改密码

以及开户的功能。

用户通过开户业务在本系统开立银行账户,之后可以通过该银行账户

登陆ATM系统,在系统中实现存款、取款、查询账户信息、修改密码的操作。

本系统

各个业务有如下注意点:

(1)登陆系统

用户登陆之前,必须在登陆界面输入其银行账户,通过其正确输入的银行账户登陆

系统。

(2)开户业务

要使用本系统必须首先执行开户业务开立新的银行账户,并且将此新开的银行存

储于文件当中。

同时,系统以身份证号码作为开户的充分条件,即一个身份证号码只能

开立一次银行账户。

(3)存款业务

客户登陆系统后,选择存款业务,即可以将输入的存款金额存入相应的账户。

(4)取款业务

客户登陆系统后,选择取款业务,即可以将输入的取款金额从相应的银行账户取出,

但是取款金额必须大于目前的账户余额。

(5)查询业务

客户登陆系统后,可以选择查询业务,查询账户余额。

(6)转账业务

客户登陆系统后,可以选择转账业务,进行转账。

注意的是转账的目的账户必须是

本系统已经存在的银行账户。

(7)修改密码

客户登陆系统后,可以选择修改密码业务,进行密码修改。

二、各阶段具体要求:

1、系统总体设计阶段

(1)根据需求分析划分功能模块

(2)分析并设计各个功能模块之间的关系

(3)对于各个功能模块,设计相应的数据结构(必须使用链表完成全部功能)

(4)设计相应的算法(必须包括排序和检索功能,且基于链表进行排序和检索)

2、详细设计阶段

(1)对于每个功能模块,应划分成操作层和数据层

(2)对于每个操作层,应尽量考虑用户操作的简单,便捷

(3)对于每个数据层,必须使用链表进行管理

(4)在用链表进行管理时,必须用到链表检索和排序

(5)对于数据层的操作完的数据必须保存到文件中(包括文件读、写操作)

3、编码实现阶段

(1)完成代码编写

(2)要求代码编写规范(不得使用全局变量、所有功能模块必须使用函数封装

主函数main()的行数不得超过代码总长度的25%)

(3)代码必须有相应的注释(注释行数不得少于代码的10%,函数功能、变量

名、算法、重要的循环、分支都必须用注释说明)

4、系统测试阶段

(1)完成功能调试

(2)要求完成必要的测试工作

5、交付实施阶段

(1)提交可正常执行的系统,程序代码

(2)撰写项目实训报告书

(3)要求按照文档书写规范,严格地书写文档

(4)注意:

不允许使用代码、图片和表格填充报告空间。

代码、图片和表格在报告中的空间比重不得超过1/3。

要求使用文字清晰描述代码思想和逻辑,文字描述不得少于3000字(不包含注释文字)。

三、设计工作量:

(1)软件设计:

严格按照具体设计要求,完成问题陈述中所提到的所有需求功能。

(未使用链表实现的、代码少于300行的不及格,未使用链表排序的成绩不可

以为优)

(2)设计报告:

要求撰写不少于3000个文字的文档,详细说明各阶段具体要求。

四、工作计划:

安排16周时间进行实训(每周2课时),软件开发步骤如下,在第16周必须完成所有任务,实训与报告撰写同步进行;

序号

实践项目名称

内容提要

实践时数

实践

类型

实践

要求

每组

人数

1

实训项目1:

程序架构的描述

1、数据与逻辑分离

2、程序架构的描述

4

验证

必开

1

2

实训项目2:

链表在工程中的应用

1、使用链表来构造ATM

机的后台数据管理

2、实现常见的链表操作

——插入、删除、修改、遍历以及创建链表

8

验证

必开

1

3

实训项目3:

排序在项目中的应用

1、在使用链表的基础上引导学生完成2~3种主要排序一一冒泡、选择和插入

2、将这些算法结合到学生的工程应用题中

8

验证

必开

1

4

实训项目4:

查找在项目中的应用

1、在使用链表的基础上引导学生完成1〜2种主要查找一一如顺序查找

2、将这些算法结合到学生的工程应用题中

4

验证

必开

1

5

实训项目5:

结构在文件中的应用

1、讨论不同结构的设计技巧,考虑在同一项目中使用自定义结构的必要性

4

验证

必开

1

2-考虑将复杂结构——

双向链表、循环链表作为解决问题的一种途径与手段

6

实训项目6:

文件

操作技巧

1、加强学生对文件操作的认识

2、考虑将复杂结构中的相关数据通过写入文件的方法作为长期记录保存的工具

3、并将此作为改进项目的手段

4

验证

必开

1

五、注意事项

1)提交文档

课程实训任务书(每学生1份)

课程实训报告(每学生1份)

2)成绩评定

学生成绩由指导老师负责考察评定,分为:

优、良、中、及格和不及格五档以下情况可以判断成绩为不及格:

a、抄袭

b、代码量少于300行

c、未使用链表

d、报告不符合规范

以下情况不可以判断成绩为优:

a、未使用链表排序

b、使用全局变量

c、大量代码集中在主函数main()中,而不是使用函数进行合理封装

d、功能不完善,有残缺

e、代码缺乏必要的注释

f、缺课

其他情况由指导老师综合考虑给予成绩评定

主要考察知识点与要求:

a、链表组织数据

b、排序(基于链表)

c、链表检索

d、文件保存和读取数据

e函数封装及调用f代码缩进和注释等软件工程原则基本要求g文档

摘要

银行ATM取款机系统能为用户提供存款、取款、查询、转账与修改密码的功能。

客户操作该取款机时,若是新客户,则必须先注册,设定好账号与密码,然后在登录界

面进行登录。

登录系统将对客户的账号与密码进行逐一的核对,账号输入三次不正确,

系统将自动退出。

若账号正确,密码输入三次有误,系统同样会自动退出。

二者都核对

无误将进入银行菜单选择界面。

客户可根据自己的需求进行选择。

若客户选择取款业务,

进入取款界面,先显示客户的余额,然后再提示客户按指定的要求进行操作。

客户存入

多少金额,就会在客户原有的余额上加上存入的金额。

最后显示客户现有余额,自动返

回选择功能界面。

取款与存款基本相同。

若客户需要修改密码,进入修改密码界面时,

系统将提醒客户输入原密码,若输入的原密码错误,系统将提示密码输入错误后自动返

回选择功能界面。

核对密码无误将提示客户设定新的密码。

系统会自动保存客户设定的

新密码,客户下次登录时只能运用新密码才能成功登录。

摘要错误..!

未定义书签。

第1章银行ATMIX款机功能错误!

未定义书签〈

银行开户界面错误..!

未定义书签。

录入客户信息操作提示错误.!

未定义书签。

客户输入项错误..!

未定义书签。

操作流程错误..!

未定义书签。

开户界面示意图错误..!

未定义书签。

银行登录界面错误..!

未定义书签。

客户登录操作提示错误..!

未定义书签。

操作流程错误..!

未定义书签。

客户登录界面示意图错误.!

未定义书签。

银行业务功能选择界面错误..!

未定义书签。

业务功能选择操作提示错误.!

未定义书签。

操作流程错误..!

未定义书签。

业务功能选择界面示意图错误.!

未定义书签。

银行取款界面错误..!

未定义书签。

银行取款操作提示错误..!

未定义书签。

操作流程错误..!

未定义书签。

银行取款界面示意图错误.!

未定义书签。

银行余额查询界面错误..!

未定义书签。

银行余额操作提示错误..!

未定义书签。

操作流程错误..!

未定义书签。

银行余额查询界面示意图错误.!

未定义书签。

银行转账界面错误..!

未定义书签。

银行转账操作提示错误..!

未定义书签。

操作流程错误..!

未定义书签。

银行转账界面示意图错误.!

未定义书签。

修改密码界面错误..!

未定义书签。

修改密码操作提示错误..!

未定义书签。

操作流程错误..!

未定义书签。

修改密码界面示意图错误.!

未定义书签。

银行存款界面错误..!

未定义书签。

银行存款操作提示错误..!

未定义书签。

操作流程错误..!

未定义书签。

银行存款界面示意图错误.!

未定义书签。

第2章银行取款机后台操作错误!

未定义书签。

建立客户信息错误..!

未定义书签。

操作流程错误..!

建立客户信息示意图错误.!

卡号查询客户信息错误..!

操作流程错误..!

姓名查询客户信息错误..!

操作流程错误..!

余额查询客户信息错误..!

操作流程错误..!

删除客户信息错误..!

操作流程错误..!

增加客户信息错误..!

操作流程错误..!

排序输出客户信息错误..!

操作流程错误..!

.错误!

未定义书签。

第3章银行取款机系统制作流程

程序框架的描述错误..!

未定义书签。

数据域逻辑的分离错误.!

未定义书签。

程序架构的描述错误..!

未定义书签。

链表在工程中的应用错误..!

未定义书签。

链表作用于后台错误..!

未定义书签。

实现常见的链表操作错误.!

未定义书签。

排序在项目中的应用错误..!

未定义书签。

链表排序错误..!

未定义书签。

链表排序的应用错误..!

未定义书签。

排序查找在项目中的应用错误.!

未定义书签。

运用链表查找错误..!

未定义书签。

运用链表查找的应用错误.!

未定义书签。

结构在文件中的应用错误..!

未定义书签。

不同结构的设计技巧错误.!

未定义书签。

运用复杂结构解决问题错误.!

未定义书签。

文件的操作技巧错误..!

未定义书签。

文件操作的认识错误..!

未定义书签。

运用文件对ATM3行改进错误!

未定义书签

结论错误..!

未定义书签。

附录错误..!

未定义书签。

致谢错误..!

未定义书签。

第1章银行ATMB款机功能

银行开户界面

新客户使用银行取款机系统时,必须先进行开户。

客户在进行开户业务时,提示客户输入姓名,身份证号码即新客户的银行卡号,并设定好银行卡密码。

新客户的默认余额为元。

当客户注册成功后,系统将自动保存客户信息,然后显示客户的姓名,卡号,以及客户的默认余额。

以便客户识记。

录入客户信息操作提示

客户进入开户界面时,提示客户输入姓名,身份证号码即新客户的银行卡号,并设定好银行卡密码。

客户输入项

表客户输入值

输入项名称

标志i

数据类型

后效范围

用户姓名

name

数组

20位

用户卡号

ID

数组

20位

用户密码

key

数组

6位

操作流程

客户进入开户界面时,按下面指定要求进行操作。

第一步:

显示欢迎客户来到建设银行开户,提示客户输入客户姓名,身份证号(卡号)以及设定银行卡密码。

第二步:

当用户正确输入完信息后,提示注册成功,保存客户信息。

第三步:

显示客户输入的姓名与卡号与默认余额,方便客户识记.

第四步:

进入用户选择登录界面。

开户界面示意图

图开户界面示意图

银行登录界面

客户登录操作提示

客户进入银行取款机登录界面时,按照指定的要求进行操作,若输入有误,系统将自动提醒用户重新输入。

操作流程

客户进入登录界面时,按下面指定要求进行操作。

第一步:

提示客户输入身份证号(卡号),若客户输入的银行卡号与注册的卡号不相同,则提示客户输入有误,让客户重新输入。

三次输入银行卡号有误,系统将自动退出。

若输入卡号正确,则进入下一个流程。

第二步:

提示客户输入银行卡密码,若客户输入的银行卡密码与注册的银行卡密码不相同,则提示客户输入有误,让客户重新输入。

三次输入银行卡密码有误,系统将自动退出。

若输入密码正确,提示客户登录成功,进入银行取款机业务功能选择界面

客户登录界面示意图

图登录界面不意图

银行业务功能选择界面

业务功能选择操作提示

客户进入银行业务功能选择界面时,按照指定的要求进行操作,若输入有误,系统将自动提醒用户重新输入。

操作流程

客户进入银行业务功能选择界面时,按下面指定要求进行操作。

第一步:

功能选择界面中,为客户提供存款、取款、查询、转账、修改密码与退出的功

能。

客户可从中选择自己需要的业务。

第二步:

客户输入与功能业务对应的阿拉伯数字,即可进入相应的业务流程中,以便满足客户的需求。

第三步:

客户完成自己的业务后,系统将自动返回业务功能选择界面,客户可重新选择,也可选择退出,退出取款机系统。

业务功能选择界面示意图

图业务功能选择界面示意图

银行取款界面

银行取款操作提示

客户进入银行取款界面时,按照指定的要求进行操作。

若输入有误,系统将自动提醒用户。

操作流程

客户进入银行取款界面时,按下面指定要求进行操作。

第一步:

在银行取款界面中显示客户可取金额数目项目,客户按照指定金额对应的阿拉伯数字输入即可。

第二步:

当客户按照指定的要求输入时,将对客户输入的金额与用户里面的余额进行比较,若客户输入的金额大于现有余额,则提示客余额不足,返回功能选择界面。

第三步:

若客户输入的金额小于客户原有余额,则从客户原有余额中减去当下所取金额,然后提示取款成功,并显示客户现有余额。

第四步:

客户完成取款业务后,系统将自动返回业务功能选择界面,客户可重新选择,

也可选择退出,退出取款机系统。

银行取款界面示意图

图银行取款界面示意图

银行余额查询界面

银行余额操作提示

客户进入银行取款界面时,系统将自动显示您卡上的余额。

操作流程

客户进入银行取款界面时,按下面指定要求进行操作。

第一步:

在进入银行查询界面时,系统自动显示客户余额。

第二步:

客户完成查询业务后,系统将自动返回业务功能选择界面,客户可重新选择,也可选择退出,退出取款机系统。

银行余额查询界面示意图

图银行余额查询界面示意图

银行转账界面

银行转账操作提示

客户进入银行转账界面时,按照指定的要求进行操作。

若输入有误,系统将自动提醒用户。

操作流程

客户进入银行转账界面时,按下面指定要求进行操作。

第一步:

客户两次输入需要转账的卡号,若两次输入不相同,则返回选择功能界面。

第二步:

若客户两次输入相同,则从客户原有余额中减去当下所取金额,然后提示转账成功,并显示客户现有余额。

第三步:

客户完成取款业务后,系统将自动返回业务功能选择界面,客户可重新选择,也可选择退出,退出取款机系统。

银行转账界面示意图

图银行转账界面示意图

修改密码界面

修改密码操作提示

客户进入银行取款机修改密码界面时,按照指定的要求进行操作,若输入有误,系统将自动提醒用户重新输入。

操作流程

客户进入登录界面时,按下面指定要求进行操作。

第一步:

提示客户输入银行卡原密码,对客户输入的密码进行核对,若客户输入的银行卡原密码与注册的银行卡密码不相同,则提示客户输入有误,系统将自动返回功能选择界面。

若输入密码正确,则进入下一个流程。

第二步:

提示客户输入新密码,并保存好客户修改的新密码。

下次登录只能用新密码才能成功登录。

第三步:

客户完成修改密码业务后,系统将自动返回业务功能选择界面,客户可重新选择,也可选择退出,退出取款机系统。

修改密码界面示意图

图修改密码界面示意图

银行存款界面

银行存款操作提示

客户进入银行存款界面时,按照指定的要求进行操作。

若输入有误,系统将自动提醒用户。

操作流程

客户进入银行存款界面时,按下面指定要求进行操作。

第一步:

在银行存款界面中显示客户可取金额数目项目,客户按照指定金额对应的阿拉伯数字输入即可。

第二步:

系统将在客户原有余额中加上当下所存金额,然后提示存款成功,并显示客户现有余额。

第四步:

客户完成取款业务后,系统将自动返回业务功能选择界面,客户可重新选择,也可选择退出,退出取款机系统。

图银行存款界面示意图

第2章银行取款机后台操作

建立客户信息

在后台运用链表建立多个客户信息,其中包括客户的姓名、卡号、余额。

当连续输入三个零时,将停止建立客户信息,然后按余额的降序讲所有的客户信息输出。

以便余额的查找。

操作流程

操作人员按指定的要求进行操作第一步,操作人员可以任意输入输入几个客户信息,连续按三个零则结束客户信息的输入。

输入完成后,将所有的客户信息按余额的降序输出。

第二步:

操作者完成客户信息输入后,系统将自动返回后台功能选择界面,操作者可重新选择,也可选择退出,退出后台操作系统。

建立客户信息示意图

建立客户信息示意图

 

代号查询客户信息

在客户信息查询界面中,能够对建立的所有客户的信息按照卡号进行查询,当找到链表中的卡号与输入的客户的卡号相同时,则显示出客户的信息,包括客户的姓名,卡号,以及余额。

若没有找到与之相同的客户卡号,则提示没有该用户,返回功能界面,重新选择。

操作流程

操作人员按指定的要求进行操作

第一步,操作人员输入需要查找的客户的卡号,当找到链表中的卡号与输入的客户的卡号相同时,则显示出客户的信息,包括客户的姓名,卡号,以及余额。

若没有找到与之相同的客户卡号,则提示没有该用户,返回功能界面,重新选择。

第二步:

操作者完成客户信息查询后,显示该客户的姓名、卡号、以及余额。

然后系统将自动返回后台功能选择界面,操作者可重新选择,也可选择退出,退出后台操作系统。

姓名查询客户信息

在客户信息查询界面中,能够对建立的所有客户的信息按照姓名进行查询,当找到链表中的客户姓名与输入的客户的姓名相同时,则显示出客户的信息,包括客户的姓名,卡号,以及余额。

若没有找到与之相同的客户姓名,则提示没有该用户,返回功能界面,重新选择。

操作流程

操作人员按指定的要求进行操作

第一步,操作人员输入需要查找的客户的姓名,当找到链表中的客户姓名与输入的客户的姓名相同时,则显示出客户的信息,包括客户的姓名,卡号,以及余额。

若没有找到与之相同的客户姓名,则提示没有该用户,返回功能界面,重新选择。

第二步:

操作者完成客户信息查询后,显示该客户的姓名、卡号、以及余额。

然后系统将自动返回后台功能选择界面,操作者可重新选择,也可选择退出,退出后台操作系统。

余额查询客户信息

在客户信息查询界面中,能够对建立的所有客户的信息按照余额进行查询,当找到链表中的客户余额与输入的客户的余额相同时,则显示出客户的信息,包括客户的姓名,卡号,以及余额。

若没有找到与之相同的客户余额,则提示没有该用户,返回功能界面,重新选择。

操作流程

操作人员按指定的要求进行操作

第一步,操作人员输入需要查找的客户的余额,当找到链表中的客户余额与输入的客户的余额相同时,则显示出客户的信息,包括客户的姓名,卡号,以及余额。

若没有找到与之相同的客户余额,则提示没有该用户,返回功能界面,重新选择。

第二步:

操作者完成客户信息查询后,显示该客户的姓名、卡号、以及余额。

然后系统将自动返回后台功能选择界面,操作者可重新选择,也可选择退出,退出后台操作系统。

删除客户信息

在已经建立起了链表的前提下,后台操作者可以对客户的信息进行删减,当操作者输入所要删除的客户的卡号,然后与链表建立中的客户卡号逐一进行比较,若二者相同,则删除该客户的信息。

若没有与之相同的,则提示没有该客户。

然后返回功能界面。

X

操作流程

操作人员按指定的要求进行操作

第一步,操作人员输入需要删除的客户的卡号,当找到链表中的客户卡号与输入的客户的卡号相同时,则删除该用户的信息。

若没有找到与之相同的客户卡号,则提示没有该用户,返回功能界面,重新选择。

第二步:

操作者完成删除客户信息后,系统将自动返回后台功能选择界面,操作者可重新选择,也可选择退出,退出后台操作系统。

增加客户信息

后台操作者可以增加客户的信息,操作者按要求输入客户的姓名、卡号、余额即可。

建立完成后,自动返回功能界面。

X

操作流程

操作人员按指定的要求进行操作

第一步,操作人员输入需要增加的客户的卡号、姓名、以及余额。

第二步:

操作者完成增加客户信息后,系统将自动返回后台功能选择界面,操作者可重

新选择,也可选择退出,退出后台操作系统

排序输出客户信息

后台操作者输入与排序输出对应的阿拉伯数字即可。

操作流程

操作人员按指定的要求进行操作

第一步,操后台操作者输入与排序输出对应的阿拉伯数字即可。

第二步:

排序输出所有客户信息后,系统将自动返回后台功能选择界面,操作者可重新选择,也可选择退出,退出后台操作系统。

第3章银行取款机系统制作流程

程序框架的描述

在制作ATM1艮行取款机系统时,首先明确取款机系统的功能,熟悉掌握各操作之间

的关系,了解客户的需求,在脑海中有一个熟练的操作流程。

然后对功能与需求进行仔

细的分析。

构造出一个完整的操作流程的框架。

数据域逻辑的分离

在制作银行取款机系统时,首先不处理程序的有关数据,比如说不核对客户银行卡

卡号与密码即可进入功能选择界面,不处理取款时余额是否不足,客户的输入有误等这

些问题,而是将银行取款机系统中的各个功能的函数基本框架构建好,这样银行取款机

系统中逻辑这一块就不受数据方面的约束而显得非常清晰了。

程序架构的描述

在构建的取款机系统的函数中包括注册函数、登录函数、取款函数、查询函数、转

账函数、存款函数、修改密码函数、退出函数。

每构件一个函数时,先在主函数中调用,

能够成功编译运行时再写别的函数,然后逐一进行调用,编译运行无误即可。

然后根据

到那个模块就调用相应的功能函数,在运行时都有相应的功能界面即可,这样银行取款

机系统的基本框架就已经成型了。

链表在工程中的应用

链表作用于后台

运用链表建立银行ATMt台管理系统。

在银行ATMt台管理系统中,可以建立若干个客户信息,直到连续输入三个零则停止客户信息的建立。

在后台中,可以运用卡号、

姓名、以及余额进行客户信息查询。

并且可以对客户的信息进行插入、删除等功能。

实现常见的链表操作

在后台链表操作中。

能够建立若干个客户的信息,同时也可以对所有的客户信息遍

历,进行输出,同时可以对所有的客户信息按余额的降序排序进行输出。

在已经建立好

了客户信息的前提下,能够对客户的信息进行删减,同时也能够增加客户的信息。

同时

能够按客户的卡号、姓名、以及余额,对客户的信息进行查

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1