c#第三章升级属性MyBank

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_36074113/article/details/53130540
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;


namespace ConsoleApplication2
{
    class User
    {


        private string _name;
        public string Name
        {
            get { return _name; }
            set { _name = value; }
        }
        private string _password; 
        public string Password
            {
                get { return _password; }
                set { _password = value; }
        }
        private string _id;
        public string Id
            {
                get { return _id; }
                set { _id = value; }
        }
        private string _account;
        public string Account
            {
                get { return _account; }
                set { _account = value; }
        }
        private double _balance;
        public double Balance
        {
            get { return _balance; }
            set { _balance = value; }
        }
       
       
        
        
       
        
    //取款操作
    public double MinusMoney(double money)
    {
    if(money>0)
    {


       if(money<=_balance)
       {
          _balance -=money;
          return _balance;
       }
        else{
            return -1;
         }


    }  
    else{
       return -1;
    }
   }


        //存款操作
    public double SaveMoney(double money)
    {
        if (money > 0)
        {
            _balance += money;
            return _balance;
        }
        else
        {
            return -1;
        }
    }
}
}




using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;


namespace ConsoleApplication2
{
    class Bank
    {
        User user = new User();


        User[] _userGroup = new User[3];


        //初始账户
        public void Initial()
        {
            _userGroup[0] = new User();
            _userGroup[0].Account = "179708064356";
            _userGroup[0].Name = "王丽丽";
            _userGroup[0].Password = "1234";
            _userGroup[0].Id = "210050619890808185";
            _userGroup[0].Balance = 10000;


            _userGroup[1] = new User();
            _userGroup[1].Account = "179708064357";
            _userGroup[1].Name = "张";
            _userGroup[1].Password = "2345";
            _userGroup[1].Id = "210050619890808186";
            _userGroup[1].Balance = 4000;


            _userGroup[2] = new User();
            _userGroup[2].Account = "179708064358";
            _userGroup[2].Name = "刘华";
            _userGroup[2].Password = "6789";
            _userGroup[2].Id = "210050619890808187";
            _userGroup[2].Balance = 8000;


        }


        //显示所有账户
        public void ShowAllUser()
        {
            foreach (User item in _userGroup)
            {
                Console.WriteLine("账户姓名:"+item.Name+"账户:"+item.Account+"存款余额:"+item.Balance+"密码:"+item.Password+"身份证号:"+item.Id);
            }
        }


        //开户
        public void CreatAccount()
        {
            
            user.Account = "179708064356";
            Console.WriteLine("请输入用户名:");
            user.Name = Console.ReadLine();
            Console.WriteLine("请输入用户密码:");
            user.Password = Console.ReadLine();
            Console.WriteLine("请输入用户身份证:");
            user.Id = Console.ReadLine();
            Console.WriteLine("请输入用户存款金额:");
            user.Balance =double.Parse( Console.ReadLine());
            Console.WriteLine("账户:{0},用户名{1},存款金额:{2}创建成功!", user.Account, user.Name, user.Balance);
            
        }


        //判断账户
          private User CheckUserByAccount(string account)  
        {  
            foreach (User user in _userGroup)  
            {  
                if (user.Account == account)  
                {  
                    return user;  
                }  
            }  
            return null;  
        }


          private User CheckUser(string account, string pwd)
          {


              
              foreach (User user in _userGroup)
              {
                  if (user.Account == account && user.Password == pwd)
                  {


                      return user;
                  }
              }
              return null;
          }


        //存款
        public void Deposit()
        {
            string account = "";
            double money = 0;


            Console.WriteLine("请输入账号:");
            account = Console.ReadLine();
            Console.WriteLine("请输入存入金额:");
            money = double.Parse(Console.ReadLine());


            User user=CheckUserByAccount(account);
            if (user == null)
            {
                Console.WriteLine("您输入的账号不存在!");
            }


            if (user.SaveMoney(money) > 0)
            {
                Console.WriteLine( "操作成功,当前余额:" + user.Balance);
            }
            else
            {
                Console.WriteLine("存款失败!");
            }


        }  


        //取款
        public void WithDraw() {


            string account = "";
            string pwd;
            Console.WriteLine("请输入账号:");
            account = Console.ReadLine();
            Console.WriteLine("请输入账户密码:");
            pwd = Console.ReadLine();


            User user = CheckUser(account,pwd);
            if (user == null)
            {
                Console.WriteLine("输入的帐号不正确!");
                return;
            }  
            
           
            Console.WriteLine("请输入取款余额:");
            double money = double.Parse(Console.ReadLine());
            double result = user.MinusMoney(money);
            if (result == -1)
            {
                Console.WriteLine("取款失败");
            }
            else
            {
                Console.WriteLine("取款成功!当前余额:" + result);
            }
        }


        //转账


        public void InputTransferData()
        {
            Console.WriteLine("请输入转出账号:");
            string fromAccount = Console.ReadLine();
            Console.WriteLine("请输入转出账户密码:");
            string fromPwd = Console.ReadLine();
            Console.WriteLine("请输入转入账号:");
            string toAccount = Console.ReadLine();
            Console.WriteLine("请输入转账金额:");
            double money =double.Parse( Console.ReadLine());
            double fBalance = 0, tBalance = 0;


           
            //执行转账
            int i = Transfer(fromAccount, fromPwd, toAccount, money,ref fBalance,ref tBalance);
            if (i == 1)
            {
                Console.WriteLine("转账成功,转出账号{0}余额为:{1},转入账号{2}余额为:{3}",fromAccount,fBalance,toAccount,tBalance);
            }
            else if (i == -1)
            {
                 Console.WriteLine("转出账户的账号或密码输入错误");
            }
            else if (i == -2)
            {
                Console.WriteLine("转入账号不正确");
            }
            else if (i == -3)
            {
                Console.WriteLine("转账操作失败");
            }
        }
          private int Transfer( string fAccount,string fPwd,string tAccount,double money,ref double fBalance,ref double tBalance)
            {
              User userfrom=CheckUser(fAccount, fPwd);
              if (userfrom == null)
              {
                  return -1;
              }
              User userto = CheckUserByAccount(tAccount);
              if (userto == null)
              {
                  return -2;
              }
              if (userfrom.MinusMoney(money) == -1)
              {
                  return -3;
              }
              fBalance = userfrom.Balance;
              if (userfrom.SaveMoney(money) == -1)
              {
                  return -3;
              }
              tBalance = userto.Balance;
              return 1;
            }


          //查询余额
          public void ShowBalance()
          {
              Console.WriteLine("请输入账号:");
              string account = Console.ReadLine();
              Console.WriteLine("请输入密码:");
              string pwd = Console.ReadLine();


              User user = CheckUser(account, pwd);


              if (user == null)
              {
                  Console.WriteLine("当前账号不存在!");
              }
              else
              {
                  Console.WriteLine("账户余额:" + user.Balance.ToString("0.00"));
              }
          }




          //修改密码
        public void xiuPwd () 
        {  
            string accountName = "";  
            string password = "";  
            Console.WriteLine("请输入账号:");  
            accountName = Console.ReadLine();  
            Console.WriteLine("请输入原密码:");  
            password = Console.ReadLine();  
  
            Console.WriteLine("请输入新密码:");  
            string newPwd = Console.ReadLine();  
            Console.WriteLine("请再次输入新密码:");  
            string newPwdConfirm = Console.ReadLine();  
  
            if (CheckPwd(accountName, password, newPwd, newPwdConfirm))  
            {  
                Console.WriteLine("账户密码修改成功!");  
            }  
            else  
            {  
                Console.WriteLine("账户密码修改失败!");  
            }  
        }  
        private bool CheckPwd(string accountName, string password, string newPwd, string newPwdConfirm)  
        {  
            User user = CheckUser(accountName, password);  
  
            if (user == null)  
            {  
                Console.WriteLine("当前账户不存在!");  
                return false;
            }


            if (newPwd != newPwdConfirm)
            {
                Console.WriteLine("两次密码输入不一致!");
                return false;
            }
            else
            {
                user.Password = newPwd;
                return true;
            }


        }  






        //显示菜单
        public void ShowCustomMenu()
        {
            string option = "";
            do
            {
                Console.WriteLine("================欢迎使用自动银行服务==================");
                Console.WriteLine("1:开户 2:存款 3:取款 4:转账 5:查询余额 6:修改密码 0:退出");
                Console.WriteLine("=======================================================");
                option = Console.ReadLine();
                switch (option)
                {
                    case "1":    //开户
                        CreatAccount();
                        continue;
                    case "2":    //存款  
                       Deposit(); 
                        continue;
                    case "3":    //取款
                       WithDraw();
                       continue;
                    case "4":    //转账
                       InputTransferData();
                        continue;
                    case "5":    //查询余额
                        ShowBalance();
                        continue;
                    case "6":    //修改密码
                        xiuPwd();
                        continue;
                    case "0":
                        break;   //退出
                    default:
                        Console.WriteLine("输入无效");
                        continue;
                }
                break;
            } while (true);
        }


    }
}


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;


namespace ConsoleApplication2
{
    class Program
    {
        static void Main(string[] args)
        {
            Bank bank = new Bank();
            bank.Initial();
            Console.WriteLine("初始化帐户信息成功!");  
            //bank.CreatAccount();
            bank.ShowAllUser();
            bank.ShowCustomMenu();
            Console.ReadLine();
                
        }
    }
}



展开阅读全文

没有更多推荐了,返回首页