网站大量收购独家精品文档,联系QQ:2885784924

数据结构课程设计之银行储蓄管理.doc

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构课程设计之银行储蓄管理

##大学 数据结构课程设计报告 题目: 活期储蓄账目管理 院(系): 计算机工程学院 学生姓名: 班级: 学号: 起迄日期: 2011.06.20-2011.06.27 指导教师: 2010—2011年度 第 2 学期 一、需求分析 1.问题描述: 活期储蓄处理中,储户开户、销户、存入、支出活动频繁,系统设计要求:1) 能比较迅速地找到储户的账户,以实现存款、取款记账;2) 能比较简单,迅速地实现插入和删除,以实现开户和销户的需要。 我做的系统包括以下模块: 开户模块:要求能新建账户并且能够进一步对所建立的账户进行查询等操作。 查询模块:能够通过账号查找,迅速的找到要查找的账户,并显示账户余额。 存取钱模块:在迅速地查找到目的账户后,对账户余额进行修改。 销户模块:查找到目的账户,对其销户。 2.基本功能 该系统具有以下四个部分的功能: 开户功能:能够新建账户,并对其进行存储以备查询。 查询功能:能够通过账号查找,迅速的找到要查找的账户,并显示账户余额。 存取钱功能:在迅速地查找到目的账户后,对账户进行存钱取钱操作。 销户功能:查找到目的账户,对其销户。 3.输入输出 账号值大小为long,密码、存款数额值的范围为int大小,姓名为字符串。 假定账号是从50000开始,否则输出提示错误并返回主菜单; 主菜单,输入从1-到5,依次实现开户、查询、存取钱、销户和退出功能,按其他数字键位返回主菜单。 开户的时候,账号是自动分配的,从50000开始,依次增加我这里暂定账户数上限为2000,然后需要输入用户姓名,再然后是账号密码和存储金额;对于用户姓名,是字符串类型,而账号和密码必须输入数字,开户金额10元起存,小于10元慧提示并允许重新输入开户金额。 查询的时候,首先需要输入要查询的账号,如果输入的账号小于默认起始账号,那么提示输入错误并返回主菜单;如果输入了大于默认账户的账号,那么密码核实不会通过,加入输入的密码错误,则会提示并返回主菜单。 存取钱,首先符合查询的输入要求,账号密码都正确时提示存款还是取款,此时要求存款输入s,取款输入t,否则提示错误并返回主菜单,然后输入存入或取出的金额,存款提示成功,取款如果账户余额不足,则会提示余额不足并返回主菜单。 销户的时候,也是需要首先满足查找的输入要求,然后提示确定销户吗,s是确定,c是取消,输入其他的就相当于输入了字符c,提示销户不成功并返回。 二、 概要设计 设计思路: 每个账户是一个基本单位,可以看作是一个对象 每个储蓄账户由账号、户主名、密码和余额组成 能进行查找,能快速查找到所需要的账号,我选用的是哈希表。 查找到所需要的账号之后还能够进一步进行存取款操作,销户操作。 数据结构设计: 我采用的是哈希表,若结构中存在关键字和K相等的记录,则必定在f(K)的存储位置上。由此,不需比较便可直接取得所查记录。称这个对应关系f为散列函数(Hash function),按这个思想建立的表为散列表。 逻辑结构:线性结构。 存储结构:顺序结构。 采取这种存储结构和逻辑结构的原因:银行账号是按照顺序排列下来的,采取这种结构,便于增加账号和删除帐户,最主要的是便于查找,查找效率最高,而且不会有存储冲突。 其存储结构如下(哈希函数:p=Num-50000): 对象 0 1 2 3 4 5 6 …… 2000 账号 50000 50001 50002 50003 50004 50005 50006 …… 抽象数据类型线性表的定义如下: ADT List { 数据对象:D={A_Name//用于存储帐户姓名 A_Num//用于存储帐户的账号 A_Overmongy//用于存储帐户余额 PassWord//用于存储帐户密码 } 基本操作: { NewAcount() 初始条件:线性表P存在 操作结果:给线性表的一个基本单位的A_Name,PassWord, A_OverMoney赋初值。 Search() 初始条件:线性表存在。 操作结果:输入要查找的账号,验证密码,如果验证成功,则给出该结点的A_Name,A_OverMone等信息,否则返回主菜单。 ChangeMoney() 初始条件:线性表P存在,输入要查找的账号,验证密码,如果验证成功,则对结点的A_OverMoney进行修改数值操作,否则返回主菜单。 DeleteAcount() 初始条件:线性表P存在 操作结果:输入A_Num的值及PassWord值并进行验证,如果匹配,则将该结点所有信息清零。 }

文档评论(0)

ligennv1314 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档