MyBank(自助银行)系统

光阴似箭,岁月如梭。

从开始学Java到现在学C#已快四个月了,我们学的东西越来越多了。但是虽说学到现在,都不知道有什么用?没地方表现啊。

那么今天我就来给大家说说说这些东西的用处吧。

就拿MyBank系统来讲解吧,望大家好好看将会得到不少的收获哦。

那么这个MyBank系统我们应该怎样来写呢?请看看下面的详细解答。

首先先看一些部分功能的效果图

现在关键时刻到啦,那就是怎么写呢?请看看下面代码及方法。

步骤:

1.首先要创一个数组:代码如下:

Card[] cards = new Card[100]; 

2:初始化卡类:

public void InitialData() 

{ //01.准备一个卡对象 Card card1=new Card(); 

card1.CardNo = "025"; card1.CardOwner = "小英"

card1.CardPwd = "100"; 8 card1.Balance = 0.0

//02.将卡对象赋值给数组第一项  cards[0] = card1; //创建第2个卡对象 

Card card2=new Card();  card2.CardNo = "205" card2.CardOwner = "小颖";

card2.CardPwd = "200" card2.Balance = 500000000; cards[1] = card2;

 3.开户

 Console.WriteLine("请输入卡号:");

  string cardNo = Console.ReadLine();

  Console.WriteLine("请输入密码:"); 

string cardPwd = Console.ReadLine();

 Console.WriteLine("请输入用户名:"); 

string cardOwner = Console.ReadLine(); 

Console.WriteLine("请输入开户金额:"); 

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

//先将四个零散的属性装配成一个Card对象 Card card=new Card(); 

card.CardNo = cardNo;  card.CardPwd = cardPwd;  card.CardOwner = cardOwner; 

card.Balance = balance;  //01.将card对象赋值给数组第一个为null的项目 

for (int i = 0; i < cards.Length; i++) if (cards[i]==null

{ //我就将card赋值给cards[i]  cards[i] = card; 

Console.WriteLine("开户成功");  break } } Console.WriteLine("==================="); 

Welcome();  //输出所有账户的持卡人,以及余额  public void PrintCustomerInfo()  foreach (Card item in cards)

//一个item就是一张卡  if (item!=null

Console.WriteLine("用户名{0}\t余额{1}", item.CardOwner, item.Balance); 

}

 

 4.存款

Console.WriteLine("请输入卡号:"); string cardno = Console.ReadLine();

bool flag = false; //如何判断对方卡号存在

foreach (Card item in cards) { if (item!=null)

{ if (item.CardNo.Equals(cardno))//卡号存在

{ //请输入金额 Console.WriteLine("请输入存款金额:");

int money = int.Parse(Console.ReadLine()); item.Balance += money;

Console.WriteLine("存款成功"); Console.WriteLine("余额:{0}",item.Balance); flag = true; break;

}

 5.取款

 

bool flag = false;//默认没有该卡
       foreach (Card item in cards)
 {
       if (item!=null)
 {
 if (item.CardNo.Equals(account))//证明卡存在   003   001
 {
  //提示用户输入密码
 Console.WriteLine("请输入密码:");
  string pwd = Console.ReadLine();
     if (item.CardPwd.Equals(pwd))
   {
  //代码执行到这里,证明用户名和密码均正确
   Console.WriteLine("请输入取款金额:");
      int money = int.Parse(Console.ReadLine());
 if (money < item.Balance)
       {
    item.Balance = item.Balance - money;
               Console.WriteLine("取款成功,用户名是{0}的账户余额是{1}", item.CardOwner, item.Balance);
           }
   else          {
         Console.WriteLine("余额不足");
               }
         }
  else
 { 

 

 6.转账

 

 bool outCardFlag = false;//默认转入卡不存在
           int type = 0;
           foreach (Card card in cards)
           {
     if (card!=null)
               {
 if (card.CardNo.Equals(outCardNo)) //卡号一致
           {
          flag = true;
                       //判定密码是否一致
       if (card.CardPwd.Equals(outCardPwd)) //密码一致
                       {
    //用户名 密码均正确,可以执行后续内容
      Console.WriteLine("请输入转入卡卡号");
        string inCardNo = Console.ReadLine();
     #region 内层循环,转入卡
       foreach (Card card1 in cards)
  {
      if (card1 != null)
        {
    if (card1.CardNo.Equals(inCardNo)) //转入卡存在
         {
       type = 1;
           //存在,可以提示输入转账金额                             
          Console.WriteLine("请输入转账金额");
       int money = Convert.ToInt32(Console.ReadLine());
             if (money <= card.Balance) //合法
  {
        while (money % 100 != 0) //不是面值100的
        {
      Console.WriteLine("您输入的不合法");
           money = Convert.ToInt32(Console.ReadLine());
        }

 

 这上面几个步骤就是写这个MyBank系统的关键。大家都得了什么收获?

本人能力有限,如果有不足之处,望大家给个建议哦,在这就先谢谢大家了

 

posted on 2015-10-25 19:20  放飞理想  阅读(2646)  评论(6编辑  收藏  举报

导航