Golang学习笔记-小学生代码

段位:小学五年级

package main
import(
	"fmt"
)

func InitMainPage(){
    
    
	fmt.Println("---------------家庭收支记账软件---------------")
	fmt.Println("---------------1,收支明细---------------")
	fmt.Println("---------------2,登记收入---------------")
	fmt.Println("---------------3,登记支出---------------")
	fmt.Println("---------------4,退出软件---------------")
	fmt.Println("----------------------------------------")
	fmt.Println("请选择1-4:")
}

func main(){
    
    
	
	key := ""
	loop := true
	balance := 10000.0
	money := 0.0
	note := ""
	details := "收支\t账户金额\t收支金额\t说  明\t"
	flags := false
	
	InitMainPage()
	for{
    
    
		fmt.Scanln(&key)
		switch key {
    
    
		case "1":
			fmt.Println("---------------1,收支明细---------------")
			
			if flags{
    
    
				fmt.Println(details)
			} else{
    
    
				fmt.Println("当前没有收支记录,来记录一笔吧!")
			}
			
		case "2":
			fmt.Println("---------------2,登记收入---------------")
			fmt.Println("本次收入的金额:")
			fmt.Scanln(&money)
			balance += money 
			fmt.Println("本次收入的说明:")
			fmt.Scanln(&note)
			details += fmt.Sprintf("\n收入\t%v\t%v\t%v",balance,money,note)
			flags = true
		
		case "3":
			fmt.Println("---------------3,登记支出---------------")
			fmt.Println("本次支出的金额:")
			fmt.Scanln(&money)
			if money > balance{
    
    
				fmt.Println("金额不足")
				break
			}

			balance -= money 
			fmt.Println("本次支出的说明:")
			fmt.Scanln(&note)
			details += fmt.Sprintf("\n收入\t%v\t%v\t%v",balance,money,note)
			flags = true
		case "4":
			fmt.Println("---------------4,退出软件---------------")
			fmt.Println("你确定要退出吗?(y/n)")
			choice := ""
			for{
    
    
				fmt.Scanln(&choice)
				if choice == "y" || choice == "n"{
    
    
						break
				}
				fmt.Println("输入格式有误,请重新输入(y/n)")

			}
			if choice == "y"{
    
    
				loop = false
			}
			
		default:
			fmt.Println("---------------你的选择不正确---------------")
		}

		if !loop {
    
    
			break
		}

	}
	fmt.Println("---------------你选择了退出软件,再会!---------------")
}

猜你喜欢

转载自blog.csdn.net/qq_40904479/article/details/105909809
今日推荐