MyBank系统主要的构成部分有:银行账户的初始化,开户,存款,取款,转账,查询余额,修改密码这些操作。

===============================================================================

在开户的这个功能中,需要的信息如下:

开户信息包括:姓名,密码,身份证号,存款金额等……

用的方法是:

Console.WriteLine(“ ”);

  

接受用户信息 例如:接受密码我们可以用

 string psd = Console.WriteLine()

  

在存款的这个功能中,需要的信息如下:

存款信息包括:存款卡号 存款人的信息……

在取款的这个功能中,需要的信息如下:

思路:接受账号信息(密码,取款金额),还需要验证账户信息石村属实,密码是否正确。

其中的关键代码有:

                         bool *** = false;

                         foreach (***item in ***)

                    {

                        if (item != null)

                   {

                   if (item.kahao.Equals(account))

                   {

                       //代码执行到这里,证明有该卡号

                     Console.WriteLine("请输入取款金额");

                     double money = double.Parse(Console.ReadLine());

                           //判定用户取款金额是否小于等于余额

                    while (money > item.yumoney)

                   {

                        Console.WriteLine("余额不足,请重新输入取款金额");

                         money = double.Parse(Console.ReadLine());

                     }

                           //代码执行到这里,证明用户输入的金额合法,

                           //取款金额合法

                           item.yumoney -= money;

                           Console.WriteLine("取款成功");

                           Console.WriteLine("当前卡内余额{0}", item.yumoney);

                           break;
              }
             else { Console.WriteLine("密码错误");
               }
               }

  

这里需要注意的是要检验用户的卡是否属实!

   if (kh == false)

           {

               Console.WriteLine("没有该卡号");

           }

  

在取款的这个功能中,跟存款差不多。多的一步就是计算卡的余额状态。下面为大家展示一下较为关键部分的代码:

                     item.yumoney -= money;
toItem.yumoney += money;
Console.WriteLine("转账成功,您的余额为{0}",item.yumoney);
break;

在查询的这个功能中,下面为大家占时下代码,其实需要注意的就是核实信息:

 bool flag = false;
Console.WriteLine("请输入卡号");
string account = Console.ReadLine();
Console.WriteLine("请输入密码");
string pwd = Console.ReadLine();
foreach (Two item in twos)
{
if (item!=null)
{
if (item.kahao.Equals(account) && item.mima.Equals(pwd))
{
flag=true;
Console.WriteLine("用户名是{0}的账户余额是{1}", item.names, item.yumoney);
//break;
}
}
}
if (flag==false)
{
Console.WriteLine("账号有误,请从新输入");
}

在修改密码的这个功能中,只是要检验用户是否存在,下面为大家呈现一部分代码:

 Console.WriteLine("请输入账号:");
string no = Console.ReadLine(); for (int i = 0; i < twos.Length; i++)
{
if (twos[i] != null)
{
if (twos[i].kahao == no)
{
Console.WriteLine("请输入原密码:");
string mima1 = Console.ReadLine();
for (int j = 0; j < 3; j++)
{
if (twos[i].mima == mima1)
{
Console.WriteLine("请输入新密码:");
xinmima = Console.ReadLine();
Console.WriteLine("请再次输入新密码:");
if (xinmima == Console.ReadLine())
{
twos[i].mima = xinmima;
Console.WriteLine("账户密码修改成功!!");
break;
} }
} break;
}
}
if (twos[i].kahao != no)
{ Console.WriteLine("您输入的账号不存在!");
break; }
} }

 最后整个完美的程序做完了,当然少不了美美的结尾部分,代码比较简单,就不一一呈现了。

整个Bank项目写完后,总结其实也没什么秘诀。就是当我们在写一个项目时,第一件事情并不是赶忙去敲代码,而是应该先列个草稿,也就是所谓的框架。当我们把框架打好,就可以一一往里面去填写每一块的内容,把每块内容调整好后应该再去思考会不会有什么遗漏之处,查漏补缺。经过多次揣摩,发现自己的草稿已经完美无缺后,我们就可以去敲代码了。

先生们女士们,当你们看完我的文章以后如果觉得还是有不懂的地方都可以对我提问。当然,如果你们觉得我的文章感觉不错,也要投我一票。我很快就会给你们带来下一次的惊喜,surprise~

MyBank后感的更多相关文章

  1. 开发之道——读《移山之道——VSTS开发之道》后感

    开发之道——读<移山之道——VSTS开发之道>后感 <移山之道——VSTS开发之道>(下简称<移山之道>)是邹欣老师的另一本书.相传很有名的<构建之法> ...

  2. 《阿里巴巴编码规范(JAVA)》认证考后感

    2018.02.15除夕拿下了阿里云认证的<阿里巴巴编码规范(JAVA)>认证,写下这篇考后感,记录考试中碰到的一些考点. 先总体介绍下这个考试规则,50道选择题,大部分是多选题,有少部分 ...

  3. <<甄嬛传>>后感

    2020年疫情和休假的时间里,刷了几部喜欢的电视剧,从<好先生>孙红雷和车晓的现代剧,到刷了至少6遍的<新三国>后,一直想了解司马懿和曹丕,接着就到了<大军师司马懿之军师 ...

  4. 2016-Beijing-GDG-DevFest大会参后感

    前话 15年初的时候参加过一次GDG线下举办的一次分享会,因为当时是实习的公司提供的活动场地.有了那次机会后,就一直关注了GDG的活动. 参加的目的最重要的是本次大会是比较盛大的一场技术大会,在经过一 ...

  5. 几个 Ceph 性能优化的新方法和思路(2015 SH Ceph Day 参后感)

    一周前,由 Intel 与 Redhat 在10月18日联合举办了 Shanghai Ceph Day.在这次会议上,多位专家做了十几场非常精彩的演讲.本文就这些演讲中提到的 Ceph性能优化方面的知 ...

  6. 2014-7 Andrew Ng 自动化所报告听后感

    原文:http://blog.sina.com.cn/s/blog_593af2a70102uwhl.html 一早出发,8点20就赶到现场, 人越聚越多,Ng提前几分钟到达现场,掌声一片.    N ...

  7. 读《你不知道的JavaScript(上卷)》后感-作用域闭包(二)

    github原文 一. 序言 最近我在读一本书:<你不知道的JavaScript>,这书分为上中卷,内容非常丰富,认真细读,能学到非常多JavaScript的知识点,希望广大的前端同胞们, ...

  8. 读《你不知道的JavaScript(上卷)》后感-浅谈JavaScript作用域(一)

    原文 一. 序言 最近我在读一本书:<你不知道的JavaScript>,这书分为上中卷,内容非常丰富,认真细读,能学到非常多JavaScript的知识点,希望广大的前端同胞们,也入手看看这 ...

  9. CCF后感

    3.21,昨天天梯训练赛完后查CCF成绩,300!小开心~~~我是合格的程序员啦~~~ 问题:第四题,如果输入数据有对于1本身来说 S 1 ,R 1有这个我就gg了,考完一直在担心这个反复看题也看不出 ...

随机推荐

  1. 使用eclipse制作war包方法 web项目打包到tomcat

    打开eclipse在左侧右击项目名选择“Export”   在导出画面点击 “Web”->“WAR file”点击“Next”   点击“Browse…”选择文件的导出位置,Target run ...

  2. 更新系统时间 & 查看/修改LINUX时区和时间

    一.时区0. date '+%Y%M%D' 按照格式显示当前日期,结果如下: date "+%Y-%m-%d %H:%M:%S" 1. 查看当前时区 :[root@master ~ ...

  3. SEC6 - MySQL 查询语句--------------进阶2:条件查询

    # 进阶2:条件查询 /* 语法: select 查询列表 from 表名 where 筛选条件; 分类: 一.按照条件表达式筛选 条件运算符:> < = !=(等价于<>) ...

  4. < 备考CET6 - 替换词 >

    替换词 名词 结果 Result consequence 人 People, person citizen, individual 发展 Development advancement,progres ...

  5. 在Linux下将HTML文件转换成PDF文件

    今天要写一个上交的作业,本来是想用Office Word来写的,但是,我的Office貌似不能用了,但是,Linux下的LibreOffice写出的文档,在打印的时候是经常出现乱码的.所以,后来想到可 ...

  6. Python入门习题5.蒙特卡罗方法计算圆周率

    #CalPi.py from random import random from math import sqrt from time import clock DARTS = 10000000 hi ...

  7. vue 踩坑之组件传值

    Vue 报错[Vue warn]: Avoid mutating a prop directly since the value will be overwritten whenever the pa ...

  8. ssh - OpenSSH SSH 客户端 (远程登录程序)

    总览 (SYNOPSIS) ssh [-l login_name ] hostname | user@hostname [command ] ssh -words [-afgknqstvxACNTX1 ...

  9. smbsh - 允许用UNIX命令访问NT文件系统

    总览 smbsh 描述 此程序是Samba套件的一部分. smbsh允许你用UNIX命令诸如ls,egrep和rcp等来访问NT文件系统.必须用动态链接的shell以便使smbsh工作正常. 从命令提 ...

  10. Spring Cloud Contract简介

    转载:https://www.jianshu.com/p/e3277824a10a 和dummy service一样 Spring Cloud Contract是个啥? Spring Cloud Co ...