golang 20-嵌套分支

package main

import "fmt"

func main()  {
	/*
	嵌套分支语法:
	if 条件表达式{
		if 条件表方式{
		}else{}
	}

	嵌套分支不宜过多 尽量控制在三层内 提高代码可读性

	案例:参加百米运动会,如果用时 8 秒以内进入决赛,否则提示淘汰。
	并且根据性别提示进入男子组或女子组。【可以让学员先练习下】, 输入成绩和性别。
	 */
	var(
		a float32
		na string
	)
	fmt.Println("请输入比赛成绩:")
	fmt.Scanln(&a)
	if a <= 8 {
		fmt.Println("请输入性别:")
		fmt.Scanln(&na)
		if na == "男" {
			fmt.Println("进入男子组")
		}else{
			fmt.Println("进入女子组")
		}

	}else{
		fmt.Println("out!!!")
	}

/*
	案例
	出票系统:根据淡旺季的月份和年龄,打印票价 [考虑学生先做]
	4_10 旺季:
	成人(18-60):60
	儿童(<18):半价
	老人(>60):1/3
	淡季:
	成人:40
	其他:20
 */
	var(
		month byte //月份
		age byte //年龄
		met float64 = 60.0
	)
	fmt.Println("请输入月份")
	fmt.Scanln(&month)
	fmt.Println("请输入年龄")
	fmt.Scanln(&age)
	if month >= 4 && month <= 10 { //限制在4-10月旺季
		if age > 18 {
			fmt.Printf("现在是 %v 月,年龄是 %v 价格是 %v",month,age,met)
		}else if age < 18 {
			fmt.Printf("现在是 %v 月,年龄是 %v 价格是 %v",month,age,met/2)
		} else if age <= 60 {
			fmt.Printf("现在是 %v 月,年龄是 %v 价格是 %v",month,age,met/3)
		}

	}else if age >18 && age <= 60 {
		fmt.Println("成人票40")
	}else {
		fmt.Println("儿童票20")
	}
}


运行结果:


请输入比赛成绩:
7
请输入性别:
男
进入男子组
请输入月份
8
请输入年龄
22
现在是 8 月,年龄是 22 价格是 60
进程 已完成,退出代码为 0

你可能感兴趣的:(golang学习,golang,开发语言,后端)