第十二周项目四——银行系统(任务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

相关文章

IntelliJ IDEA2025创建SpringBoot项目的实现步骤

《IntelliJIDEA2025创建SpringBoot项目的实现步骤》本文主要介绍了IntelliJIDEA2025创建SpringBoot项目的实现步骤,文中通过示例代码介绍的非常详细,对大家... 目录一、创建 Spring Boot 项目1. 新建项目2. 基础配置3. 选择依赖4. 生成项目5.

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

Linux系统性能检测命令详解

《Linux系统性能检测命令详解》本文介绍了Linux系统常用的监控命令(如top、vmstat、iostat、htop等)及其参数功能,涵盖进程状态、内存使用、磁盘I/O、系统负载等多维度资源监控,... 目录toppsuptimevmstatIOStatiotopslabtophtopdstatnmon

使用Docker构建Python Flask程序的详细教程

《使用Docker构建PythonFlask程序的详细教程》在当今的软件开发领域,容器化技术正变得越来越流行,而Docker无疑是其中的佼佼者,本文我们就来聊聊如何使用Docker构建一个简单的Py... 目录引言一、准备工作二、创建 Flask 应用程序三、创建 dockerfile四、构建 Docker

深度解析Java项目中包和包之间的联系

《深度解析Java项目中包和包之间的联系》文章浏览阅读850次,点赞13次,收藏8次。本文详细介绍了Java分层架构中的几个关键包:DTO、Controller、Service和Mapper。_jav... 目录前言一、各大包1.DTO1.1、DTO的核心用途1.2. DTO与实体类(Entity)的区别1

Golang如何对cron进行二次封装实现指定时间执行定时任务

《Golang如何对cron进行二次封装实现指定时间执行定时任务》:本文主要介绍Golang如何对cron进行二次封装实现指定时间执行定时任务问题,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录背景cron库下载代码示例【1】结构体定义【2】定时任务开启【3】使用示例【4】控制台输出总结背景

如何在Spring Boot项目中集成MQTT协议

《如何在SpringBoot项目中集成MQTT协议》本文介绍在SpringBoot中集成MQTT的步骤,包括安装Broker、添加EclipsePaho依赖、配置连接参数、实现消息发布订阅、测试接口... 目录1. 准备工作2. 引入依赖3. 配置MQTT连接4. 创建MQTT配置类5. 实现消息发布与订阅

在Golang中实现定时任务的几种高效方法

《在Golang中实现定时任务的几种高效方法》本文将详细介绍在Golang中实现定时任务的几种高效方法,包括time包中的Ticker和Timer、第三方库cron的使用,以及基于channel和go... 目录背景介绍目的和范围预期读者文档结构概述术语表核心概念与联系故事引入核心概念解释核心概念之间的关系

springboot项目打jar制作成镜像并指定配置文件位置方式

《springboot项目打jar制作成镜像并指定配置文件位置方式》:本文主要介绍springboot项目打jar制作成镜像并指定配置文件位置方式,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录一、上传jar到服务器二、编写dockerfile三、新建对应配置文件所存放的数据卷目录四、将配置文

springboot如何通过http动态操作xxl-job任务

《springboot如何通过http动态操作xxl-job任务》:本文主要介绍springboot如何通过http动态操作xxl-job任务的问题,具有很好的参考价值,希望对大家有所帮助,如有错... 目录springboot通过http动态操作xxl-job任务一、maven依赖二、配置文件三、xxl-