230_尚硅谷_收支软件-明细和登记收入
1.记账软件代码
package main
import "fmt"
// 功能2和3:完成可以显示明细和登记收入功能
// ? 思路分析:
// 1. 因为需要显示明细, 定义一个变量 details string 记录
// 2. 还需要定义变量记录余额(balanc), 每次支出的收支金额(money), 每次收支的说明(note)
// ? 代码:
func main() {
// todo 声明一个变量, 保存接收用户输入的选项
var key string
// todo 声明一个变量, 控制是否退出循环
var loop bool = true
// todo 定定义变量记录余额(balanc), 每次支出的收支金额(money), 每次收支的说明(note)
var balance float64 = 10000.0
var money float64 = 0.0
var note string
// todo 收支详情使用字符串记录
// todo 当有收支时,只需要对details 进行拼接处理
var details string = "收支\t账户金额\t收支金额\t说 明\n"
// todo 显示主菜单
for {
fmt.Println("\n---------------家庭记账软件---------------")
fmt.Println(" 1. 收支明细 ")
fmt.Println(" 2. 登记收入 ")
fmt.Println(" 3. 登记支出 ")
fmt.Println(" 4. 退 出 ")
fmt.Printf(" 请选择(1-4):")
fmt.Scanln(&key)
switch key {
case "1":
fmt.Println("---------------当前收支明细---------------")
fmt.Println(details)
case "2":
fmt.Println("本次收入金额: ")
fmt.Scanln(&money)
fmt.Println("本次收入说明:")
fmt.Scanln(¬e)
fmt.Println("登记收入......")
balance += money
// 将收入情况拼接到details
// 收支 账户金额 收支金额 说 明
// 收入 11000 1000 收红包
details += fmt.Sprintf("收入\t%v\t\t%v\t\t%v\n", balance, money, note)
case "3":
fmt.Println("登记支出......")
case "4":
loop = false
default:
fmt.Println("请输入正确选项......")
}
// todo 判断loop
if !loop {
break
}
}
fmt.Printf("家庭记账软件")
}
2.记账软件运行结果
浙公网安备 33010602011771号