c#第二章上机题1-4------MyBank

这是一个用C#编写的MyBank模拟银行系统,包括User类和Bank类。User类包含账户名、密码、身份证号和余额等属性,以及取款、存款方法。Bank类则用于初始化账户、显示账户信息、提供菜单交互等功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

namespace MyBank
{
    /// <summary>
    /// 帐户类
    /// </summary>
    public class User
    {
        #region 成员变量
        /// <summary>
        /// 帐户姓名
        /// </summary>
        public string _name;

        /// <summary>
        /// 密码
        /// </summary>
        public string _password;

        /// <summary>
        /// 身份证号
        /// </summary>
        public string _identityNum;

        /// <summary>
        /// 帐户余额
        /// </summary>
        public double _balance;

        /// <summary>
        /// 帐户
        /// </summary>
        public string _account;
        #endregion

        #region 取款
        /// <summary>
        /// 取款操作
        /// </summary>
        /// <param name="money">要取的金额</param>
        /// <returns>返回余额,输入有误返回-1</returns>
        public double MinusMoney(double money)
        {
            if (money > 0)
            {
                if (money <= _balance)
                {
                    _balance -= money;
                    return _balance;
                }
                else
                {
                    return -1;
                }

            }
            else
            {
                return -1;
            }
        }
        #endregion

        #region 存款
        /// <summary>
        /// 存款
        /// </summary>
        /// <param name="money">存款金额</param>
        public double SaveMoney(double money)
        {
            if (money > 0)
            {

                _balance += money;
                return _balance;
            }
            else
            {
                return -1;
            }
        }
        #endregion
    }
}












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

namespace MyBank
{
    public class Bank
    {
        User user = new User();  //实例化User对象并赋值

        User[] _userGroup = new User[3];

        const string MESSAGE = "操作成功!";

        #region 初始化帐户
        /// <summary>
        /// 初始化三个帐户
        /// </summary>
        public void Initial()
        {
            _userGroup[0] = new User();
            _userGroup[0]._account = "179708064356";
            _userGroup[0]._name = "王丽丽";
            _userGroup[0]._password = "1234";
            _userGroup[0]._identityNum = "210050619890808185";
            _userGroup[0]._balance = 1000;

            _userGroup[1] = new User();
            _userGroup[1]._account = "179708064359";
            _userGroup[1]._name = "张颖颖";
            _userGroup[1]._password = "4321";
            _userGroup[1]._identityNum = "510010619891231127";
            _userGroup[1]._balance = 2000;

            _userGroup[2] = new User();
            _userGroup[2]._account = "179708064368";
            _userGroup[2]._name = "刘华";
            _userGroup[2]._password = "4567";
            _userGroup[2]._identityNum = "410207198904051271";
            _userGroup[2]._balance = 8000;
        }
        #endregion

        #region 显示所有帐户信息
        /// <summary>
        /// 显示所有帐户的姓名
        /// </summary>
        public void ShowAllUser()
        {
            foreach (User userItem in _userGroup)
            {
                Console.WriteLine("帐户姓名:" + userItem._name + " 帐号:" + userItem._account + " 存款余额:" + userItem._balance);
                //Console.WriteLine("帐户姓名:" + userItem._name);
            }
        }
        #endregion

        #region 显示菜单
        /// <summary>
        /// 显示菜单
        /// </summary>
        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":
                        CreateAccount();
                        continue;
                    case "2":
                        Deposit();
                        continue;
                    case "3":
                        WithDraw();
                        continue;
                    case "4":
                        continue;
                    case "5":
                        continue;
                    case "6":
                        continue;
                    case "0":
                        break;      //结束switch
                    default:
                        Console.WriteLine("输入无效!");
                        continue;
                }

                break;              //结束do-while循环
            } while (true);
        }
        #endregion

        #region 开户
        /// <summary>
        /// 开户
        /// </summary>
        public void CreateAccount()
        {
            //接受输入的数据
            Console.WriteLine("请输入帐户姓名");
            user._name = Console.ReadLine();
            user._account = "179708064356";
            Console.WriteLine("请输入帐户密码");
            user._password = Console.ReadLine();
            Console.WriteLine("请输入帐户身份证号");
            user._identityNum = Console.ReadLine();
            Console.WriteLine("请输入帐户存款金额");
            user._balance = double.Parse(Console.ReadLine());

            Console.WriteLine("帐号:{0},帐户姓名:{1},存款金额:{2} {3}", user._account, user._name, user._balance, MESSAGE);
            //Console.ReadLine();
        }
        #endregion

        #region 取款
        /// <summary>
        /// 取款
        /// </summary>
        public void WithDraw()
        {
            string account = "";             //帐号
            string pwd;                      //密码

            Console.WriteLine("请输入帐号:");
            account = Console.ReadLine();
            if (account.Length == 0)
            {
                Console.WriteLine("输入的帐号不正确!");
                return;
            }
            // 新增:在3个帐户中查找指定的帐户
            User user = CheckUserByAccount(account);
            if (user == null)
            {
                Console.WriteLine("输入的帐号不正确!");
                return;
            }


            //接收帐户密码,并验证
            Console.WriteLine("请输入帐户密码:");
            pwd = Console.ReadLine();

            if (user._password != pwd)
            {
                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);
            }
        }
        #endregion
   

        #region 存款
        /// <summary>
        /// 存款
        /// </summary>
        public void Deposit()
        {
            string account = "";               //账号
            double money = 0;                //存款金额

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


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

            if (user.SaveMoney(money) > 0)
            {
                Console.WriteLine(MESSAGE + "当前余额:" + user._balance);
            }
            else
            {
                Console.WriteLine("存款失败!");
            }

        }
        #endregion

        #region 判断用户是否存在
        /// <summary>
        /// 通过帐号判断用户是否存在
        /// </summary>
        /// <param name="account">账号111</param>
        /// <returns>存在返回user对象,不存在返回null</returns>
        private User CheckUserByAccount(string account)
        {
            foreach (User user in _userGroup)
            {
                if (user._account == account)
                {
                    return user;//账号111  name  password  yue  shenfenz
                }
            }
            return null;
        }
        #endregion
    }
}








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

namespace MyBank
{
    class Program
    {
        static void Main(string[] args)
        {
            
            Bank myBank = new Bank();

            //开户
            //myBank.CreateAccount();

            //初始化数据
            myBank.Initial();

            Console.WriteLine("初始化帐户信息成功!");
            myBank.ShowAllUser();

            //菜单
            myBank.ShowCustomMenu();

            //取款
            //myBank.WithDraw();

            //显示所有帐户
            //myBank.ShowAllUser();

            Console.ReadLine();
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值