using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace autoBank { class Person { public string name; public double money; public string idNumber; public string number; } }
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace autoBank { class Program { static void Main(string[] args) { Bank demo = new Bank(); demo.CreatAccount(); demo.Theme(); Console.ReadLine(); } } }
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace autoBank { class Bank { Person[] user = new Person[30]; public void CreatAccount() { bool result; for(int i=0;i<user.Length;i++) { if(user[i]==null) { user[i]=new Person(); Console.WriteLine("请输入用户名:"); user[i].name = Console.ReadLine(); user[i].number = user[i].name; do{ Console.WriteLine("请输入密码"); user[i].password = Console.ReadLine(); Console.WriteLine("请再次输入密码:"); string passwords = Console.ReadLine(); result=IsSame(user[i].password,passwords); if(!result) { Console.WriteLine("两次密码不一致,重新输入:"); } }while(!result); Console.WriteLine("请输入身份证号:"); user[i].idNumber = Console.ReadLine(); Console.WriteLine("请输入存款金额:"); user[i].money = int.Parse(Console.ReadLine()); Console.WriteLine("账户:{0},用户名:{1},存款金额:{2},创建成功!", user[i].number, user[i].name, user[i].money); break; } } } private bool IsSame(string password,string passwords) { if (password==passwords) { return true; } return false; } public void WithDraw() { Console.WriteLine("请输入账号:"); string account = Console.ReadLine(); Console.WriteLine("请输入密码"); string pwd = Console.ReadLine(); Person a = checkOutAccount(account, pwd); if (a != null) { Console.WriteLine("请输入取款金额"); double outmoney = double.Parse(Console.ReadLine()); double result = UserMoney(outmoney, a); if (result == -1) { Console.WriteLine("取款失败"); } else { Console.WriteLine("取款成功,当前金额{0}", a.money); } } else { Console.WriteLine("账号或密码不存在"); } } private double UserMoney(double outmoney,Person people05) { if (outmoney > 0) { if (outmoney <= people05.money) { people05.money -= outmoney; return people05.money; } else { return -1; } } else { return -1; } } public void Show() { Console.WriteLine("请输入账号:"); string account = Console.ReadLine(); Console.WriteLine("请输入密码:"); string password = Console.ReadLine(); Person checkIn = checkOutAccount(account, password); if (checkIn == null) { Console.WriteLine("账号或密码错误"); } else { Console.WriteLine("账户余额是{0}", string.Format("{0:F3}", checkIn.money.ToString())); } } public void Theme() { Console.WriteLine("=================欢迎使用自动银行服务============================"); Console.WriteLine("1.存款2.取款3.转账4.查询余额5.退出6.修改密码 7.继续注册账户"); Console.WriteLine("================================================================"); do { Console.WriteLine("请选择:"); int choice = int.Parse(Console.ReadLine()); switch (choice) { case 1: AddMoney(); continue; case 2: WithDraw(); continue; case 3: Transfer(); continue; case 4: Show(); continue; case 5: break; case 6: Change(); continue; case 7: CreatAccount(); continue; default: Console.WriteLine("输入无效"); continue; } break; } while (true); } public void Transfer() { Console.WriteLine("请输入转出账号:"); string outAccount = Console.ReadLine(); Console.WriteLine("请输入转出账户密码"); string outPassword = Console.ReadLine(); Console.WriteLine("请输入转入账号"); string inAccount = Console.ReadLine(); Console.WriteLine("请输入转账金额"); double tranMoney = double.Parse(Console.ReadLine()); double outMoney = 0, inMoney = 0; int result = Back(outAccount, outPassword, inAccount, tranMoney, ref outMoney, ref inMoney); if (result == 1) { Console.WriteLine("转账成功,转出账号{0}余额为:{1},转入账号{2}余额为:{3}", outAccount, outMoney, inAccount, inMoney); } else if (result == -1) { Console.WriteLine("转出账户账号或密码错误"); } else if (result == -2) { Console.WriteLine("转入账号不正确"); } else if (result == -3) { Console.WriteLine("转账操作失败"); } } public void AddMoney() { Console.WriteLine("请输入账号:"); string account = Console.ReadLine(); Person a = InAccount(account); if (a != null) { Console.WriteLine("请输入存款:"); int addMoney = int.Parse(Console.ReadLine()); a.money += addMoney; Console.WriteLine("存款成功:余额{0}", a.money); } else { Console.WriteLine("账号不存在"); } } public void Change() { Console.WriteLine("请输入账号:"); string isAccount = Console.ReadLine(); Console.WriteLine("请输入密码:"); string isPassword = Console.ReadLine(); Person c = AChange(isAccount, isPassword); if (c != null) { Console.WriteLine("请输入新密码:"); string password1 = Console.ReadLine(); Console.WriteLine("请再次输入密码:"); string password2 = Console.ReadLine(); if (PChange(password1, password2, ref c) == null) { Console.WriteLine("两次密码不一致"); } else { Console.WriteLine("密码修改成功"); } } else { Console.WriteLine("账号或密码错误"); } } private Person InAccount(string inAccount) { foreach (Person temp in user) { if (inAccount == temp.number) { return temp; } } return null; } private int Back(string outAccount, string outPassword, string inAccount, double tranMoney, ref double outMoney, ref double inMoney) { Person a = checkOutAccount(outAccount, outPassword); if (a == null) { return -1; } Person b = checkInAccount(inAccount, outAccount); if (b == null) { return -2; } outMoney = checkOutMoney(tranMoney, ref a); if (outMoney <= 0) { return -3; } inMoney = checkInMoney(ref b, tranMoney); if (inMoney < b.money) { return -3; } return 1; } private Person checkOutAccount(string outAccount, string outPassword) { foreach (Person temp in user) { if (outAccount == temp.number && outPassword == temp.password) { return temp; } } return null; } private Person checkInAccount(string inAccount, string outAccount) { foreach (Person temp in user) { if (inAccount == temp.number && outAccount != inAccount) { return temp; } } return null; } private double checkOutMoney(double tranMoney, ref Person people01) { if (people01 != null) { if (tranMoney <= people01.money) { people01.money -= tranMoney; return people01.money; } return people01.money; } return people01.money; } private double checkInMoney(ref Person people02, double tranMoney) { people02.money += tranMoney; return people02.money; } private Person AChange(string account, string oldPassword) { foreach (Person temp in user) { if (account == temp.number && oldPassword == temp.password) { return temp; } return null; } return null; } private string PChange(string num1, string num2, ref Person people03) { if (num1 == num2) { people03.password = num1; return people03.password; } return null; } } }