第十二周项目四——银行系统(任务3:将程序用多文件组织)

2024-04-10 02:38

本文主要是介绍第十二周项目四——银行系统(任务3:将程序用多文件组织),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

问题及代码:

/*
* Copyright (c) 2014, 烟台大学计算机学院
* All rights reserved.
* 文件名称:test.cpp
* 作    者:陈旭
* 完成日期:2014年 11 月 18 日
* 版 本 号:v1.0
*
* 问题描述:联系实际,自己制造一个自动取款机
* 输入描述:略
* 程序输出:略
*/
#include <iostream>
using namespace std;
bool pass();
void work();
void showbalance();
void drawmoney();
void deposit();
void transferAccounts();
void updatePassword();
double totle=10000.00;
const int p=123456;
int main()
{
cout << "贺家银行欢迎您光临……" << endl;
if (pass())
work();
else
cout <<"请到柜台办理密码查询后再来!"<<endl;
return 0;
}


 

 

#include <iostream>
using namespace std;
void updatePassword();
bool pass();
const int p=123456;
void updatePassword()
{
int password;
int a,b,c;
cout<<"请输入旧密码:";
cin>>a;
if(a!=123456)
cout<<"密码不正确!"<<endl;
else
{
cout<<"请输入新密码:";
cin>>b;
cout<<"再输入一次新密码:";
cin>>c;
if(b==c)
{
password=b;
cout<<"密码修改成功!"<<endl;
}
else
cout<<"两次密码不同,密码修改失败!"<<endl;
}
}
bool pass()
{
bool ipass=false;
int m=0,p;
do
{
cout <<"请输入密码:";
cin >>p;
m++;
if (p==123456);
ipass=true;
}
while(!ipass&&m<3);
return ipass;
}


 

#include <iostream>
using namespace std;
void work();
void showbalance();
void drawmoney();
void deposit();
void transferAccounts();
void updatePassword();
double totle=10000.00;
const int p=123456;
void work()
{
bool exit=false;
char number;
do
{
cout<<endl;
cout<<"*  您可以办理以下业务:"<<endl;
cout<<"*  1.查询 2.取款 3.存款 4.转账 5.改密 0.退出"<<endl;
cout<<"*  请输入(0-5):  ";
cin>>number;
switch(number)
{
case '1':
showbalance();
break;
case '2':
drawmoney();
break;
case '3':
deposit();
break;
case '4':
transferAccounts();
break;
case '5':
updatePassword();
break;
case '0':
cout <<"谢谢,欢迎下次再来!";
break;
default :
cout<<"输错了,不要急!"<<endl;
}
}
while (number!=0);
return;
}
void showbalance()
{
cout <<"您的当前余额是:"<<totle<<"元"<<endl;
}
void drawmoney()
{
double money;
cout <<"请输入取款金额:";
cin >>money;
if(money<=totle)
{
totle=totle-money;
cout <<"取款后,您的余额是:"<<totle<<"元"<<endl;
}
else
cout <<"对不起,余额不够,不能取款!"<<endl;
}
void deposit()
{
double money;
cout <<"请输入存款金额:";
cin >>money;
totle=totle+money;
cout <<"存款后,您的余额是:"<<totle<<"元"<<endl;
}
void transferAccounts()
{
double money;
int account;
cout <<"请输入转账金额:";
cin >>money;
cout <<"请输入对方账户:";
cin >>account;
if(money<=totle)
{
totle=totle-money;
cout <<"转给"<<account<<"后,您的余额是:"<<totle<<"元"<<endl;
}
else
cout <<"对不起,余额不够,不能取款!"<<endl;
}


 

 

学习心得:

     这样可以把这个复杂冗长的程序分成几个部分,让思路更加清楚,但是因为做的比较匆忙,重复输入密码那个好像出了点问题,没有写上了就,有空一定重新检查更改。

这篇关于第十二周项目四——银行系统(任务3:将程序用多文件组织)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/889863

相关文章

基于Python编写自动化邮件发送程序(进阶版)

《基于Python编写自动化邮件发送程序(进阶版)》在数字化时代,自动化邮件发送功能已成为企业和个人提升工作效率的重要工具,本文将使用Python编写一个简单的自动化邮件发送程序,希望对大家有所帮助... 目录理解SMTP协议基础配置开发环境构建邮件发送函数核心逻辑实现完整发送流程添加附件支持功能实现htm

C#控制台程序同步调用WebApi实现方式

《C#控制台程序同步调用WebApi实现方式》控制台程序作为Job时,需同步调用WebApi以确保获取返回结果后执行后续操作,否则会引发TaskCanceledException异常,同步处理可避免异... 目录同步调用WebApi方法Cls001类里面的写法总结控制台程序一般当作Job使用,有时候需要控制

在ASP.NET项目中如何使用C#生成二维码

《在ASP.NET项目中如何使用C#生成二维码》二维码(QRCode)已广泛应用于网址分享,支付链接等场景,本文将以ASP.NET为示例,演示如何实现输入文本/URL,生成二维码,在线显示与下载的完整... 目录创建前端页面(Index.cshtml)后端二维码生成逻辑(Index.cshtml.cs)总结

Linux查询服务器系统版本号的多种方法

《Linux查询服务器系统版本号的多种方法》在Linux系统管理和维护工作中,了解当前操作系统的版本信息是最基础也是最重要的操作之一,系统版本不仅关系到软件兼容性、安全更新策略,还直接影响到故障排查和... 目录一、引言:系统版本查询的重要性二、基础命令解析:cat /etc/Centos-release详

Spring Boot项目如何使用外部application.yml配置文件启动JAR包

《SpringBoot项目如何使用外部application.yml配置文件启动JAR包》文章介绍了SpringBoot项目通过指定外部application.yml配置文件启动JAR包的方法,包括... 目录Spring Boot项目中使用外部application.yml配置文件启动JAR包一、基本原理

Springboot项目登录校验功能实现

《Springboot项目登录校验功能实现》本文介绍了Web登录校验的重要性,对比了Cookie、Session和JWT三种会话技术,分析其优缺点,并讲解了过滤器与拦截器的统一拦截方案,推荐使用JWT... 目录引言一、登录校验的基本概念二、HTTP协议的无状态性三、会话跟android踪技术1. Cook

更改linux系统的默认Python版本方式

《更改linux系统的默认Python版本方式》通过删除原Python软链接并创建指向python3.6的新链接,可切换系统默认Python版本,需注意版本冲突、环境混乱及维护问题,建议使用pyenv... 目录更改系统的默认python版本软链接软链接的特点创建软链接的命令使用场景注意事项总结更改系统的默

springboot项目中集成shiro+jwt完整实例代码

《springboot项目中集成shiro+jwt完整实例代码》本文详细介绍如何在项目中集成Shiro和JWT,实现用户登录校验、token携带及接口权限管理,涉及自定义Realm、ModularRe... 目录简介目的需要的jar集成过程1.配置shiro2.创建自定义Realm2.1 LoginReal

idea Maven Springboot多模块项目打包时90%的问题及解决方案

《ideaMavenSpringboot多模块项目打包时90%的问题及解决方案》:本文主要介绍ideaMavenSpringboot多模块项目打包时90%的问题及解决方案,具有很好的参考价值,... 目录1. 前言2. 问题3. 解决办法4. jar 包冲突总结1. 前言之所以写这篇文章是因为在使用Mav

在Linux系统上连接GitHub的方法步骤(适用2025年)

《在Linux系统上连接GitHub的方法步骤(适用2025年)》在2025年,使用Linux系统连接GitHub的推荐方式是通过SSH(SecureShell)协议进行身份验证,这种方式不仅安全,还... 目录步骤一:检查并安装 Git步骤二:生成 SSH 密钥步骤三:将 SSH 公钥添加到 github