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

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

代码如下

package mainimport ("fmt"
)type Account struct {AccountNo stringPwd stringBalance float64
}//存款
func (account *Account) Deposite() {var money float64fmt.Print("请输入存款金额:")fmt.Scan(&money)if money <= 0 {fmt.Println("您输入的金额不正确")return}account.Balance += moneyfmt.Println("存款",money,"成功,当前金额为:",account.Balance)
}//取款
func (account *Account) WithDraw() {var money float64fmt.Print("请输入取款金额:")fmt.Scan(&money)if money <= 0 || money > account.Balance {fmt.Println("您输入的金额不正确")return}account.Balance -= moneyfmt.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 stringfmt.Print("请输入账号:")fmt.Scanln(&ano)fmt.Print("请输入和密码:")fmt.Scanln(&pwd)if account.AccountNo == ano && account.Pwd == pwd {for {var number intfmt.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("用户名或者密码输入有误,请重新输入...")}
}

执行结果如下图所示:’

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

  1. 用Go语言 实现的数学相关案例汇总 (Golang经典编程案例)

    案例1:用Go语言打印1~100之间 9的倍数的整数的个数及总和,代码如下: package mainimport "fmt"func main() {var count uint ...

  2. 用Go语言 判断用户输入的年份是不是闰年 (Golang经典编程案例)

    判断一个年份是否是闰年,需要满足下面条件之一: 年份能被4整除,但不能被100整除: 能被400整除 下面用Go语言实现 判断用户输入的年份是不是闰年,代码如下: package mainimport ...

  3. 用Go语言实现登录验证 (Golang经典编程案例)

    用Go语言实现登录验证,有3次机会,如果用户名为 zhangsan ,密码为 123456 ,则提示登录成功,否则提示还有几次机会,次数用完,提示登录失败.代码如下: package mainimpo ...

  4. Go语言中 经典的map排序方法及案例 (Golang经典编程案例)

    注意:Golang中的map默认是无序的,每次遍历,得到的输出结果可能不一样. Golang中的map排序: 将map的key放到切片中: 对切片排序: 遍历切片,然后来按key来输出map的值. 案 ...

  5. 用Go语言 实现快速排序 (Golang经典编程案例)

    快速排序,代码如下: package mainimport ("fmt" )//left 表示 数组左边的下标,right 表示数组右边的下标,array 表示要排序的数组 fun ...

  6. 用Go语言 轻松实现插入排序 (Golang经典编程案例)

    插入排序,代码如下: package main import ("fmt" )func InsertSort(arr *[7]int) {//完成第一次,给第二个元素找到合适的位置 ...

  7. Go语言 闭包的最佳实践 (Golang经典编程案例)

    闭包:一个函数和与其相关的引用环境组合的一个整体. 最佳实践:编写一个程序,具体要求如下: 编写一个函数 makeSuffix(suffix string) ,可以接收一个文件后缀名(比如.jpg), ...

  8. c语言经典编程案例猜数字,用c语言编程猜数字

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 //NumberRiddle.c //这个程序还没有做完,用户输入检测部分没有做,不继续了.2009-12-22 //猜数字游戏 //游戏规则: //电脑 ...

  9. 用java语言实现汉诺塔问题 (Java经典编程案例)

    用递归实现汉诺塔问题,代码如下: import java.util.Scanner;/*** 汉诺塔问题*/ public class Example {public static void move ...

最新文章

  1. 数据安全最佳实践案例库建设项目正式启动
  2. android de,什么是Android Pre-Dexing,以及如何提高性能?
  3. jquery点击事件遇到的小bug
  4. 第二章 选择符和属性
  5. 角距离恒星_恒星问卷调查的10倍机器学习生产率
  6. 哈希表取模选择素数分析
  7. 华为发钱了!10万人分走400多亿“红包”,人均40万!
  8. 阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第4节 等待唤醒机制_5_线程间通信...
  9. 微软Hyper-V虚拟化技术全面体验
  10. 汉字在c语言中用什么表示,在C语言中显示汉字
  11. CPU(中央处理器)和GPU(图像处理器)区别
  12. aligned_allocator
  13. Liunx树莓派(ARM)开发篇—第十四章、树莓派Linux内核编译步骤(超详细、图文结合)
  14. 考研英语——阅读的逻辑关系分析(唐迟阅读的逻辑笔记+实战)更新中
  15. Wireshark系列之6 数据流追踪
  16. JavaScript 的时间使用
  17. 利用wxpython库来制作真心话大冒险小程序
  18. 逻辑回归三部曲——逻辑回归项目实战(信贷数据+Python代码实现)
  19. 4月4日 JavaWeb 周三
  20. JSFL 批量转化fla脚本文件

热门文章

  1. 易维帮助台如何“重新定义客户服务”?
  2. linux线程的创建与删除
  3. 设计模式学习之1—代理模式
  4. LayaAir开发笔记
  5. 使用 DataX 实现数据同步(高效的同步工具)
  6. 关于Collection集合
  7. 二维正态分布的最大似然估计_机器学习系列(二)多元正态分布
  8. 街区的最短路径 nyist7
  9. tableau跨库创建并集_刮擦柏林青年旅舍,并以此建立一个Tableau全景。
  10. 时尚外观颜值高,性能不输大牌,五款平价蓝牙耳机走心推荐