银行

来源:互联网 发布:2016黑马程序员课程表 编辑:程序博客网 时间:2024/04/26 01:56
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace ICBC{    class Program    {        static void Main(string[] args)        {            Bank b = new Bank();            b.c();            Console.ReadLine();        }    }}

 
 
 
 
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace ICBC{    class User    {        private String name;  //姓名        private int id;   //账号        private int pwd;   //密码        private double money;  //余额        public double Money        {            get { return money; }            set { money = value; }        }        public String Name        {            get { return name; }            set { name = value; }                    }        public int Pwd        {            get { return pwd; }            set { pwd = value; }        }        public int Id        {            get { return id; }            set            {                id = value;                }        }        public void ShowInfo()        {                Console.WriteLine("账户{0},用户名{1},存款余额{2},", Id, name, money);        }         public void ShowAll(User[] user)        {            foreach (User item in user)            {                if (item != null)                {                    item.ShowInfo();                }                else                {                    break;                }            }        }    }}

 
 
 
 
 
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace ICBC{    class Bank    {        User[] user = new User[10];        User users = new User();        #region 菜单        public void test()        {            Console.WriteLine("-----------欢迎使用自动银行服务----------");            Console.WriteLine("0:开户 1:存款 2:取款 3:转账 4:查询余额 5:修改密码 6:退出");            int i = int.Parse(Console.ReadLine());            xz(i);        }        public void xz(int i)        {            switch (i)            {                case 0:                    kz();                    test();                    break;                case 1:                    cz();                    test();                    break;                case 2:                    qz();                    test();                    break;                case 3:                    zz();                    test();                    break;                case 4:                    cx();                    test();                    break;                case 5:                    xg();                    test();                    break;                case 6:                    Console.WriteLine("退出成功");                    break;            }        }        #endregion        #region 初始化        public void c()        {            user[0] = new User();            user[0].Name = "张三";            user[0].Id = 1001;            user[0].Money = 10000;            user[0].Pwd = 123;            user[1] = new User();            user[1].Name = "李四";            user[1].Id = 1002;            user[1].Money = 10000;            user[1].Pwd = 123;            user[2] = new User();            user[2].Name = "王五";            user[2].Id = 1003;            user[2].Money = 10000;            user[2].Pwd = 123;            users.ShowAll(user);            test();        }        #endregion        #region 开户        public void kz()        {            for (int i = 0; i < user.Length; i++)            {                if (user[i] == null)                {                    user[i] = new User();                    Console.WriteLine("请输入用户名");                    user[i].Name = Console.ReadLine();                    if (user[i] == null)                    {                        user[i] = null;                        Console.WriteLine("用户名不可以为空");                        break;                    }                    Console.WriteLine("请输入密码");                    user[i].Pwd = int.Parse(Console.ReadLine());                    if (user[i].Pwd == 0)                    {                        user[i] = null;                        Console.WriteLine("密码不可以为空");                        break;                    }                    Console.WriteLine("请输入存款金额 至少10元");                    user[i].Money = int.Parse(Console.ReadLine());                    if (user[i].Money < 10)                    {                        Console.WriteLine("请至少存入10元");                        user[i] = null;                        break;                    }                    user[i].Id = 1001 + i;                    Console.WriteLine("创建成功");                    user[i].ShowInfo();                    break;                }            }        }        #endregion        #region 存款        public void cz()        {            for (int u = 0; u < user.Length; u++)            {                Console.WriteLine("请输入存款账户");                int iid = int.Parse(Console.ReadLine());                int a = Pdzh(iid);                if (a != -1)                {                    Console.WriteLine("请输入密码");                    int pwd = int.Parse(Console.ReadLine());                    bool o = true;                    Xh(ref pwd, ref o,user[a]);                    int y = Pdmm(pwd, user[a]);                    if (o==false) {                        break;                    }                    if (y != 0)                    {                        Console.WriteLine("请输入存款金额");                        int c = int.Parse(Console.ReadLine());                        if (c > 0)                        {                            user[a].Money += c;                            user[a].ShowInfo();                            break;                        }                        else                        {                            Console.WriteLine("请存大于0的金额");                        }                    }                    else                    {                              }                }                else                {                    Console.WriteLine("不存在此账户请重新输入");                }            }        }        #endregion        #region 取款        public void qz()        {            for (int i = 0; i < user.Length; i++)            {                Console.WriteLine("请输入账号");                int iid = int.Parse(Console.ReadLine());                int a = Pdzh(iid);                if (a != -1)                {                    Console.WriteLine("请输入密码");                    int pwds = int.Parse(Console.ReadLine());                    bool o=true;                    Xh(ref pwds, ref o, user[a]);                                 int b = Pdmm(pwds, user[a]);                    if (o == false)                    {                        break;                    }                    if (b != 0)                    {                        Console.WriteLine("请输入取款金额");                        int q = int.Parse(Console.ReadLine());                        int p = Pdye(q, user[a]);                        if (p != 0)                        {                            user[a].Money -= q;                            Console.WriteLine("取款成功");                            user[a].ShowInfo();                            break;                        }                        else                        {                            Console.WriteLine("余额不足");                        }                    }                    else                    {                        Console.WriteLine("密码错误");                    }                }                else                {                    Console.WriteLine("不存在此账户");                }            }        }        #endregion        #region 转账        public void zz()        {            for (int i = 0; i < user.Length; i++)            {                Console.WriteLine("请输入转出的账号");                int iid = int.Parse(Console.ReadLine());                int a = Pdzh(iid);                if (a != -1)                {                    Console.WriteLine("请输入密码");                    int pwd = int.Parse(Console.ReadLine());                    bool o = true;                    Xh(ref pwd, ref o, user[a]);                    int p = Pdmm(pwd, user[a]);                    if (o == false)                    {                        break;                    }                    if (p != 0)                    {                        Console.WriteLine("请输入转入的账号");                        int iids = int.Parse(Console.ReadLine());                        int aa = Pdzh(iids);                        if (aa != -1)                        {                            Console.WriteLine("请输入金额");                            int m = int.Parse(Console.ReadLine());                            int w = Pdye(m, user[a]);                            if (w != 0)                            {                                user[a].Money -= m;                                user[aa].Money += m;                                Console.WriteLine("转账成功");                                user[a].ShowInfo();                                user[aa].ShowInfo();                                break;                            }                            else                            {                                Console.WriteLine("余额不足");                            }                        }                        else                        {                            Console.WriteLine("此账户不存在请重新输入");                        }                    }                    else                    {                        Console.WriteLine("密码错误请重新输入");                    }                }                else                {                    Console.WriteLine("此账户不存在请重新输入");                }            }        }        #endregion        #region 查询        public void cx()        {            for (int i = 0; i < user.Length; i++)            {                Console.WriteLine("请输入账号");                int iid = int.Parse(Console.ReadLine());                int a = Pdzh(iid);                if (a != -1)                {                    Console.WriteLine("请输入密码");                    int pwds = int.Parse(Console.ReadLine());                    bool o = true;                    Xh(ref pwds, ref o, user[a]);                    int b = Pdmm(pwds, user[a]);                    if (o == false)                    {                        break;                    }                    if (b != 0)                    {                        user[a].ShowInfo();                        break;                    }                    else                    {                        Console.WriteLine("密码错误");                    }                }                else                {                    Console.WriteLine("账户不存在请重新输入");                }            }        }        #endregion        #region 修改        public void xg()        {            for (int i = 0; i < user.Length; i++)            {                Console.WriteLine("请输入要修改的账户");                int iid = int.Parse(Console.ReadLine());                int a = Pdzh(iid);                if (a != -1)                {                    Console.WriteLine("请输入密码");                    int pwds = int.Parse(Console.ReadLine());                    bool o = true;                    Xh(ref pwds, ref o, user[a]);                    int b = Pdmm(pwds, user[a]);                    if (o == false)                    {                        break;                    }                    if (b != 0)                    {                        Console.WriteLine("请输入要修改的密码");                        int pwdd = int.Parse(Console.ReadLine());                        Console.WriteLine("请再次输入要修改的密码");                        int pwddd = int.Parse(Console.ReadLine());                        if (pwdd == pwddd)                        {                            user[a].Pwd = pwdd;                        }                        Console.WriteLine("修改成功");                        break;                    }                    else                    {                        Console.WriteLine("密码错误");                    }                }                else                {                    Console.WriteLine("此账户不存在请重新输入");                }            }        }        #endregion        #region 判断账号        public int Pdzh(int iid)        {            int a = -1;            for (int i = 0; i < user.Length; i++)            {                if (user[i] == null)                {                    break;                }                if (user[i] != null && iid == user[i].Id)                {                    a = i;                    break;                }            }            return a;        }        #endregion        #region 判断密码        public int Pdmm(int pwd, User u)        {            int i = 0;            if (pwd == u.Pwd)            {                i = 1;            }            return i;        }        #endregion        #region 判断余额        public int Pdye(int q, User u)        {            int i = 0;            if (q <= u.Money)            {                i = 1;            }            return i;        }        #endregion        #region 循环        public void Xh(ref int pwd,ref bool o, User u)        {            while (pwd != u.Pwd)            {                Console.WriteLine("密码错误 输入1重新输入 输入2返回主页面");                int i = int.Parse(Console.ReadLine());                if (i == 1)                {                    Console.WriteLine("请重新输入");                    pwd = int.Parse(Console.ReadLine());                }                else if(i==2)                {                    o = false;                    break;                }            }        #endregion        }    }}