您的位置:首页 > 编程语言 > Go语言

用Go语言 模拟银行存款,取款,查询等操作 (Golang经典编程案例)

2019-06-30 16:29 976 查看

案例:模拟银行存款,取款,查询等操作

  1. 银行卡的属性有账号,密码,余额;行为有存款,取款,查询等;
  2. 增加一个控制台菜单,可以让用户动态的输入命令和选项。

代码如下

package main

import (
"fmt"
)

type Account struct {
AccountNo string
Pwd string
Balance float64
}

//存款
func (account *Account) Deposite() {

var money float64
fmt.Print("请输入存款金额:")
fmt.Scan(&money)

if money <= 0 {
fmt.Println("您输入的金额不正确")
return
}
account.Balance += money
fmt.Println("存款",money,"成功,当前金额为:",account.Balance)
}

//取款
func (account *Account) WithDraw() {

var money float64
fmt.Print("请输入取款金额:")
fmt.Scan(&money)

if money <= 0 || money > account.Balance {
fmt.Println("您输入的金额不正确")
return
}
account.Balance -= money
fmt.Println("取款",money,"成功,当前金额为:",account.Balance)
}

//查询
func (account *Account) query() {

fmt.Printf("你的账号为:%v 余额:%v \n",account.AccountNo, account.Balance)
}

func main() {
//测试
account := Account{
AccountNo : "guangda123456",
Pwd : "111111",
Balance : 100.00,
}

var ano,pwd string
fmt.Print("请输入账号:")
fmt.Scanln(&ano)
fmt.Print("请输入和密码:")
fmt.Scanln(&pwd)
if account.AccountNo == ano && account.Pwd == pwd {
for {
var number int
fmt.Print("请选择您想要的操作(1.存款; 2.取款; 3.查询; 4.退出程序):")
fmt.Scanln(&number)
if number == 1{
account.Deposite()
}
if number == 2{
account.WithDraw()
}
if number == 3{
account.query()
}
if number == 4{
fmt.Println("已退出程序...")
break
}
}
} else {
fmt.Println("用户名或者密码输入有误,请重新输入...")
}
}

执行结果如下图所示:’

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: