银行管理系统-C++课程设计
- 格式:docx
- 大小:37.87 KB
- 文档页数:12
c 银行储蓄管理系统课程设计一、教学目标本课程旨在让学生了解和掌握银行储蓄管理系统的相关知识,通过学习,学生能够理解银行储蓄管理的基本概念,掌握银行储蓄管理的基本操作,并能够运用所学知识分析和解决实际问题。
具体目标如下:1.理解银行储蓄管理的基本概念和原理。
2.掌握银行储蓄管理的基本操作流程。
3.了解银行储蓄管理的法律法规。
4.能够运用银行储蓄管理系统进行日常操作。
5.能够对银行储蓄管理数据进行分析。
6.能够独立完成银行储蓄管理项目的实施和维护。
情感态度价值观目标:1.培养学生遵守法律法规,诚实守信的意识。
2.培养学生团队合作,积极进取的精神。
3.培养学生关注社会,服务社会的责任感。
二、教学内容本课程的教学内容主要包括银行储蓄管理的基本概念、基本操作和法律法规。
具体安排如下:1.银行储蓄管理的基本概念:介绍银行储蓄管理的定义、特点和作用。
2.银行储蓄管理的基本操作:讲解银行储蓄管理的操作流程,包括开立账户、存款、取款、转账等。
3.银行储蓄管理的法律法规:介绍我国银行储蓄管理的法律法规体系,包括《银行业监督管理法》、《储蓄存款条例》等。
三、教学方法为了提高教学效果,本课程将采用多种教学方法,包括讲授法、案例分析法、实验法等。
1.讲授法:通过讲解银行储蓄管理的基本概念、基本操作和法律法规,使学生掌握相关知识。
2.案例分析法:通过分析实际案例,使学生了解银行储蓄管理在实际工作中的应用。
3.实验法:通过模拟实验,让学生亲自动手操作,提高学生的实际操作能力。
四、教学资源为了支持教学内容的实施和教学方法的应用,我们将准备以下教学资源:1.教材:选用权威、实用的银行储蓄管理系统教材,作为学生学习的主要参考资料。
2.参考书:推荐学生阅读相关的参考书籍,丰富学生的知识体系。
3.多媒体资料:制作精美的PPT,生动形象地展示银行储蓄管理的相关内容。
4.实验设备:准备计算机、投影仪等实验设备,为学生提供动手操作的机会。
c语言银行系统课程设计一、课程目标知识目标:1. 学生能掌握C语言的基本语法,如数据类型、运算符、控制结构等。
2. 学生能理解银行系统的基本功能需求,如账户管理、存款、取款、查询等。
3. 学生能运用C语言编写实现银行系统的核心功能模块。
技能目标:1. 学生能运用结构体、数组、文件操作等C语言知识,设计并实现一个简单的银行系统。
2. 学生能通过分析问题,设计合理的程序模块和函数,提高代码的可读性和可维护性。
3. 学生能运用调试工具,对程序进行调试和优化,确保系统的稳定性和可靠性。
情感态度价值观目标:1. 学生通过课程学习,培养对编程的兴趣和热情,提高计算机素养。
2. 学生在团队协作中,学会沟通与交流,培养合作精神和集体荣誉感。
3. 学生能够认识到编程在现实生活中的应用价值,激发学习动力,树立正确的价值观。
本课程针对高中年级学生,课程性质为实践性、综合性。
结合学生特点,课程目标注重知识与实践相结合,培养学生的动手能力和解决问题的能力。
在教学过程中,教师应关注学生的个体差异,提供适当的指导与支持,确保学生能够达到课程目标,实现具体的学习成果。
通过本课程的学习,使学生能够将C语言知识应用于实际项目中,提高学生的编程能力和综合素质。
二、教学内容1. C语言基础回顾:数据类型、变量、常量、运算符、表达式、控制结构(条件语句、循环语句)。
相关教材章节:第一章至第三章。
2. 函数与模块化设计:函数定义、调用、参数传递;模块化设计思想,提高代码可读性和可维护性。
相关教材章节:第四章。
3. 结构体与数组:结构体定义、初始化、结构体数组;使用结构体表示银行系统中的账户信息。
相关教材章节:第五章、第六章。
4. 文件操作:文件打开、读写、关闭;实现账户信息的持久化存储。
相关教材章节:第七章。
5. 银行系统功能实现:账户管理(开户、销户)、存款、取款、查询余额、转账等。
相关教材章节:综合应用。
6. 程序调试与优化:运用调试工具,分析程序运行过程中的问题,进行性能优化。
C语言银行管理系统课程设计1. 简介本文档是一个关于C语言银行管理系统的课程设计项目,旨在帮助学生理解银行管理系统的基本原理和功能,并通过编程实现一个简单的银行管理系统。
2. 功能需求银行管理系统主要包含以下几个功能:2.1 用户管理•用户注册:用户可以通过输入个人信息进行注册,包括姓名、身份证号、手机号码等,系统会为每个用户分配一个唯一的用户ID。
•用户登录:用户可以通过输入用户名和密码登录系统。
•用户注销:用户可以选择注销已有账户。
2.2 账户管理•创建账户:用户可以创建多个不同类型的银行账户,包括储蓄账户、支票账户等。
•查询账户余额:用户可以查询某个账户的余额。
•存款:用户可以向账户存入一定金额。
•取款:用户可以从账户取出一定金额。
•转账:用户可以将一定金额从一个账户转入另一个账户。
2.3 交易记录•查询交易记录:用户可以查询自己的交易记录,包括存款、取款和转账等操作的日期、时间和金额。
2.4 管理员功能•管理员登录:管理员可以通过输入用户名和密码登录系统。
•用户管理:管理员可以对用户信息进行管理,包括添加用户、删除用户、修改用户信息等。
•账户管理:管理员可以对账户信息进行管理,包括添加账户、删除账户、修改账户信息等。
•查询统计:管理员可以查询系统中的账户总数和总金额。
3. 设计思路3.1 数据结构系统需要设计合适的数据结构来存储用户和账户信息,可以使用结构体来表示用户和账户,使用链表或数组来存储多个用户和账户。
3.2 用户界面为了方便用户操作,可以设计简单的用户界面,通过菜单选择方式实现用户和管理员的各项功能。
3.3 数据持久化为了保证用户和账户信息的长期存储,可以将数据存储在文件中,例如使用文本文件存储用户和账户信息。
3.4 安全性考虑为了保护用户个人信息和账户安全,需要对用户密码进行加密存储,并且在输入密码时进行隐藏处理。
4. 开发环境和工具本项目可以在以下开发环境和工具下开发:•操作系统:Windows、Linux、MacOS等。
c语言课程设计银行系统一、教学目标本课程的目标是让学生掌握C语言编程基础,能够运用C语言实现简单的银行系统。
通过本课程的学习,学生应达到以下知识目标:1.掌握C语言的基本语法和数据结构。
2.理解函数的定义和调用,能够编写简单的函数。
3.掌握文件操作的基本方法,能够实现文件的读写。
4.能够使用C语言编写程序,解决实际问题。
5.具备良好的编程习惯,代码结构清晰,易于阅读和维护。
6.能够运用C语言实现简单的银行系统,包括账户管理、存款、取款、查询等功能。
情感态度价值观目标:1.培养学生对计算机编程的兴趣,提高学生动手实践的能力。
2.培养学生团队协作的精神,学会与他人交流和分享。
3.培养学生解决问题的能力,培养学生的创新意识。
二、教学内容本课程的教学内容主要包括以下几个部分:1.C语言的基本语法和数据结构:变量、数据类型、运算符、表达式、控制语句、数组、字符串、函数等。
2.函数的定义和调用:函数的定义、参数传递、返回值、递归等。
3.文件操作:文件的打开、关闭、读写、定位等。
4.银行系统的实现:账户管理、存款、取款、查询等功能的设计和实现。
三、教学方法本课程的教学方法主要包括以下几种:1.讲授法:通过讲解C语言的基本语法和数据结构,让学生掌握C语言的基础知识。
2.案例分析法:通过分析实际的银行系统案例,让学生学会如何运用C语言解决实际问题。
3.实验法:通过上机实验,让学生动手实践,加深对C语言编程的理解。
4.讨论法:通过小组讨论,让学生学会与他人交流和分享,培养团队协作的精神。
四、教学资源本课程的教学资源主要包括以下几种:1.教材:《C语言程序设计》等相关教材。
2.参考书:提供一些相关的参考书籍,供学生自主学习。
3.多媒体资料:制作一些教学视频和PPT,帮助学生更好地理解教学内容。
4.实验设备:提供计算机实验室,让学生能够进行上机实验。
五、教学评估本课程的评估方式包括以下几个方面:1.平时表现:通过课堂参与、提问、讨论等方式评估学生的学习态度和积极性。
c银行管理课程设计一、课程目标知识目标:1. 让学生掌握银行管理的基本概念、原则和流程。
2. 使学生了解银行业务的种类、操作规范及风险管理。
3. 帮助学生理解银行在国民经济中的作用及其与社会发展的关系。
技能目标:1. 培养学生运用所学知识分析和解决实际银行管理问题的能力。
2. 提高学生运用信息技术进行银行业务操作和处理的能力。
3. 培养学生团队协作、沟通表达、创新思维等方面的能力。
情感态度价值观目标:1. 培养学生热爱祖国、遵纪守法、诚信守约的道德品质。
2. 增强学生对银行职业的认同感和责任感,树立正确的职业观念。
3. 培养学生关注社会热点,关注金融改革与发展,具备一定的社会责任感。
课程性质分析:本课程为金融管理专业核心课程,以理论与实践相结合为特点,注重培养学生的实际操作能力和综合素质。
学生特点分析:学生为高中二年级学生,具有一定的金融知识基础,思维活跃,求知欲强,但实践经验不足。
教学要求:1. 结合课本内容,注重理论与实践相结合,提高学生的实际操作能力。
2. 创设情境,激发学生兴趣,引导学生主动参与教学活动。
3. 注重培养学生的团队协作、沟通表达和创新思维能力。
4. 强化价值观教育,培养学生具有良好的职业道德和社会责任感。
二、教学内容1. 银行管理概述- 银行管理的基本概念与原则- 银行管理的发展历程与现状2. 银行业务管理- 银行业务的种类及操作规范- 存款、贷款、结算、信用卡等业务的管理- 银行风险管理及内部控制3. 银行人力资源管理- 银行员工的招聘、培训与管理- 银行绩效评估与激励机制4. 银行信息技术管理- 信息技术在银行业务中的应用- 银行信息系统的安全与风险管理5. 银行营销管理- 银行市场分析与营销策略- 银行产品创新与品牌建设6. 银行战略管理- 银行战略规划与实施- 银行竞争力分析与提升7. 银行法律法规与伦理道德- 银行业相关法律法规- 银行职业道德与行为规范教学内容安排与进度:第一周:银行管理概述第二周:银行业务管理第三周:银行人力资源管理第四周:银行信息技术管理第五周:银行营销管理第六周:银行战略管理第七周:银行法律法规与伦理道德教材章节及内容关联:《银行管理与实务》第一章:银行管理概述《银行管理与实务》第二章:银行业务管理《银行管理与实务》第三章:银行人力资源管理《银行管理与实务》第四章:银行信息技术管理《银行管理与实务》第五章:银行营销管理《银行管理与实务》第六章:银行战略管理《银行管理与实务》第七章:银行法律法规与伦理道德三、教学方法本课程采用以下多样化的教学方法,以激发学生的学习兴趣和主动性,提高教学效果:1. 讲授法:用于讲解银行管理的基本概念、原则、法律法规等理论知识,使学生对银行管理有全面、系统的了解。
c 银行储蓄管理系统课程设计一、教学目标本课程旨在让学生了解和掌握银行储蓄管理的基本原理和方法,培养学生运用编程技能解决实际问题的能力。
具体目标如下:1.知识目标:使学生掌握银行储蓄管理的基本概念、业务流程和常用算法;了解编程语言在银行储蓄管理中的应用。
2.技能目标:培养学生使用编程语言进行银行储蓄管理系统的开发和调试;培养学生独立分析问题、解决问题的能力。
3.情感态度价值观目标:培养学生对银行储蓄管理工作的热爱和敬业精神,提高学生对社会金融行业的认识和责任感。
二、教学内容1.银行储蓄管理概述:介绍银行储蓄管理的定义、作用和业务范围。
2.银行储蓄业务流程:讲解银行储蓄业务的各个环节,包括开户、存钱、取钱、转账等。
3.常用算法:介绍在银行储蓄管理中常用的算法,如排序、查找等。
4.编程语言应用:学习编程语言的基本语法,掌握使用编程语言实现银行储蓄管理系统的关键技术。
5.项目实践:以小组为单位,学生自主设计并开发一个简单的银行储蓄管理系统。
三、教学方法1.讲授法:教师讲解银行储蓄管理的基本概念、业务流程和常用算法。
2.案例分析法:分析实际案例,让学生了解编程语言在银行储蓄管理中的应用。
3.实验法:学生动手实践,开发和调试银行储蓄管理系统。
4.讨论法:分组讨论,引导学生独立分析问题、解决问题。
四、教学资源1.教材:选用国内权威出版社出版的银行储蓄管理教材。
2.参考书:推荐学生阅读与银行储蓄管理相关的国内外经典著作。
3.多媒体资料:制作课件、视频等,为学生提供丰富的学习资源。
4.实验设备:为学生提供计算机、网络等实验设备,确保实验教学的顺利进行。
五、教学评估本课程的教学评估将采用多元化的评估方式,以全面、客观、公正地评价学生的学习成果。
评估方式包括:1.平时表现:评估学生在课堂上的参与程度、提问回答等情况,以考察学生的学习态度和积极性。
2.作业:布置课后作业,评估学生的理解和应用能力,以及对银行储蓄管理知识掌握的程度。
c语言课程设计银行系统一、课程目标知识目标:1. 学生能理解C语言在开发银行系统中的应用,掌握基本的数据类型、控制结构、函数等语法知识。
2. 学生能掌握文件操作、指针等C语言高级特性,并能将其应用于银行系统的数据存储与处理。
3. 学生了解银行系统的基本功能,如账户管理、存取款、转账等,并运用C语言实现相关功能。
技能目标:1. 学生能够运用所学知识,设计并编写出一个具备基本功能的银行系统程序。
2. 学生通过课程学习,培养解决问题的能力,包括分析需求、设计算法、编写程序、调试与优化等。
3. 学生能够运用所学知识,对银行系统进行功能拓展和优化,提高程序的性能和稳定性。
情感态度价值观目标:1. 学生在学习过程中,培养对编程的兴趣和热情,树立正确的计算机科学观念。
2. 学生通过课程学习,认识到编程在解决实际问题中的重要性,增强自信心和成就感。
3. 学生能够具备良好的团队协作精神,学会与他人共同分析问题、解决问题,培养沟通与表达能力。
课程性质:本课程为C语言高级应用课程,旨在让学生通过实际项目案例,掌握C语言编程技巧,提高解决实际问题的能力。
学生特点:学生已具备一定的C语言基础,具有一定的编程能力和问题分析能力。
教学要求:结合实际项目,引导学生运用所学知识,培养其编程实践能力。
将课程目标分解为具体的学习成果,以便于教学设计和评估。
在教学过程中,注重理论与实践相结合,鼓励学生积极参与讨论和分享,提高课程的学习效果。
二、教学内容1. C语言基础回顾:数据类型、变量、运算符、控制结构(选择、循环)。
教材章节:第一章至第三章进度安排:2课时2. 函数与模块化编程:函数定义、调用、参数传递;模块化设计原则。
教材章节:第四章进度安排:2课时3. 文件操作:文件打开、读写、关闭;文件存储格式。
教材章节:第六章进度安排:2课时4. 指针与数组:指针的概念、指针与数组的关系;动态内存分配。
教材章节:第五章进度安排:2课时5. 银行系统功能分析与设计:a. 账户管理:开户、销户、查询账户信息。
c银行管理课程设计一、教学目标本课程旨在帮助学生掌握C银行管理的基本概念、原理和方法,培养学生运用理论知识分析和解决实际问题的能力。
具体目标如下:1.知识目标:学生能够准确理解并掌握C银行管理的相关术语、概念、原则和方法,包括银行的结构、业务运营、风险管理、资产负债管理等内容。
2.技能目标:学生能够运用所学知识对银行管理问题进行分析和解决,具备一定的实践操作能力,如编制银行财务报表、进行资产负债分析等。
3.情感态度价值观目标:培养学生对银行管理事业的热爱和敬业精神,使其认识到银行管理在经济社会发展中的重要性,树立正确的职业道德观念。
二、教学内容本课程的教学内容主要包括以下几个部分:1.银行概述:介绍银行的基本概念、分类、结构和业务范围。
2.银行业务运营:讲解存款、贷款、结算、投资等业务的基本原理和操作流程。
3.银行风险管理:阐述风险识别、评估、监控和控制等方面的方法和技术。
4.资产负债管理:学习资产负债表的编制、资产负债分析、利率敏感性分析等方法。
5.银行监管与合规:了解我国银行监管制度、法律法规以及合规要求。
三、教学方法为了提高教学效果,本课程将采用多种教学方法相结合的方式,包括:1.讲授法:教师通过讲解、阐述等方式传授知识,引导学生理解银行管理的理论和实践。
2.案例分析法:选取典型的银行管理案例,让学生分组讨论、分析,提高学生的实践能力。
3.实验法:学生进行模拟实验,让学生亲自动手操作,加深对银行管理业务流程的理解。
4.讨论法:鼓励学生针对银行管理相关话题展开讨论,培养学生的思辨能力和团队协作精神。
四、教学资源为了支持本课程的教学,我们将准备以下教学资源:1.教材:选用国内权威、实用的银行管理教材,为学生提供系统的理论知识。
2.参考书:提供相关领域的经典著作、论文,拓展学生的知识视野。
3.多媒体资料:制作课件、教案、案例视频等,以图文并茂的形式呈现教学内容。
4.实验设备:配置相应的实验器材和软件,为学生提供实践操作的机会。
原创C语言银行管理系统课程设计简介本文档为一份原创的C语言银行管理系统课程设计。
该系统旨在模拟银行的账户管理和业务处理功能,能够实现账户的开户、存款、取款、转账等基本操作,并提供查询账户余额和交易明细的功能。
1. 系统需求分析银行管理系统是一个涉及多个功能模块的复杂系统,我们需要先对需求进行分析,以确保系统功能的完整和实用。
1.1 功能模块系统应具备以下功能模块:1.账户管理:包括开户、销户、查询账号信息等功能。
2.存款业务:用户可以向自己的账户存款。
3.取款业务:用户可以从自己的账户中取款。
4.转账业务:用户可以将自己的资金转到其他账户。
5.余额查询:用户可以查询自己账户的余额。
6.交易明细查询:用户可以查询自己账户的交易明细。
1.2 数据结构设计为了实现上述功能,我们需要设计合适的数据结构来存储账户信息和交易明细。
1.账户信息:我们可以使用结构体来表示一个账户的信息,结构体包括账号、姓名、密码、余额等字段。
2.交易明细:交易明细可以使用链表来存储,每个节点包含交易时间、交易类型、金额等信息。
2. 系统设计在完成需求分析之后,我们可以开始进行系统设计。
根据需求和数据结构设计,我们可以将系统设计分为如下模块:2.1 用户接口模块用户接口模块负责与用户进行交互,接收用户输入的指令,并调用相应的功能模块来处理。
用户接口模块的功能包括以下几点:1.显示菜单:根据用户的身份和操作权限,显示相应的菜单选项。
2.解析指令:解析用户输入的指令,提取关键信息,如账号、金额等。
3.调用功能模块:根据用户的指令,调用相应的功能模块来处理。
2.2 账户管理模块账户管理模块负责对账户信息进行管理,包括开户、销户、查询账户信息等功能。
具体功能如下:1.开户:根据用户提供的姓名和密码,生成一个唯一的账号并分配初始余额。
2.销户:根据账号和密码验证用户的身份,将该账户从系统中删除。
3.查询账户信息:根据账号,返回该账户的详细信息。
C++课程设计一、课程设计要求二、源程序代码:#include<iostream>#include<fstream>#include<string>#include<vector>#include<algorithm>#include<strstream>#include<conio.h>using namespace std;class Function;class User{public:void get(User& );friend class Function;ostream &print(ostream &os);//friend ostream & operator<<(ostream & o, const User & u);friend istream & operator>>(istream & i, User & u);void PassWord();bool Login(User &);void SaveFile(User &);vector<string> StrFunction;User(){}User(int A,string N,int F,string I,string Ad,int T):Accout(A),Name(N),Fmoney(F),ID(I),Address(Ad),Telephone(T){}int Accout;string Name;int Fmoney;string ID;string Address;int Telephone;char Pword1[9];char Pword2[9];};class Function{public:void Saving(User &);void Drawing(User &);void Balance(User &);void Record(User &);private:int SaveAndDrawMoney;};void Function::Saving(User &u){system("cls");cout<<"\n\n\n\t\t*********************************************\n"<<en dl;cout<<"\t\t请输入存款金额:";string str1("\n\t\t现存RMB 钞+ ");cin>>SaveAndDrawMoney;u.Fmoney+=SaveAndDrawMoney;strstream ss;string str2;ss<<u.Accout;ss>>str2;string frist="Record"+str2 +".txt";const char *RecordFile=frist.c_str();ofstream outfile(RecordFile,ios::out|ios::app);outfile<<str1<<SaveAndDrawMoney<<endl;outfile.close();outfile.clear();cout<<"\n\n\t\t操作成功,单击任何键返回主菜单!";getch();}void Function::Drawing(User &u){system("cls");cout<<"\n\n\n\t\t*********************************************\n"<<en dl;cout<<"\t\t请输入取款金额:";string str1("\n\t\t现取RMB 钞- ");string str2;int k=0;while(k<=3){cin>>SaveAndDrawMoney;u.Fmoney -=SaveAndDrawMoney;if(u.Fmoney>=0){system("cls");cout<<"\n\n\n\t\t正在出炒,请稍等!"<<endl;strstream ss;ss<<u.Accout;ss>>str2;string frist="Record"+str2 +".txt";const char *RecordFile=frist.c_str();ofstream outfile(RecordFile,ios::out|ios::app);outfile<<str1<<SaveAndDrawMoney<<endl;outfile.close();outfile.clear();break;}else{k++;if(k>=3){system("cls");cerr<<"\n\n\n\t\t很抱歉,你重复输入错误多次"<<endl<<"\n\t\t正在退卡中……"<<endl;exit(0);}system("cls");u.Fmoney +=SaveAndDrawMoney;cerr<<"\n\n\n\t\t对不起,你输入的金额超出有效金额。
"<<endl <<"\n\t\t 请重新输入: ";}}cout<<"\n\n\t\t操作成功,单击任何键返回主菜单!";getch();}void Function::Balance(User &u){system("cls");cout<<"\n\n\n\t\t*********************************************\n"<<en dl;cout<<"\t\t你当前的余额是:";cout<<"\t\t"<<u.Fmoney<<endl;cout<<"\n\t\t*********************************************\n"<<endl; cout<<"\n\t\t操作成功,单击任何键返回主菜单!";getch();}void Function::Record(User &u){string str1,str2;system("cls");cout<<"\n\n\n\t\t*********************************************\n" <<endl;cout<<"\t\t摘要币种钞汇存/取款金额"<<endl;strstream ss;ss<<u.Accout;ss>>str2;string frist="Record"+str2 +".txt";const char *RecordFile=frist.c_str();ifstream infile(RecordFile,ios::in);if(!infile){cout<<"\n\t\t没有任何历史记录!"<<endl;getch();return ;}while(!infile.eof()){getline (infile,str1);cout<<"\n\t\t"<<str1<<endl;}cout<<"\n\t\t*********************************************\n"<<en dl;cout<<"\n\t\t操作成功,单击任何键返回主菜单!";getch();}ostream &User::print(ostream &os){system("cls");os<<"\n\n\n\t\t*********************************************\n"<<endl ;os<<"\n\t\t用户卡号:"<<Accout<<endl;os<<"\n\t\t姓名: "<<Name <<endl;os<<"\n\t\t账户金额:"<<Fmoney<<endl;os<<"\n\t\t身份证号:"<<ID<<endl;os<<"\n\t\t地址: "<<Address <<endl;os<<"\n\t\t联系电话:"<<Telephone <<endl;os<<"\n\t\t密码: "<<Pword1<<endl;os<<"\n\t\t*********************************************\n"<<endl; cout<<"\n\t\t操作成功,单击任何键返回主菜单!";getch();return os;}void User::SaveFile(User &u){int filename=u.Accout;string frist;string last(".txt");strstream ss;ss<<filename;ss>>frist;frist+=last;const char *UserID=frist.c_str();ofstream outfile(UserID,ios::out |ios::trunc );outfile<<Accout<<' '<<Name<<' '<<Fmoney<<' '<<ID<<' '<<Address<<' '<<Telephone<<' '<<Pword1<<endl;outfile.close();}bool User::Login(User &u){int acc;string pwd;cout<<"\n\t\t登陆用户:"<<endl;cout<<"\t\t卡号:";cin>>acc;cout<<"\t\t密码:";cin>>pwd;int filename=acc;string frist;string last(".txt");strstream ss;ss<<filename;ss>>frist;frist+=last;const char *UserID=frist.c_str();ifstream infile(UserID,ios::in );while (infile >> (*this)){if (u.Accout == acc ){string str;str=Pword1;if(str== pwd){return true;}}}return false;}istream & operator>>(istream & i, User & u){i>>u.Accout >> >>u.Fmoney >>u.ID >>u.Address >>u.Telephone >>u. Pword1 ;return i;}void User::PassWord(){int num=0;while(num<3){cout<<"\n\t\t请输入位储蓄密码:";for(int i=0;i<8;i++){ Pword1[i]=getch();cout<<"*";}Pword1[8]='\0';cout<<endl;cout<<"\n\t\t请再一次确认密码:";for( i=0;i<8;i++){ Pword2[i]=getch();cout<<"*";}cout<<endl;Pword2[8]='\0';if(strcmp(Pword1,Pword2)==0){cout<<"\n\n\t\t密码确认成功,单击任何键进入主菜单";getch();return ;}else{num++;cout<<"\n\t\t你输入的密码错误,请重新输入!\n"<<endl;}if(num==3){system("cls");cerr<<"\n\n\n\t\t对不起,你三次输入不正确\n"<<endl<<"\t\t感谢你的使用,再见! "<<endl;exit(0);}}void User::get(User& u){system("cls");cout<<"\n\n\n\t\t请输入用户信息:\n"<<endl;cout<<"\t\t*********************************************\n"<<endl; cout<<"\n\t\t卡号:";cin>>Accout;cout<<"\n\t\t姓名:";cin>>Name;cout<<"\n\t\t账户金额:";cin>>Fmoney;cout<<"\n\t\t身份证号:";cin>>ID;cout<<"\n\t\t地址:";cin>>Address;cout<<"\n\t\t联系电话:";cin>>Telephone;u.PassWord();cout<<"\n\t\t*********************************************\n"<<endl; }void Sign(){system("cls");cout<<"\n\n\n\n\n\n\t\t\t谢谢您使用银行管理系统\t \n\n"<<endl;cout<<"\t\t*********************************************\n"<<endl ;cout<<"\t\t 姓名: XXXXX\n\n"<<"\t\t 班级: XXXXXXXXXX\n\n"<<"\t\t 学号: XXXXXXXX\n\n"<<endl;cout<<"\n\t\t 已经成功退出"<<endl<<"\n\t\t 欢迎你的光临!" <<endl;}char custom(User &u){char x;int k=0;system("cls");cout<<"\n\n\n\t\t※※※※※※※※※※※※※※※※※※※※※※※※※※※\n"<<"\t\t※※\n"<<"\t\t※欢迎使用储蓄管理系统※<<"\t\t※※\n"<<"\t\t※请用户在使用前选择开户:※\n"<<"\t\t※※\n"<<"\t\t※请选择:※\n"<<"\t\t※ 1:注册开户※\n"<<"\t\t※ 2:用户登录※\n"<<"\t\t※其他:退出※\n"<<"\t\t※※\n"<<"\t\t※※\n"<<"\t\t※※※※※※※※※※※※※※※※※※※※※※※※※※※\n"<<endl;cout<<"\n\t\t请选择操作方式:";cin>>x;if(x=='1'){ u.get(u);}else if(x=='2'){while(k<3){if(u.Login(u)) //判断登陆是否成功{ return 0;}else{system("cls");cerr<<"\n\n\n\t\t\t输入有误!\n"<<endl<<"\t\t\t请重新输入:"<<endl;k++;}while(k>=3){system("cls");cerr<<"\n\n\n\t\t对不起,你三次输入不正确\n"<<endl<<"\n\t\t感谢你的使用,再见!\n"<<endl;exit(0);} } }else{ Sign(); exit(0); }return 0;}char menu(){int k=0;char a[3],c,i;system("cls");cout<<"\n\n\n\t\t 主菜单 \n\n" ;cout<<"\t\t*********************************************\n"<<"\t\t* *\n"<<"\t\t* *\n"<<"\t\t* 操作方式: *\n"<<"\t\t* *\n"<<"\t\t* 1.存款 2.取款 *\n"<<"\t\t* *\n"<<"\t\t* 3.查询余额 4.查询历史记录 *\n"<<"\t\t* *\n"<<"\t\t* 5.用户信息 6.保存并退出 *\n"<<"\t\t*********************************************\n"<<endl;while(k<3){cout<<"\n\t\t请选择操作方式: ";cin>>a;if(strlen(a)==1){for(i='1';i<='6';i++){ c=i;if(c==a[0]) return c;}}else{system("cls");cerr<<"\n\n\n\t\t\t输入有误!\n"<<endl<<"\t\t\t请重新输入:"<<endl;k++;}while(k>=3){system("cls");cerr<<"\n\n\n\t\t对不起,你三次输入不正确\n"<<endl<<"\n\t\t感谢你的使用,再见!\n"<<endl;exit(0);}}return c;}char Choose( User &u,Function &F){char c=menu();while(c!='6'){switch(c){case '1':F.Saving(u);c=menu();break;case '2':F.Drawing(u);c=menu();break;case '3':F.Balance(u);c=menu();break;case '4':F.Record(u);c=menu();break;case '5':u.print(cout);c=menu();break;}}u.SaveFile(u);Sign();return 0;}int main(){User u;Function F;custom(u);Choose(u,F);return 0;}。