想看项目的注意了!完整版银行管理系统就在这里看不看你看着办!

 按照惯例咱们还是先来看一下项目需求:

某银行为了提高业务率希望开发一个银行管理系统功能如下:

1.能够完成用户开户操作

2.能够完成用户取款操作

3.能够完成用户存款操作

4.能够完成用户转账操作

5.能够完成显示用户现有余额操作

好了,需求有了接下来该干嘛?

这还不简单直接开始写代码啊!错!我们在拿到一个项目的时候千万不能一上来就开始写代码,不然用我老师的话来说就是你死都不知道咋死的(呵呵,这不是我说的)!其实我们不管做什么事都是,首先要思考想一想该怎么做?每一步要做什么?有了一个计划之后再来写代码!

首先我们来根据项目要求来确定有几个类,每个类的内容是什么?

那这个项目呢有三个类:

1.账户类(User)

2.银行类(bank)

3.程序入口类(Program)

然后再来逐个分析每个类的字段、属性和方法

  字段    属性    方法

账户类:

    卡号    卡号

    持卡人   持卡人

    密码    密码

    余额    余额

银行类:

          账户     显示欢迎菜单

                 初始化账户信息

                 显示余额

                 开户

                 存款

                 取款

                 转账

程序入口类:

                 Main方法

这是我们的项目已经算是完成一半了接下来只要往里面套代码就行了

账户类代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace bank
{
class Ka
{
private string chiKaRen;//持卡人(字段)
private string miMa;//密码(字段)
private int kaHao;//卡号(字段)
public double yuE;//余额(字段)
public string ChiKaRen//持卡人(属性)
{
get { return chiKaRen; }
set { chiKaRen = value; }
} public int KaHao//卡号(属性)
{
get { return kaHao; }
set { kaHao = value; }
} public string MiMa//密码(属性)
{
get { return miMa; }
set { miMa = value; }
}
public string YuE//余额(属性)
{
get { return yuE; }
set { miMa = value; }
}
}
}

bank类代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace bank
{
class Yinhang
{
public User[] ka = new User[];//创建一个长度为100的User类对象数组
private bool fa=false;//
///显示菜单
static void Show()
{ Console.WriteLine("===============================");
Chushihua();//初始化账户信息
Xianshi();//显示余额
Console.WriteLine("===============================");
while(true){
//打印主菜单
Console.WriteLine("===============================");
Console.WriteLine("欢迎光临银行管理系统");
Console.WriteLine("请选择功能");
Console.WriteLine("1.开户");
Console.WriteLine("2.存款");
Console.WriteLine("3.取款");
Console.WriteLine("4.修改密码");
Console.WriteLine("5.显示余额");
Console.WriteLine("6.转账");
Console.WriteLine("7.退出");
Console.WriteLine("==============================");
string num = Console.ReadLine();//接收用户选项
if (num == "")//如果用户输入“7”退出系统
{
break;
}
switch (num)根据用户的选项进入相应模块
{
case "":
KaiHu();//开户
break;
case "":
CunKuan();//存款
break;
case "":
QuKuan();//取款
break;
case "":
XuiGaiMiMa();//修改密码
break;
case "":
Xianshi();显示余额
break;
case "":
Zhuanzhang();//转账
break;
} } }
///初始化账户信息
public void Chushihua() {
Ka ka1 = new Ka();
ka1.ChiKaRen = "";
ka1.KaHao=;
ka1.MiMa = "";
ka1.yuE = ;
ka[] = ka1;
Ka ka2 = new Ka();
ka2.ChiKaRen = "";
ka2.KaHao = ;
ka2.MiMa = "";
ka2.yuE = ;
ka[] = ka2;
Ka ka3 = new Ka();
ka3.ChiKaRen = "";
ka3.KaHao = ;
ka3.MiMa = "";
ka3.yuE = ;
ka[] = ka3;
}
//显示余额
public void Xianshi() {
foreach(Ka item in ka){
if(item!=null){
Console.WriteLine("持卡人:{0}\t余额:{1}",item.ChiKaRen,item.yuE);
}
}
}
//开户
public void KaiHu()
{
Console.WriteLine("请输入卡号");
int num = int.Parse(Console.ReadLine());
Console.WriteLine("请输入密码");
string mima = Console.ReadLine();
Console.WriteLine("请输入持卡人");
string name = Console.ReadLine();
Console.WriteLine("请输入初始金额");
int mony = int.Parse(Console.ReadLine());
Ka k = new Ka();
k.ChiKaRen = name;
k.KaHao = num;
k.yuE = mony;
k.MiMa = mima;
fa = true;
for (int i = ; i < ka.Length; i++)
{
if (ka[i] != null)
{
if(ka[i].KaHao==num)
{
fa = false;
} }
}
if (fa == false)
{
Console.WriteLine("注册失败,此卡号已存在!");
}
for (int i = ; i < ka.Length;i++ )
{
if(ka[i]==null&&fa==true){
ka[i] = k;
break; }
}
if(fa){
Console.WriteLine("注册成功");
}
}
//修改密码
public void XuiGaiMiMa()
{
Console.WriteLine("请输入您的卡号");
int num = int.Parse(Console.ReadLine());
Console.WriteLine("请输入您的密码");
string m= Console.ReadLine();
fa = false;
for (int i = ; i < ka.Length;i++ )
{
if(ka[i]!=null){
if (ka[i].KaHao == num && ka[i].MiMa.Equals(m))
{
Console.WriteLine("请输入修改后的密码");
string mi = Console.ReadLine();
ka[i].MiMa = mi; fa = true;
break;
}
}
}
if (fa)
{
Console.WriteLine("修改成功");
}
else
{
Console.WriteLine("修改失败");
}
}
//存款
public void CunKuan()
{
Console.WriteLine("请输入您的卡号");
int num = int.Parse(Console.ReadLine());
Console.WriteLine("请输入您的密码");
string mi = Console.ReadLine();
fa = false;
for (int i = ; i < ka.Length; i++)
{
if (ka[i] != null)
{
if (ka[i].KaHao == num&&ka[i].MiMa.Equals(mi))
{ Console.WriteLine("请输入存款金额");
double qian = double.Parse(Console.ReadLine());
ka[i].yuE = ka[i].yuE + qian;
fa = true;
break;
}
}
}
if (fa)
{
Console.WriteLine("存款成功");
}
else
{
Console.WriteLine("存款失败");
}
}
//转账
public void Zhuanzhang()
{
Console.WriteLine("请输入您的卡号");
string name = Console.ReadLine();
bool falg = false;
bool falg2 = false;
for (int i = ; i < ka.Length; i++)
{
if (ka[i] != null)
{
if (ka[i].Equals(name))
{
falg = true;
Console.WriteLine("请输入您的密码");
string pwd = Console.ReadLine();
if (ka[i] != null)
{
if (ka[i].MiMa.Equals(pwd))
{
Console.WriteLine("请输入您要转入的卡卡号");
string name1 = Console.ReadLine();
for (int j = ; j < ka.Length; j++)
{
if (ka[j] != null)
{
if (ka[j].KaHao.Equals(name1))
{
falg2 = true;
Console.WriteLine("请输入您要转入的金额");
double mony1 = Convert.ToDouble(Console.ReadLine());
if (ka[j].yuE > mony1)
{
ka[i].yuE -= mony1;
ka[j].yuE += mony1;
Console.WriteLine("转账成功");
Console.WriteLine("您的余额:{0}\t转入账户的余额:{1}", ka[i].yuE, ka[j].yuE);
}
else
{
Console.WriteLine("您的余额不足");
}
break;
} }
}
if (falg2 == false)
{
Console.WriteLine("您要转入的卡号不存在");
}
}
else
{
Console.WriteLine("您输入的密码错误");
}
break;
} }
}
}
if (falg == false)
{
Console.WriteLine("您输入的卡号不存在");
} }
//取款
public void QuKuan()
{
Console.WriteLine("请输入你的卡号");
int k = int.Parse(Console.ReadLine());
Console.WriteLine("请输入你的密码");
string mi = Console.ReadLine();
fa = false;
for (int i = ; i < ka.Length;i++ )
{
if(ka[i]!=null)
{
if( ka[i].KaHao==k&&ka[i].MiMa.Equals(mi))
{
Console.WriteLine("请输入您要转入的卡号");
int inKa = int.Parse(Console.ReadLine());
for (int j = ; j < ka.Length; j++)
{
if (ka[j] != null)
{
if (ka[j].KaHao == inKa)
{
Console.WriteLine("请输入要转入的金额");
double mony = double.Parse(Console.ReadLine());
if (ka[i].yuE > mony)
{
ka[i].yuE = ka[i].yuE - mony;
ka[j].yuE = ka[j].yuE + mony;
fa = true; break;
}
}
} }
break;
} }
}
if (fa)
{
Console.WriteLine("转账成功");
}
else
{
Console.WriteLine("转账失败");
}
} }
}

之后在Main方法中调用就好了!

声明:本人是刚入门的菜鸟 这个项目也确实是完整版的(题目要求的全写了)。希望能多指教

I am a good person but I don't lick Penzi if you can recommend mi I can ever happy eachday!

shank you

 

银行bank系统项目实践的更多相关文章

  1. [转帖]中信银行信用卡业务数据库实现国产替换,湖北银行新核心系统项目正式验收,阿里云与MongoDB达成战略合作

    中信银行信用卡业务数据库实现国产替换,湖北银行新核心系统项目正式验收,阿里云与MongoDB达成战略合作 http://www.itpub.net/2019/10/31/3942/ 中信银行 gold ...

  2. c++课程实训 银行储蓄系统

    基本要求:定义了用户类(User)和银行类(Bank),用成员函数实现各种功能,多文件组织程序.能用文本文件存取数据(如演示样例中给出的技术): 拓展方向: 序号 加分项目 细       则 1 改 ...

  3. 神奇的Bank系统之旅哦

        奋斗不能等待,我们不能等到垂暮之年再去“全力以赴”.让我们从现在开始,为理想而努力,为人生而拼搏.精诚所至,金石为开,相信奋斗会让我们的青春之花绽放得更加绚烂,让我们的人生之路走下来不留遗憾. ...

  4. 论那些年我们讨论过的Bank系统!

    今天呢我就和大家分享一下怎样用对象数组的形式来实现一个简单的银行系统, 首先呢,跟大家介绍一下这个简单的银行操作系统要实现的一些主要的功能: 主要功能有 : 1.开户功能 2.存款 3.取款 4.转账 ...

  5. Hangfire项目实践分享

    Hangfire项目实践分享 目录 Hangfire项目实践分享 目录 什么是Hangfire Hangfire基础 基于队列的任务处理(Fire-and-forget jobs) 延迟任务执行(De ...

  6. Zabbix监控系统深度实践

    Zabbix监控系统深度实践(企业级分布式系统自动化运维必选利器,大规模Zabbix集群实战经验技巧总结,由浅入深全面讲解配置.设计.案例和内部原理) 姚仁捷 著  ISBN 978-7-121-24 ...

  7. Hangfire项目实践

    Hangfire项目实践分享 Hangfire项目实践分享 目录 Hangfire项目实践分享 目录 什么是Hangfire Hangfire基础 基于队列的任务处理(Fire-and-forget ...

  8. 亲们! 首次见面! 带来不适!多多见谅!--------->>Bank系统

    亲们!您们好! 讲一下Bank系统的做法: 01.首先创建一个Card类 using System; using System.Collections.Generic; using System.Li ...

  9. 大型网站系统架构实践(六)深入探讨web应用集群Session保持

    原理 在第三,四篇文章中讲到了会话保持的问题,而且还遗留了一个问题,就是会话保持存在单点故障, 当时的方案是cookie插入后缀,即haproxy指负责分发请求,应用服务自行保持用户会话,如果应 用服 ...

随机推荐

  1. 比较两个时间的大小 举例:CompareDate("12:00","11:15")

    //比较两个时间的大小 举例:CompareDate("12:00","11:15") function CompareDate(t1, t2) { var d ...

  2. Python 对象初识

    # Demo1class Penson: animal = 'big mom' plant = 'flower' def __init__(self,name,age,sex,job): self.n ...

  3. vue-cli 3.0 安装和创建项目流程

    使用前我们先了解下3.0较2.0有哪些区别 一.3.0 新加入了 TypeScript 以及 PWA 的支持二.部分命令发生了变化: 1.下载安装  npm install -g vue@cli 2. ...

  4. Android FloatMenuSample

    项目地址:fanOfDemo/FloatMenuSample crosg/FloatMenuSample transfer from yiming/FloatMenuSample GIF GRADLE ...

  5. Python更换pip源,更换conda源

    更换pip源: 1.在windows文件管理器中,输入 %APPDATA% 2.在该目录下新建pip文件夹,然后到pip文件夹里面去新建个pip.ini文件 3.在新建的pip.ini文件中输入以下内 ...

  6. gbk编码

    GBK 编码   GBK编码范围:8140-FEFE,汉字编码范围见第二节:码位分配及顺序. GBK编码,是对GB2312编码的扩展,因此完全兼容GB2312-80标准.GBK编码依然采用双字节编码方 ...

  7. CF859C Pie Rules 动态规划 逆推_思维题

    题意:有 nnn 个物品,每个物品有不同的价值,物品按顺序分给两个人,有一块令牌,每回合拥有令牌的人拥有物品的分配权,但是该回合未获得物品的那个人会在下回合获得令牌,开始令牌在Bob手里,两个人都采取 ...

  8. IOS - JSON数据解析 小3种方法

    [manager GET:serverURL parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject ...

  9. tinymce原装插件源码分析(七)-使能css、script

    在tinymce中使用css个script tinymce的编辑器中css和script默认是不起作用的.(编辑器主要面向写文章使用,考虑到xss攻击,默认是不启用的) 需要修改tinymce.js中 ...

  10. git--客户端管理工具初步使用

    说点废话哈 小白一枚, 今年3月份进入自己的第一家公司, 开始成为前端中的一份子,好在公司里有位和我一同进来的一位老哥带着我,从老哥身上学到的知识不多,(因为和老哥只相处工作了三个月,因为家里的事情, ...