最近新學習了一個bank系統來和大家分享一下,新人求罩!
破索式之_鏈子槍_
廢話不多說了直接本主題
如果我們要寫出bank系統,就要先考慮這個問題:總共需要幾個類?
既然是銀行系統,那麼必不可少的就是銀行了, 這裡我們就需要一個1.銀行類
我們都知道去銀行辦理業務都是要有一張屬於你自己的卡 所以這裡就需要一個2.卡的類
有了這些類,我們在main方法裡進行調用這些就ok了,接下來我就帶大家一起來實現一個bank!
首先我們先來個卡的類,因為通篇下來都是要從這裡調用他們的初始賦值的;
1 class Card
2 {
3 private string cardNo;//卡號
4 private string cardOwner;//持卡人
5 private string cardPwd;//密碼
6 private double balance;//余額
7
8 public double Balance
9 {
10 get { return balance; }
11 set { balance = value; }
12 }
13 public string CardPwd
14 {
15 get { return cardPwd; }
16 set { cardPwd = value; }
17 }
18
19 public string CardOwner
20 {
21 get { return cardOwner; }
22 set { cardOwner = value; }
23 }
24
25 public string CardNo
26 {
27 get { return cardNo; }
28 set { cardNo = value; }
29 }
30
31 }
ok! 大家看上去是不是感覺很簡單呢? 其實接下來更加的簡單哦~
接下來就到了我們的bank模塊,大家都知道bank一般都是有好多功能的對吧?
那麼這些東東到底是怎麼實現的呢? 就讓我們一起來走進bank的真相吧!
那麼 大家所熟知的bank功能都有什麼呢?大致就是下面這些喽!
1.開戶 2.存款 3.取款 4.查詢余額 5.轉賬 6.修改密碼 7.退出 8.輸出所有賬戶的持卡人以及余額
對吧, 那麼我們也就按照步驟來一步步的實現bank中的每一項功能吧>>>>>>>>>>
//開戶模塊
1 Console.WriteLine("歡迎進入開戶模塊");
2 Console.WriteLine("請輸入卡號");
3 string cardNo = Console.ReadLine();
4 Console.WriteLine("請輸入密碼");
5 string cardPwd = Console.ReadLine();
6 Console.WriteLine("請輸入用戶名");
7 string cardOwner = Console.ReadLine();
8 Console.WriteLine("請輸入開戶後要存儲的金額");
9 double balance = double.Parse(Console.ReadLine());
10 //將bank裡的值重新賦給Card中
11 Card card = new Card();
12 card.CardNo = cardNo;
13 card.CardPwd = cardPwd;
14 card.CardOwner = cardOwner;
15 card.Balance = balance;
16
17 //將card對象賦值給數組第一個為null的項目
18 for (int i = 0; i < cards.Length; i++)
19 {
20 if (cards[i]==null)
21 {
22 cards[i] = card;
23 Console.WriteLine("開戶成功!");
24 break;
25 }
26 }
//存款模塊
1 Console.WriteLine("請輸入您的賬號");
2 string cardno = Console.ReadLine();
3 for (int i = 0; i < cards.Length; i++)
4 {
5 if (cards[i] != null && cards[i].CardNo == cardno)
6 {
7 flag = true;
8 Console.WriteLine("請輸入密碼");
9 string pwd = Console.ReadLine();
10 if (cards[i].CardPwd == pwd)
11 {
12 Console.WriteLine("恭喜您登陸成功!請輸入您要存款的金額:");
13 double GiveMoney = double.Parse(Console.ReadLine());
14 cards[i].Balance = cards[i].Balance + GiveMoney;
15 Console.WriteLine("恭喜您存款成功,您的當前余額為:{0}", cards[i].Balance);
16 break;
17 }
18 else
19 {
20 Console.WriteLine("您輸入的密碼有誤!");
21 break;
22 }
23 }
24 }
//取款模塊
1 Console.WriteLine("請輸入您的賬號");
2 string cardno = Console.ReadLine();
3 for (int i = 0; i < cards.Length; i++)
4 {
5 if (cards[i] != null && cards[i].CardNo == cardno)
6 {
7 flag1 = true;
8 Console.WriteLine("請輸入密碼");
9 string pwd = Console.ReadLine();
10 if (cards[i].CardPwd == pwd)
11 {
12 Console.WriteLine("恭喜您登陸成功!請輸入您要取款的金額:");
13 double TakeMoney = double.Parse(Console.ReadLine());
14 cards[i].Balance = cards[i].Balance - TakeMoney;
15 Console.WriteLine("恭喜您存款成功,您的當前余額為:{0}", cards[i].Balance);
16 break;
17 }
18 else
19 {
20 Console.WriteLine("您輸入的密碼有誤!");
21 break;
22 }
23 }
24 }
//轉賬模塊
注意!注意!
上面的對於大家來說基本上就是過家家~ 那麼接下來我要講的就是本文的真正的藏金殿了!
對於轉賬相信對於我這樣的初學者也是被搞得頭暈腦脹的吧?
接下來就讓我們一起來ko他吧!
1 Console.WriteLine("請輸入您的賬號");
2 string cardno = Console.ReadLine();
3 for (int i = 0; i < cards.Length; i++)
4 {
5 if (cards[i] != null && cards[i].CardNo == cardno)
6 {
7 flag2 = true;
8 Console.WriteLine("請輸入密碼");
9 string pwd = Console.ReadLine();
10 if (cards[i].CardPwd == pwd && cards[i].Balance!=0)
11 {
12 if (cards[i].Balance!=0)
13 {
14 Console.WriteLine("恭喜您登陸成功!請輸入您要轉賬的對象賬戶:");
15 string Target = Console.ReadLine();
16 for (int j = 0; j < cards.Length; j++)
17 {
18 if (cards[j].CardNo.Equals( Target) || cards[j].CardNo!=null )
19 {
20 Console.WriteLine("請輸入您的操作金額:");
21 double Transform = double.Parse(Console.ReadLine());
22 if (Transform < cards[i].Balance && Transform != 0)
23 {
24 cards[i].Balance -= Transform;
25 cards[j].Balance += Transform;
26 Console.WriteLine("恭喜您轉賬成功!您的當前余額為:{0}", cards[i].Balance);
27 break;
28 }
29 else
30 {
31 Console.WriteLine("請輸入正確的操作金額:");
32 }
33 }
34 break;
35 }
36 break;
37 }
38 else
39 {
40 Console.WriteLine("您當前的余額不足!不能進行轉賬!");
41 }
42 }
43 else
44 {
45 Console.WriteLine("您輸入的密碼有誤!");
46 break;
47 }
48 }
49 }
50 return flag2;
51 }
52
53 //查詢余額
54 public bool SelectMoney()
55 {
56 bool flag3 = false;
57 Console.WriteLine("===================");
58 Console.WriteLine("這裡是查詢余額模塊");
59 Console.WriteLine("===================");
60
61 Console.WriteLine("請輸入您的賬號");
62 string cardno = Console.ReadLine();
63 for (int i = 0; i < cards.Length; i++)
64 {
65 if (cards[i] != null && cards[i].CardNo == cardno)
66 {
67 flag3 = true;
68 Console.WriteLine("請輸入密碼");
69 string pwd = Console.ReadLine();
70 if (cards[i].CardPwd == pwd)
71 {
72 Console.WriteLine("恭喜您登陸成功!您的當前余額為:{0}:",cards[i].Balance);
73 Welcome();
74 break;
75 }
76 else
77 {
78 Console.WriteLine("您輸入的密碼有誤!");
79 break;
80 }
81 }
82 }
怎麼樣? 看到這麼調理清晰的把轉賬給大家呈現出來,是不是有點小驚訝?
//修改密碼
1 Console.WriteLine("請輸入您的賬號");
2 string cardno = Console.ReadLine();
3 for (int i = 0; i < cards.Length; i++)
4 {
5 if (cards[i] != null && cards[i].CardNo == cardno)
6 {
7 flag4= true;
8 Console.WriteLine("請輸入你的密碼");
9 string pwd = Console.ReadLine();
10 if (cards[i].CardPwd == pwd)
11 {
12 Console.WriteLine("請輸入您的新密碼:");
13 string pwd3=Console.ReadLine();
14 Console.WriteLine("請再次輸入您的新密碼:");
15 string pwd2=Console.ReadLine();
16 if (pwd2==pwd3)
17 {
18 cards[i].CardPwd = pwd3;
19 }
20 Console.WriteLine("恭喜您密碼修改成功!您的新密碼是{0}",cards[i].CardPwd);
21 Welcome();
22 break;
23 }
24 else
25 {
26 Console.WriteLine("您輸入的密碼有誤!");
27 break;
28 }
29 }
30 }
//退卡 略....
其實在寫這樣的項目時,小編總結出來個方法,在這裡分享給大家:就是每次拿到一個項目時,不要感覺頭大,首先總體的把內容過一下,
梳理出思路,這樣在接下來的編程中就會感覺濤濤不絕~~!
感謝大家的耐心觀看!關注我,給你最好的呈現~